On Fri, May 17, 2019 at 03:10:39PM -0700, Cong Wang wrote:
> The "stalled cycles per insn" is appended to "instructions" when
> the CPU has this hardware counter directly. We should always make it
> a separate line, which also aligns to the output when we hit the
> "if (total && avg)" branch.
> 
> Before:
> $ sudo perf stat --all-cpus --field-separator , --log-fd 1 
> -einstructions,cycles -- sleep 1
> 4565048704,,instructions,64114578096,100.00,1.34,insn per cycle,,
> 3396325133,,cycles,64146628546,100.00,,
> 
> After:
> $ sudo ./tools/perf/perf stat --all-cpus --field-separator , --log-fd 1 
> -einstructions,cycles -- sleep 1
> 6721924,,instructions,24026790339,100.00,0.22,insn per cycle
> ,,,,,0.00,stalled cycles per insn
> 30939953,,cycles,24025512526,100.00,,
> 
> Cc: Andi Kleen <[email protected]>
> Cc: Jiri Olsa <[email protected]>
> Cc: Ingo Molnar <[email protected]>
> Cc: Arnaldo Carvalho de Melo <[email protected]>
> Signed-off-by: Cong Wang <[email protected]>

Acked-by: Jiri Olsa <[email protected]>

thanks,
jirka

> ---
>  tools/perf/util/stat-shadow.c | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)
> 
> diff --git a/tools/perf/util/stat-shadow.c b/tools/perf/util/stat-shadow.c
> index 83d8094be4fe..5c5e012e99c4 100644
> --- a/tools/perf/util/stat-shadow.c
> +++ b/tools/perf/util/stat-shadow.c
> @@ -800,7 +800,8 @@ void perf_stat__print_shadow_stats(struct 
> perf_stat_config *config,
>                                       "stalled cycles per insn",
>                                       ratio);
>               } else if (have_frontend_stalled) {
> -                     print_metric(config, ctxp, NULL, NULL,
> +                     out->new_line(config, ctxp);
> +                     print_metric(config, ctxp, NULL, "%7.2f ",
>                                    "stalled cycles per insn", 0);
>               }
>       } else if (perf_evsel__match(evsel, HARDWARE, HW_BRANCH_MISSES)) {
> -- 
> 2.21.0
> 

Reply via email to