Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1370882 > unrolled thread

[PATCH 11/11] perf, tools, stat: Add extra output of counter values with -v

Started byAndi Kleen <andi@firstfloor.org>
First post2016-04-04 22:50 +0200
Last post2016-04-06 17:20 +0200
Articles 4 — 2 participants

Back to article view | Back to linux.kernel

This discussion starts older than the indexed window; earlier articles aren't shown. The article labeled Started by below is the oldest one visible, not the original post.


Contents

  [PATCH 11/11] perf, tools, stat: Add extra output of counter values with -v Andi Kleen <andi@firstfloor.org> - 2016-04-04 22:50 +0200
    Re: [PATCH 11/11] perf, tools, stat: Add extra output of counter  values with -v Arnaldo Carvalho de Melo <acme@kernel.org> - 2016-04-06 16:40 +0200
      Re: [PATCH 11/11] perf, tools, stat: Add extra output of counter  values with -v Arnaldo Carvalho de Melo <acme@kernel.org> - 2016-04-06 17:20 +0200
      Re: [PATCH 11/11] perf, tools, stat: Add extra output of counter  values with -v Andi Kleen <andi@firstfloor.org> - 2016-04-06 17:20 +0200

#1370882 — [PATCH 11/11] perf, tools, stat: Add extra output of counter values with -v

FromAndi Kleen <andi@firstfloor.org>
Date2016-04-04 22:50 +0200
Subject[PATCH 11/11] perf, tools, stat: Add extra output of counter values with -v
Message-ID<rkjBD-lz-1@gated-at.bofh.it>
From: Andi Kleen <ak@linux.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.

Signed-off-by: Andi Kleen <ak@linux.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

[toc] | [next] | [standalone]


#1372572 — Re: [PATCH 11/11] perf, tools, stat: Add extra output of counter values with -v

FromArnaldo Carvalho de Melo <acme@kernel.org>
Date2016-04-06 16:40 +0200
SubjectRe: [PATCH 11/11] perf, tools, stat: Add extra output of counter values with -v
Message-ID<rkWMG-5h0-3@gated-at.bofh.it>
In reply to#1370882
Em Mon, Apr 04, 2016 at 01:41:54PM -0700, Andi Kleen escreveu:
> From: Andi Kleen <ak@linux.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@jouet 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@jouet linux]$
 
> Signed-off-by: Andi Kleen <ak@linux.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

[toc] | [prev] | [next] | [standalone]


#1372594 — Re: [PATCH 11/11] perf, tools, stat: Add extra output of counter values with -v

FromArnaldo Carvalho de Melo <acme@kernel.org>
Date2016-04-06 17:20 +0200
SubjectRe: [PATCH 11/11] perf, tools, stat: Add extra output of counter values with -v
Message-ID<rkXpn-5RF-3@gated-at.bofh.it>
In reply to#1372572
Em Wed, Apr 06, 2016 at 08:10:08AM -0700, Andi Kleen escreveu:
> On Wed, Apr 06, 2016 at 11:32:20AM -0300, Arnaldo Carvalho de Melo wrote:
> > Em Mon, Apr 04, 2016 at 01:41:54PM -0700, Andi Kleen escreveu:
> > > From: Andi Kleen <ak@linux.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?
> 
> Even then it is useful because the output is aggregated,
> so we don't know which CPU reported what.
> 
> Can perhaps increase the verbose threshold and only
> print it for -vv or -vvv ?

Yeah, that would be better, this way people will not get two identical
lines for a common usecase when using -v.

- Arnaldo

[toc] | [prev] | [next] | [standalone]


#1372603 — Re: [PATCH 11/11] perf, tools, stat: Add extra output of counter values with -v

FromAndi Kleen <andi@firstfloor.org>
Date2016-04-06 17:20 +0200
SubjectRe: [PATCH 11/11] perf, tools, stat: Add extra output of counter values with -v
Message-ID<rkXpn-5RF-5@gated-at.bofh.it>
In reply to#1372572
On Wed, Apr 06, 2016 at 11:32:20AM -0300, Arnaldo Carvalho de Melo wrote:
> Em Mon, Apr 04, 2016 at 01:41:54PM -0700, Andi Kleen escreveu:
> > From: Andi Kleen <ak@linux.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?

Even then it is useful because the output is aggregated,
so we don't know which CPU reported what.

Can perhaps increase the verbose threshold and only
print it for -vv or -vvv ?

-Andi

[toc] | [prev] | [standalone]


Back to top | Article view | linux.kernel


csiph-web