lkml.org 
[lkml]   [2018]   [Apr]   [23]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 8/9] perf stat: Display length strings of each run for --table option
    Date
    Adding support to display visual aid 'length strings' to
    easily spot the biggest difference in time table.

    $ perf stat -r 10 --table perf bench sched pipe
    ...

    Performance counter stats for './perf bench sched pipe' (5 runs):

    # Table of individual measurements:
    5.189 (-0.293) #
    5.189 (-0.294) #
    5.186 (-0.296) #
    5.663 (+0.181) ##
    6.186 (+0.703) ####

    # Final result:
    5.483 +- 0.198 seconds time elapsed ( +- 3.62% )

    Suggested-by: Ingo Molnar <mingo@kernel.org>
    Link: http://lkml.kernel.org/n/tip-hb3t43jryqr4d911yu1ap918@git.kernel.org
    Signed-off-by: Jiri Olsa <jolsa@kernel.org>
    ---
    tools/perf/builtin-stat.c | 8 +++++++-
    1 file changed, 7 insertions(+), 1 deletion(-)

    diff --git a/tools/perf/builtin-stat.c b/tools/perf/builtin-stat.c
    index 345687b0eb10..2137c7d11767 100644
    --- a/tools/perf/builtin-stat.c
    +++ b/tools/perf/builtin-stat.c
    @@ -1759,9 +1759,15 @@ static void print_table(FILE *output, int precision, double avg)

    for (idx = 0; idx < run_count; idx++) {
    double run = (double) walltime_run[idx] / NSEC_PER_SEC;
    + int h, n = 1 + abs((int) (100.0 * (run - avg)/run) / 5);

    - fprintf(output, " %17.*f (%+.*f)\n",
    + fprintf(output, " %17.*f (%+.*f) ",
    precision, run, precision, run - avg);
    +
    + for (h = 0; h < n; h++)
    + fprintf(output, "#");
    +
    + fprintf(output, "\n");
    }

    fprintf(output, "\n%*s# Final result:\n", indent, "");
    --
    2.13.6
    \
     
     \ /
      Last update: 2018-04-23 11:09    [W:4.070 / U:0.184 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site