mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Namhyung Kim <namhyung@kernel.org>
To: Arnaldo Carvalho de Melo <acme@kernel.org>, Jiri Olsa <jolsa@kernel.org>
Cc: Ingo Molnar <mingo@kernel.org>,
	Peter Zijlstra <peterz@infradead.org>,
	LKML <linux-kernel@vger.kernel.org>,
	Ian Rogers <irogers@google.com>,
	Adrian Hunter <adrian.hunter@intel.com>,
	linux-perf-users@vger.kernel.org,
	Kan Liang <kan.liang@linux.intel.com>,
	Zhengjun Xing <zhengjun.xing@linux.intel.com>,
	James Clark <james.clark@arm.com>
Subject: [PATCH 04/11] perf stat: Increase metric length to align outputs
Date: Fri, 11 Nov 2022 19:22:37 -0800	[thread overview]
Message-ID: <20221112032244.1077370-5-namhyung@kernel.org> (raw)
In-Reply-To: <20221112032244.1077370-1-namhyung@kernel.org>

When perf stat is called with very detailed events, the output doesn't
align well like below:

  $ sudo perf stat -a -ddd sleep 1

   Performance counter stats for 'system wide':

          8,020.23 msec cpu-clock                        #    7.997 CPUs utilized
             3,970      context-switches                 #  494.998 /sec
               169      cpu-migrations                   #   21.072 /sec
               586      page-faults                      #   73.065 /sec
       649,568,060      cycles                           #    0.081 GHz                      (30.42%)
       304,044,345      instructions                     #    0.47  insn per cycle           (38.40%)
        60,313,022      branches                         #    7.520 M/sec                    (38.89%)
         2,766,919      branch-misses                    #    4.59% of all branches          (39.26%)
        74,422,951      L1-dcache-loads                  #    9.279 M/sec                    (39.39%)
         8,025,568      L1-dcache-load-misses            #   10.78% of all L1-dcache accesses  (39.22%)
         3,314,995      LLC-loads                        #  413.329 K/sec                    (30.83%)
         1,225,619      LLC-load-misses                  #   36.97% of all LL-cache accesses  (30.45%)
   <not supported>      L1-icache-loads
        20,420,493      L1-icache-load-misses            #    0.00% of all L1-icache accesses  (30.29%)
        58,017,947      dTLB-loads                       #    7.234 M/sec                    (30.37%)
           704,677      dTLB-load-misses                 #    1.21% of all dTLB cache accesses  (30.27%)
           234,225      iTLB-loads                       #   29.204 K/sec                    (30.29%)
           417,166      iTLB-load-misses                 #  178.10% of all iTLB cache accesses  (30.32%)
   <not supported>      L1-dcache-prefetches
   <not supported>      L1-dcache-prefetch-misses

       1.002947355 seconds time elapsed

Increase the METRIC_LEN by 3 so that it can align properly.

  $ sudo ./perf stat -a -ddd true

   Performance counter stats for 'system wide':

              233.70 msec cpu-clock                        #   11.714 CPUs utilized
                 320      context-switches                 #    1.369 K/sec
                  31      cpu-migrations                   #  132.648 /sec
                 482      page-faults                      #    2.062 K/sec
          38,414,140      cycles                           #    0.164 GHz                         (6.65%)
          13,656,335      instructions                     #    0.36  insn per cycle              (20.31%)
           3,594,871      branches                         #   15.382 M/sec                       (34.06%)
             124,071      branch-misses                    #    3.45% of all branches             (47.74%)
          14,016,847      L1-dcache-loads                  #   59.977 M/sec                       (61.42%)
             789,534      L1-dcache-load-misses            #    5.63% of all L1-dcache accesses   (65.98%)
             315,353      LLC-loads                        #    1.349 M/sec                       (47.13%)
             171,244      LLC-load-misses                  #   54.30% of all LL-cache accesses    (41.98%)
     <not supported>      L1-icache-loads
           2,591,299      L1-icache-load-misses            #    0.00% of all L1-icache accesses   (36.10%)
          60,421,987      dTLB-loads                       #  258.543 M/sec                       (27.47%)
             123,843      dTLB-load-misses                 #    0.20% of all dTLB cache accesses  (18.88%)
              38,289      iTLB-loads                       #  163.837 K/sec                       (10.34%)
              21,631      iTLB-load-misses                 #   56.49% of all iTLB cache accesses  (2.53%)
     <not supported>      L1-dcache-prefetches
     <not supported>      L1-dcache-prefetch-misses

Acked-by: Ian Rogers <irogers@google.com>
Signed-off-by: Namhyung Kim <namhyung@kernel.org>
---
 tools/perf/util/stat-display.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/tools/perf/util/stat-display.c b/tools/perf/util/stat-display.c
index 96ad0c71adc2..3ddc159df4b2 100644
--- a/tools/perf/util/stat-display.c
+++ b/tools/perf/util/stat-display.c
@@ -218,7 +218,7 @@ struct outstate {
 	struct evsel *evsel;
 };
 
-#define METRIC_LEN  35
+#define METRIC_LEN  38
 
 static void new_line_std(struct perf_stat_config *config __maybe_unused,
 			 void *ctx)
-- 
2.38.1.493.g58b659f92b-goog


  parent reply	other threads:[~2022-11-12  3:23 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-11-12  3:22 [PATCHSET 00/11] perf stat: Cleanup perf stat output display (v2) Namhyung Kim
2022-11-12  3:22 ` [PATCH 01/11] perf stat: Fix crash with --per-node --metric-only in CSV mode Namhyung Kim
2022-11-14 18:17   ` Ian Rogers
2022-11-12  3:22 ` [PATCH 02/11] perf stat: Move common code in print_metric_headers() Namhyung Kim
2022-11-12  3:22 ` [PATCH 03/11] perf stat: Fix --metric-only --json output Namhyung Kim
2022-11-14 18:18   ` Ian Rogers
2022-11-12  3:22 ` Namhyung Kim [this message]
2022-11-12  3:22 ` [PATCH 05/11] perf stat: Clear screen only if output file is a tty Namhyung Kim
2022-11-14 18:19   ` Ian Rogers
2022-11-12  3:22 ` [PATCH 06/11] perf stat: Do not indent headers for JSON Namhyung Kim
2022-11-12  3:22 ` [PATCH 07/11] perf stat: Add header for interval in JSON output Namhyung Kim
2022-11-12  3:22 ` [PATCH 08/11] perf stat: Fix condition in print_interval() Namhyung Kim
2022-11-12  3:22 ` [PATCH 09/11] perf stat: Consolidate condition to print metrics Namhyung Kim
2022-11-12  3:22 ` [PATCH 10/11] perf stat: Fix summary output in CSV with --metric-only Namhyung Kim
2022-11-14 18:20   ` Ian Rogers
2022-11-12  3:22 ` [PATCH 11/11] perf stat: Add missing separator in the CSV header Namhyung Kim
2022-11-14 18:21   ` Ian Rogers

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20221112032244.1077370-5-namhyung@kernel.org \
    --to=namhyung@kernel.org \
    --cc=acme@kernel.org \
    --cc=adrian.hunter@intel.com \
    --cc=irogers@google.com \
    --cc=james.clark@arm.com \
    --cc=jolsa@kernel.org \
    --cc=kan.liang@linux.intel.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-perf-users@vger.kernel.org \
    --cc=mingo@kernel.org \
    --cc=peterz@infradead.org \
    --cc=zhengjun.xing@linux.intel.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®