mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Jiri Olsa <jolsa@redhat.com>
To: Andi Kleen <andi@firstfloor.org>
Cc: acme@kernel.org, jolsa@kernel.org, linux-kernel@vger.kernel.org,
	eranian@google.com, Andi Kleen <ak@linux.intel.com>
Subject: Re: [PATCH 3/6] perf, tools, stat: Support metrics in --per-core/socket mode
Date: Sun, 21 Feb 2016 18:22:01 +0100	[thread overview]
Message-ID: <20160221172201.GE10701@krava.homerouter.cpe> (raw)
In-Reply-To: <1455749045-18098-4-git-send-email-andi@firstfloor.org>

On Wed, Feb 17, 2016 at 02:44:02PM -0800, Andi Kleen wrote:

SNIP

> +static void aggr_update_shadow(void)
> +{
> +	int cpu, cpu2, s2, id, s;
> +	u64 val;
> +	struct perf_evsel *counter;
> +
> +	for (s = 0; s < aggr_map->nr; s++) {
> +		id = aggr_map->map[s];
> +		evlist__for_each(evsel_list, counter) {
> +			val = 0;
> +			for (cpu = 0; cpu < perf_evsel__nr_cpus(counter); cpu++) {
> +				cpu2 = perf_evsel__cpus(counter)->map[cpu];
> +				s2 = aggr_get_id(evsel_list->cpus, cpu2);
> +				if (s2 != id)
> +					continue;
> +				val += perf_counts(counter->counts, cpu, 0)->val;
> +			}
> +			val = val * counter->scale;
> +			perf_stat__update_shadow_stats(counter, &val,
> +						       first_shadow_cpu(counter, id));
> +		}
> +	}
> +}


> +
>  static void print_aggr(char *prefix)
>  {
>  	FILE *output = stat_config.output;
> @@ -982,6 +1024,8 @@ static void print_aggr(char *prefix)
>  	if (!(aggr_map || aggr_get_id))
>  		return;
>  
> +	aggr_update_shadow();

this should be called from perf_stat_process_counter,
not from display function

also please document somewhere (best around shadow stats variables)
what cpus (array members) are used for given AGGR_*

thanks,
jirka

  parent reply	other threads:[~2016-02-21 17:22 UTC|newest]

Thread overview: 20+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-02-17 22:43 perf, tools: Refactor and support interval and CSV metrics Andi Kleen
2016-02-17 22:44 ` [PATCH 1/6] perf, tools, stat: Handled scaled == -1 case for counters Andi Kleen
2016-02-20 11:35   ` [tip:perf/core] perf " tip-bot for Andi Kleen
2016-02-17 22:44 ` [PATCH 2/6] perf, tools, stat: Implement CSV metrics output Andi Kleen
2016-02-18 17:00   ` Arnaldo Carvalho de Melo
2016-02-18 17:39     ` Andi Kleen
2016-02-21 16:39       ` Jiri Olsa
2016-02-22 16:26         ` Andi Kleen
2016-02-21 16:39   ` Jiri Olsa
2016-02-17 22:44 ` [PATCH 3/6] perf, tools, stat: Support metrics in --per-core/socket mode Andi Kleen
2016-02-21 17:15   ` Jiri Olsa
2016-02-22 16:52     ` Andi Kleen
2016-02-23  7:37       ` Jiri Olsa
2016-02-21 17:18   ` Jiri Olsa
2016-02-21 17:22   ` Jiri Olsa [this message]
2016-02-26 23:53     ` Andi Kleen
2016-02-17 22:44 ` [PATCH 4/6] perf, tools, stat: Document CSV format in manpage Andi Kleen
2016-02-17 22:44 ` [PATCH 5/6] perf, tools, stat: Implement --metric-only mode Andi Kleen
2016-02-17 22:44 ` [PATCH 6/6] perf, tools, stat: Add --metric-only support for -A Andi Kleen
2016-02-27  0:27 perf, tools: Refactor and support interval and CSV metrics Andi Kleen
2016-02-27  0:27 ` [PATCH 3/6] perf, tools, stat: Support metrics in --per-core/socket mode Andi Kleen

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20160221172201.GE10701@krava.homerouter.cpe \
    --to=jolsa@redhat.com \
    --cc=acme@kernel.org \
    --cc=ak@linux.intel.com \
    --cc=andi@firstfloor.org \
    --cc=eranian@google.com \
    --cc=jolsa@kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®