[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20160406143220.GD5945@kernel.org>
Date: Wed, 6 Apr 2016 11:32:20 -0300
From: Arnaldo Carvalho de Melo <acme@...nel.org>
To: Andi Kleen <andi@...stfloor.org>
Cc: peterz@...radead.org, jolsa@...nel.org,
linux-kernel@...r.kernel.org, mingo@...nel.org,
Andi Kleen <ak@...ux.intel.com>
Subject: Re: [PATCH 11/11] perf, tools, stat: Add extra output of counter
values with -v
Em Mon, Apr 04, 2016 at 01:41:54PM -0700, Andi Kleen escreveu:
> From: Andi Kleen <ak@...ux.intel.com>
>
> Add debug output of raw counter values per CPU when
> perf stat -v is specified, together with their cpu numbers.
> This is very useful to debug problems with per core counters,
> where we can normally only see aggregated values.
Can we do it only when per CPU is in place?
[acme@...et linux]$ perf stat -v usleep 1
task-clock: 0: 1426718 1426718 1426718
task-clock: 1426718 1426718 1426718
context-switches: 0: 3 1426718 1426718
context-switches: 3 1426718 1426718
cpu-migrations: 0: 1 1426718 1426718
cpu-migrations: 1 1426718 1426718
page-faults: 0: 52 1426718 1426718
page-faults: 52 1426718 1426718
cycles: 0: 4338775 1437628 1437628
cycles: 4338775 1437628 1437628
instructions: 0: 754838 1437628 1437628
instructions: 754838 1437628 1437628
branches: 0: 146638 1437628 1437628
branches: 146638 1437628 1437628
branch-misses: 0: 7871 1437628 1437628
branch-misses: 7871 1437628 1437628
Performance counter stats for 'usleep 1':
1.426718 task-clock (msec) # 0.370 CPUs utilized
3 context-switches # 0.002 M/sec
1 cpu-migrations # 0.701 K/sec
52 page-faults # 0.036 M/sec
4,338,775 cycles # 3.041 GHz
754,838 instructions # 0.17 insn per cycle
146,638 branches # 102.780 M/sec
7,871 branch-misses # 5.37% of all branches
0.003859416 seconds time elapsed
[acme@...et linux]$
> Signed-off-by: Andi Kleen <ak@...ux.intel.com>
> ---
> tools/perf/builtin-stat.c | 8 ++++++++
> 1 file changed, 8 insertions(+)
>
> diff --git a/tools/perf/builtin-stat.c b/tools/perf/builtin-stat.c
> index 6d8ce72cd8c1..0ee224b80056 100644
> --- a/tools/perf/builtin-stat.c
> +++ b/tools/perf/builtin-stat.c
> @@ -314,6 +314,14 @@ static int read_counter(struct perf_evsel *counter)
> return -1;
> }
> }
> +
> + if (verbose) {
> + fprintf(stat_config.output,
> + "%s: %d: %" PRIu64 " %" PRIu64 " %" PRIu64 "\n",
> + perf_evsel__name(counter),
> + cpu,
> + count->val, count->ena, count->run);
> + }
> }
> }
>
> --
> 2.5.5
Powered by blists - more mailing lists