All of lore.kernel.org
 help / color / mirror / Atom feed
From: Andi Kleen <andi@firstfloor.org>
To: acme@kernel.org, peterz@infradead.org
Cc: jolsa@kernel.org, linux-kernel@vger.kernel.org,
	Andi Kleen <ak@linux.intel.com>
Subject: [PATCH 07/10] perf, tools, stat: Scale values by unit before metrics
Date: Thu,  5 May 2016 16:04:04 -0700	[thread overview]
Message-ID: <1462489447-31832-8-git-send-email-andi@firstfloor.org> (raw)
In-Reply-To: <1462489447-31832-1-git-send-email-andi@firstfloor.org>

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

Scale values by unit before passing them to the metrics printing functions.
This is needed for TopDown, because it needs to scale the slots correctly
by pipeline width / SMTness.

For existing metrics it shouldn't make any difference, as those generally
use events that don't have any units.

Signed-off-by: Andi Kleen <ak@linux.intel.com>
---
 tools/perf/util/stat.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/tools/perf/util/stat.c b/tools/perf/util/stat.c
index 4d9b481cf3b6..ffa1d0653861 100644
--- a/tools/perf/util/stat.c
+++ b/tools/perf/util/stat.c
@@ -307,6 +307,7 @@ int perf_stat_process_counter(struct perf_stat_config *config,
 	struct perf_counts_values *aggr = &counter->counts->aggr;
 	struct perf_stat_evsel *ps = counter->priv;
 	u64 *count = counter->counts->aggr.values;
+	u64 val;
 	int i, ret;
 
 	aggr->val = aggr->ena = aggr->run = 0;
@@ -346,7 +347,8 @@ int perf_stat_process_counter(struct perf_stat_config *config,
 	/*
 	 * Save the full runtime - to allow normalization during printout:
 	 */
-	perf_stat__update_shadow_stats(counter, count, 0);
+	val = counter->scale * *count;
+	perf_stat__update_shadow_stats(counter, &val, 0);
 
 	return 0;
 }
-- 
2.5.5

  parent reply	other threads:[~2016-05-05 23:04 UTC|newest]

Thread overview: 33+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-05-05 23:03 Add top down metrics to perf stat Andi Kleen
2016-05-05 23:03 ` [PATCH 01/10] x86: Add topology_max_smt_threads() Andi Kleen
2016-05-06 10:13   ` Peter Zijlstra
2016-05-06 10:47     ` Thomas Gleixner
2016-05-06 17:24       ` [UPDATED PATCH " Andi Kleen
2016-05-07  8:11         ` Thomas Gleixner
2016-05-12  8:07         ` Ingo Molnar
2016-05-05 23:03 ` [PATCH 02/10] x86, perf: Support sysfs files depending on SMT status Andi Kleen
2016-05-09  9:42   ` Peter Zijlstra
2016-05-09 14:27     ` Andi Kleen
2016-05-09 14:34       ` Peter Zijlstra
2016-05-12  8:05   ` Ingo Molnar
2016-05-05 23:04 ` [PATCH 03/10] x86, perf: Add Top Down events to Intel Core Andi Kleen
2016-05-11 13:23   ` Jiri Olsa
2016-05-11 13:29     ` Peter Zijlstra
2016-05-12  8:10   ` Ingo Molnar
2016-05-05 23:04 ` [PATCH 04/10] x86, perf: Add Top Down events to Intel Atom Andi Kleen
2016-05-05 23:04 ` [PATCH 05/10] x86, perf: Use new topology_max_smt_threads() in HT leak workaround Andi Kleen
2016-05-05 23:04 ` [PATCH 06/10] perf, tools, stat: Avoid fractional digits for integer scales Andi Kleen
2016-05-07 19:10   ` Jiri Olsa
2016-05-07 19:24     ` Andi Kleen
2016-05-11 13:00       ` Jiri Olsa
2016-05-11 16:43         ` Arnaldo Carvalho de Melo
2016-05-20  6:42   ` [tip:perf/urgent] perf " tip-bot for Andi Kleen
2016-05-05 23:04 ` Andi Kleen [this message]
2016-05-07 19:14   ` [PATCH 07/10] perf, tools, stat: Scale values by unit before metrics Jiri Olsa
2016-05-10 20:30   ` [tip:perf/core] perf " tip-bot for Andi Kleen
2016-05-05 23:04 ` [PATCH 08/10] perf, tools, stat: Basic support for TopDown in perf stat Andi Kleen
2016-05-05 23:04 ` [PATCH 09/10] perf, tools, stat: Add computation of TopDown formulas Andi Kleen
2016-05-05 23:04 ` [PATCH 10/10] perf, tools, stat: Add extra output of counter values with -vv Andi Kleen
2016-05-12  8:03   ` Jiri Olsa
2016-05-20  0:05     ` Andi Kleen
2016-05-12  7:47 ` Add top down metrics to perf stat Jiri Olsa

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=1462489447-31832-8-git-send-email-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 \
    --cc=peterz@infradead.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.