mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Andi Kleen <andi@firstfloor.org>
To: acme@kernel.org
Cc: jolsa@kernel.org, linux-kernel@vger.kernel.org,
	Andi Kleen <ak@linux.intel.com>
Subject: [PATCH 09/10] perf, tools, list: Support printing MetricExpr with -v
Date: Thu, 23 Feb 2017 16:10:20 -0800	[thread overview]
Message-ID: <20170224001021.6723-9-andi@firstfloor.org> (raw)
In-Reply-To: <20170224001021.6723-1-andi@firstfloor.org>

From: Andi Kleen <ak@linux.intel.com>

Output the metric expr in perf list when -v is specified, so that the user
can check the formula.

Before:

% perf list -v
  ...
  unc_m_power_channel_ppd
       [Cycles where DRAM ranks are in power down (CKE) mode. Derived from unc_m_power_channel_ppd. Unit:
        uncore_imc]
        uncore_imc_2/event=0x85/

After:

% perf list -v
  ...
  unc_m_power_channel_ppd
       [Cycles where DRAM ranks are in power down (CKE) mode. Derived from unc_m_power_channel_ppd. Unit:
        uncore_imc]
        Perf: uncore_imc_2/event=0x85/ MetricExpr: (unc_m_power_channel_ppd / unc_m_clockticks) * 100.

Signed-off-by: Andi Kleen <ak@linux.intel.com>
---
 tools/perf/util/pmu.c | 10 ++++++++--
 1 file changed, 8 insertions(+), 2 deletions(-)

diff --git a/tools/perf/util/pmu.c b/tools/perf/util/pmu.c
index 4d9632390ab1..2cb463ababb8 100644
--- a/tools/perf/util/pmu.c
+++ b/tools/perf/util/pmu.c
@@ -1096,6 +1096,7 @@ struct sevent {
 	char *topic;
 	char *str;
 	char *pmu;
+	char *metric_expr;
 };
 
 static int cmp_sevent(const void *a, const void *b)
@@ -1194,6 +1195,7 @@ void print_pmu_events(const char *event_glob, bool name_only, bool quiet_flag,
 			aliases[j].topic = alias->topic;
 			aliases[j].str = alias->str;
 			aliases[j].pmu = pmu->name;
+			aliases[j].metric_expr = alias->metric_expr;
 			j++;
 		}
 		if (pmu->selectable &&
@@ -1228,8 +1230,12 @@ void print_pmu_events(const char *event_glob, bool name_only, bool quiet_flag,
 			printf("%*s", 8, "[");
 			wordwrap(aliases[j].desc, 8, columns, 0);
 			printf("]\n");
-			if (verbose)
-				printf("%*s%s/%s/\n", 8, "", aliases[j].pmu, aliases[j].str);
+			if (verbose) {
+				printf("%*sPerf: %s/%s/", 8, "", aliases[j].pmu, aliases[j].str);
+				if (aliases[j].metric_expr)
+					printf(" MetricExpr: %s", aliases[j].metric_expr);
+				putchar('\n');
+			}
 		} else
 			printf("  %-50s [Kernel PMU event]\n", aliases[j].name);
 		printed++;
-- 
2.9.3

  parent reply	other threads:[~2017-02-24  0:14 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-02-24  0:10 [PATCH 01/10] perf, tools, stat: Factor out callback for collecting event values Andi Kleen
2017-02-24  0:10 ` [PATCH 02/10] perf, tools, stat: Collapse identically named events Andi Kleen
2017-02-24  0:10 ` [PATCH 03/10] perf, tools: Factor out PMU matching in parser Andi Kleen
2017-02-27  8:35   ` Jiri Olsa
2017-02-24  0:10 ` [PATCH 04/10] perf, tools: Expand PMU events by prefix match Andi Kleen
2017-02-24  0:10 ` [PATCH 05/10] perf, tools: Special case uncore_ prefix Andi Kleen
2017-02-24  0:10 ` [PATCH 06/10] perf, tools: Add a simple expression parser for JSON Andi Kleen
2017-02-24  0:10 ` [PATCH 07/10] perf, tools: Support MetricExpr header in JSON event list Andi Kleen
2017-02-24  0:10 ` [PATCH 08/10] perf, tools, stat: Output JSON MetricExpr metric Andi Kleen
2017-02-24  0:10 ` Andi Kleen [this message]
2017-02-24  0:10 ` [PATCH 10/10] perf, tools: Add support for MetricName JSON attribute Andi Kleen
2017-02-24  8:37 ` [PATCH 01/10] perf, tools, stat: Factor out callback for collecting event values Jiri Olsa
2017-02-24 15:29   ` Andi Kleen
2017-02-26 23:28 ` Jiri Olsa
2017-03-01  6:49 perf: Improve support for uncore JSON event lists Andi Kleen
2017-03-01  6:49 ` [PATCH 09/10] perf, tools, list: Support printing MetricExpr with -v Andi Kleen

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=20170224001021.6723-9-andi@firstfloor.org \
    --to=andi@firstfloor.org \
    --cc=acme@kernel.org \
    --cc=ak@linux.intel.com \
    --cc=jolsa@kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    /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

Powered by JetHome