[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <3fb7cc3fab054ad5b2af8a5ae5fd7dbdace774a2.camel@linux.intel.com>
Date: Tue, 08 Oct 2024 16:27:52 -0700
From: Tim Chen <tim.c.chen@...ux.intel.com>
To: Ian Rogers <irogers@...gle.com>, Peter Zijlstra <peterz@...radead.org>,
Ingo Molnar <mingo@...hat.com>, Arnaldo Carvalho de Melo <acme@...nel.org>,
Namhyung Kim <namhyung@...nel.org>, Mark Rutland <mark.rutland@....com>,
Alexander Shishkin <alexander.shishkin@...ux.intel.com>, Jiri Olsa
<jolsa@...nel.org>, Adrian Hunter <adrian.hunter@...el.com>, Kan Liang
<kan.liang@...ux.intel.com>, John Garry <john.g.garry@...cle.com>, Will
Deacon <will@...nel.org>, James Clark <james.clark@...aro.org>, Mike Leach
<mike.leach@...aro.org>, Leo Yan <leo.yan@...ux.dev>, Yicong Yang
<yangyicong@...ilicon.com>, Weilin Wang <weilin.wang@...el.com>, Thomas
Richter <tmricht@...ux.ibm.com>, Sumanth Korikkar <sumanthk@...ux.ibm.com>,
linux-perf-users@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH v1 4/8] perf stat: Drop metric-unit if unit is NULL
On Fri, 2024-10-04 at 16:41 -0700, Ian Rogers wrote:
> Avoid cases like:
> ```
> $ perf stat -a -M topdownl1 -j -I 1000
> ...
> {"interval" : 11.127757275, "counter-value" : "85715898.000000", "unit" : "", "event" : "IDQ.MITE_UOPS", "event-runtime" : 988376123, "pcnt-running" : 100.00, "metric-value" : "0.000000", "metric-unit" : "(null)"}
> ...
> ```
>
> Signed-off-by: Ian Rogers <irogers@...gle.com>
> ---
> tools/perf/util/stat-display.c | 5 +++--
> 1 file changed, 3 insertions(+), 2 deletions(-)
>
> diff --git a/tools/perf/util/stat-display.c b/tools/perf/util/stat-display.c
> index e392ee5efb45..9b65968e37d1 100644
> --- a/tools/perf/util/stat-display.c
> +++ b/tools/perf/util/stat-display.c
> @@ -470,8 +470,9 @@ static void print_metric_json(struct perf_stat_config *config __maybe_unused,
> struct outstate *os = ctx;
> FILE *out = os->fh;
>
> - fprintf(out, "\"metric-value\" : \"%f\", ", val);
> - fprintf(out, "\"metric-unit\" : \"%s\"", unit);
> + fprintf(out, "\"metric-value\" : \"%f\"", val);
> + if (unit)
> + fprintf(out, ", \"metric-unit\" : \"%s\"", unit);
I think if there's no metric unit, we should skip printing metric value as a metric
of 0 has no meaning.
Tim
> if (!config->metric_only)
> fprintf(out, "}");
> }
Powered by blists - more mailing lists