Skip to contentSkip to conversation

perf annotate stdio: Support --show-nr-samples option

PATCH Superseded Taeung Song 2 participants 4 messages Aug 15, 2017 – Aug 18, 2017 perf events

v2 of 3 Superseded Latest is v3 →

lore
Share & tools
lore
#0 lore raw

PATCH v2 1/4 perf annotate stdio: Support --show-nr-samples option

Add --show-nr-samples option to perf-annotate so that it corresponds with perf-report.

Cc Namhyung Kim <[email protected]>
Cc Milian Wolff <[email protected]>
Cc Jiri Olsa <[email protected]>
---
 tools/perf/builtin-annotate.c | 2 ++
 tools/perf/util/annotate.c    | 6 +++++-
 2 files changed, 7 insertions(+), 1 deletion(-)
tools/perf/builtin-annotate.c +2 -0
index 658c920..acde4cc 100644
@@ -445,6 +445,8 @@ int cmd_annotate(int argc, const char **argv)
 		    "Show event group information together"),
 	OPT_BOOLEAN(0, "show-total-period", &symbol_conf.show_total_period,
 		    "Show a column with the sum of periods"),
+	OPT_BOOLEAN('n', "show-nr-samples", &symbol_conf.show_nr_samples,
+		    "Show a column with the number of samples"),
 	OPT_CALLBACK_DEFAULT(0, "stdio-color", NULL, "mode",
 			     "'always' (default), 'never' or 'auto' only applicable to --stdio mode",
 			     stdio__config_color, "always"),
tools/perf/util/annotate.c +5 -1
index 2dab0e5..4397a8b 100644
@@ -1145,6 +1145,9 @@ static int disasm_line__print(struct disasm_line *dl, struct symbol *sym, u64 st
 			if (symbol_conf.show_total_period)
 				color_fprintf(stdout, color, " %11" PRIu64,
 					      sample.period);
+			else if (symbol_conf.show_nr_samples)
+				color_fprintf(stdout, color, " %7" PRIu64,
+					      sample.nr_samples);
 			else
 				color_fprintf(stdout, color, " %7.2f", percent);
 		}
@@ -1825,7 +1828,8 @@ int symbol__annotate_printf(struct symbol *sym, struct map *map,
 		width *= evsel->nr_members;
 
 	graph_dotted_len = printf(" %-*.*s|	Source code & Disassembly of %s for %s (%" PRIu64 " samples)\n",
-				  width, width, symbol_conf.show_total_period ? "Event count" : "Percent",
+				  width, width, symbol_conf.show_total_period ? "Period" :
+				  symbol_conf.show_nr_samples ? "Samples" : "Percent",
 				  d_filename, evsel_name, h->nr_samples);
 
 	printf("%-*.*s----\n",
Signature · 1 line
2.7.4
#1 lore raw

Em Wed, Aug 16, 2017 at 12:13:09AM +0900, Taeung Song escreveu:

Quoted 2 lines

Add --show-nr-samples option to perf-annotate so that it corresponds with perf-report.

I'll fold the second patch (2/4) with this one, thanks.

- Arnaldo

Quoted 48 lines
Cc Namhyung Kim <[email protected]>
Cc Milian Wolff <[email protected]>
Cc Jiri Olsa <[email protected]>
---
 tools/perf/builtin-annotate.c | 2 ++
 tools/perf/util/annotate.c    | 6 +++++-
 2 files changed, 7 insertions(+), 1 deletion(-)
tools/perf/builtin-annotate.c +2 -0
index 658c920..acde4cc 100644
@@ -445,6 +445,8 @@ int cmd_annotate(int argc, const char **argv)
 		    "Show event group information together"),
 	OPT_BOOLEAN(0, "show-total-period", &symbol_conf.show_total_period,
 		    "Show a column with the sum of periods"),
+	OPT_BOOLEAN('n', "show-nr-samples", &symbol_conf.show_nr_samples,
+		    "Show a column with the number of samples"),
 	OPT_CALLBACK_DEFAULT(0, "stdio-color", NULL, "mode",
 			     "'always' (default), 'never' or 'auto' only applicable to --stdio mode",
 			     stdio__config_color, "always"),
tools/perf/util/annotate.c +5 -1
index 2dab0e5..4397a8b 100644
@@ -1145,6 +1145,9 @@ static int disasm_line__print(struct disasm_line *dl, struct symbol *sym, u64 st
 			if (symbol_conf.show_total_period)
 				color_fprintf(stdout, color, " %11" PRIu64,
 					      sample.period);
+			else if (symbol_conf.show_nr_samples)
+				color_fprintf(stdout, color, " %7" PRIu64,
+					      sample.nr_samples);
 			else
 				color_fprintf(stdout, color, " %7.2f", percent);
 		}
@@ -1825,7 +1828,8 @@ int symbol__annotate_printf(struct symbol *sym, struct map *map,
 		width *= evsel->nr_members;
 
 	graph_dotted_len = printf(" %-*.*s|	Source code & Disassembly of %s for %s (%" PRIu64 " samples)\n",
-				  width, width, symbol_conf.show_total_period ? "Event count" : "Percent",
+				  width, width, symbol_conf.show_total_period ? "Period" :
+				  symbol_conf.show_nr_samples ? "Samples" : "Percent",
 				  d_filename, evsel_name, h->nr_samples);
 
 	printf("%-*.*s----\n",
Signature · 1 line
2.7.4
#2 lore raw

Em Tue, Aug 15, 2017 at 05:06:31PM -0300, Arnaldo Carvalho de Melo escreveu:

Quoted 5 lines

Em Wed, Aug 16, 2017 at 12:13:09AM +0900, Taeung Song escreveu:

Quoted 2 lines

Add --show-nr-samples option to perf-annotate so that it corresponds with perf-report.

I'll fold the second patch (2/4) with this one, thanks.

So, I was going to do that, please do it since there is another thing missing here, document the new option in tools/perf/Documentation/perf-annotate.txt.

- Arnaldo

Quoted 50 lines

- Arnaldo

Quoted 48 lines
Cc Namhyung Kim <[email protected]>
Cc Milian Wolff <[email protected]>
Cc Jiri Olsa <[email protected]>
---
 tools/perf/builtin-annotate.c | 2 ++
 tools/perf/util/annotate.c    | 6 +++++-
 2 files changed, 7 insertions(+), 1 deletion(-)
tools/perf/builtin-annotate.c +2 -0
index 658c920..acde4cc 100644
@@ -445,6 +445,8 @@ int cmd_annotate(int argc, const char **argv)
 		    "Show event group information together"),
 	OPT_BOOLEAN(0, "show-total-period", &symbol_conf.show_total_period,
 		    "Show a column with the sum of periods"),
+	OPT_BOOLEAN('n', "show-nr-samples", &symbol_conf.show_nr_samples,
+		    "Show a column with the number of samples"),
 	OPT_CALLBACK_DEFAULT(0, "stdio-color", NULL, "mode",
 			     "'always' (default), 'never' or 'auto' only applicable to --stdio mode",
 			     stdio__config_color, "always"),
tools/perf/util/annotate.c +5 -1
index 2dab0e5..4397a8b 100644
@@ -1145,6 +1145,9 @@ static int disasm_line__print(struct disasm_line *dl, struct symbol *sym, u64 st
 			if (symbol_conf.show_total_period)
 				color_fprintf(stdout, color, " %11" PRIu64,
 					      sample.period);
+			else if (symbol_conf.show_nr_samples)
+				color_fprintf(stdout, color, " %7" PRIu64,
+					      sample.nr_samples);
 			else
 				color_fprintf(stdout, color, " %7.2f", percent);
 		}
@@ -1825,7 +1828,8 @@ int symbol__annotate_printf(struct symbol *sym, struct map *map,
 		width *= evsel->nr_members;
 
 	graph_dotted_len = printf(" %-*.*s|	Source code & Disassembly of %s for %s (%" PRIu64 " samples)\n",
-				  width, width, symbol_conf.show_total_period ? "Event count" : "Percent",
+				  width, width, symbol_conf.show_total_period ? "Period" :
+				  symbol_conf.show_nr_samples ? "Samples" : "Percent",
 				  d_filename, evsel_name, h->nr_samples);
 
 	printf("%-*.*s----\n",
Signature · 1 line
2.7.4
#3 lore raw

Hi Arnaldo,

Quoted 5 lines · Arnaldo Carvalho de Melo

Em Tue, Aug 15, 2017 at 05:06:31PM -0300, Arnaldo Carvalho de Melo escreveu:

Quoted 4 lines

Em Wed, Aug 16, 2017 at 12:13:09AM +0900, Taeung Song escreveu:

Quoted 2 lines

Add --show-nr-samples option to perf-annotate so that it corresponds with perf-report.

Quoted 8 lines
Quoted 1 line

I'll fold the second patch (2/4) with this one, thanks.

So, I was going to do that, please do it since there is another thing missing here, document the new option in tools/perf/Documentation/perf-annotate.txt.

- Arnaldo

Yep, got it, will add the new option --show-nr-samples into Documentation/perf-annotate.txt

Thanks,
Taeung

Quoted 50 lines
Quoted 50 lines

- Arnaldo

Quoted 48 lines
Cc Namhyung Kim <[email protected]>
Cc Milian Wolff <[email protected]>
Cc Jiri Olsa <[email protected]>
---
  tools/perf/builtin-annotate.c | 2 ++
  tools/perf/util/annotate.c    | 6 +++++-
  2 files changed, 7 insertions(+), 1 deletion(-)
tools/perf/builtin-annotate.c +2 -0
index 658c920..acde4cc 100644
@@ -445,6 +445,8 @@ int cmd_annotate(int argc, const char **argv)
  		    "Show event group information together"),
  	OPT_BOOLEAN(0, "show-total-period", &symbol_conf.show_total_period,
  		    "Show a column with the sum of periods"),
+	OPT_BOOLEAN('n', "show-nr-samples", &symbol_conf.show_nr_samples,
+		    "Show a column with the number of samples"),
  	OPT_CALLBACK_DEFAULT(0, "stdio-color", NULL, "mode",
  			     "'always' (default), 'never' or 'auto' only applicable to --stdio mode",
  			     stdio__config_color, "always"),
tools/perf/util/annotate.c +5 -1
index 2dab0e5..4397a8b 100644
@@ -1145,6 +1145,9 @@ static int disasm_line__print(struct disasm_line *dl, struct symbol *sym, u64 st
  			if (symbol_conf.show_total_period)
  				color_fprintf(stdout, color, " %11" PRIu64,
  					      sample.period);
+			else if (symbol_conf.show_nr_samples)
+				color_fprintf(stdout, color, " %7" PRIu64,
+					      sample.nr_samples);
  			else
  				color_fprintf(stdout, color, " %7.2f", percent);
  		}
@@ -1825,7 +1828,8 @@ int symbol__annotate_printf(struct symbol *sym, struct map *map,
  		width *= evsel->nr_members;
 
  	graph_dotted_len = printf(" %-*.*s|	Source code & Disassembly of %s for %s (%" PRIu64 " samples)\n",
-				  width, width, symbol_conf.show_total_period ? "Event count" : "Percent",
+				  width, width, symbol_conf.show_total_period ? "Period" :
+				  symbol_conf.show_nr_samples ? "Samples" : "Percent",
  				  d_filename, evsel_name, h->nr_samples);
 
  	printf("%-*.*s----\n",
Signature · 1 line
2.7.4