All of lore.kernel.org
 help / color / mirror / Atom feed
* [GIT PULL 0/1] perf stat fix
@ 2015-08-28 17:13 Arnaldo Carvalho de Melo
  2015-08-28 17:13 ` [PATCH 1/1] perf stat: Get correct cpu id for print_aggr Arnaldo Carvalho de Melo
  2015-08-31  8:24 ` [GIT PULL 0/1] perf stat fix Ingo Molnar
  0 siblings, 2 replies; 3+ messages in thread
From: Arnaldo Carvalho de Melo @ 2015-08-28 17:13 UTC (permalink / raw)
  To: Ingo Molnar
  Cc: linux-kernel, Arnaldo Carvalho de Melo, Adrian Hunter, Andi Kleen,
	David Ahern, Jiri Olsa, Kan Liang, Namhyung Kim, Peter Zijlstra,
	Stephane Eranian, Arnaldo Carvalho de Melo

Hi Ingo,

	Please consider applying,

Kan Liang (1):
  perf stat: Get correct cpu id for print_aggr

 tools/perf/builtin-stat.c | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

-- 
2.1.0

The following changes since commit 196676497f2507966f99abef63bede6a8550f8b3:

  Merge tag 'perf-urgent-for-mingo' of git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux into perf/urgent (2015-08-20 11:47:14 +0200)

are available in the git repository at:

  git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux.git tags/perf-urgent-for-mingo

for you to fetch changes up to 601083cffb7cabdcc55b8195d732f0f7028570fa:

  perf stat: Get correct cpu id for print_aggr (2015-08-28 11:49:52 -0300)

----------------------------------------------------------------
perf/urgent fix:

User visible:

- Use index, not CPU id, to find core/pkg id in 'perf stat' (Kan Liang)

Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>

----------------------------------------------------------------
Kan Liang (1):
      perf stat: Get correct cpu id for print_aggr

 tools/perf/builtin-stat.c | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

^ permalink raw reply	[flat|nested] 3+ messages in thread

* [PATCH 1/1] perf stat: Get correct cpu id for print_aggr
  2015-08-28 17:13 [GIT PULL 0/1] perf stat fix Arnaldo Carvalho de Melo
@ 2015-08-28 17:13 ` Arnaldo Carvalho de Melo
  2015-08-31  8:24 ` [GIT PULL 0/1] perf stat fix Ingo Molnar
  1 sibling, 0 replies; 3+ messages in thread
From: Arnaldo Carvalho de Melo @ 2015-08-28 17:13 UTC (permalink / raw)
  To: Ingo Molnar
  Cc: linux-kernel, Kan Liang, Adrian Hunter, Andi Kleen, David Ahern,
	Namhyung Kim, Peter Zijlstra, Arnaldo Carvalho de Melo

From: Kan Liang <kan.liang@intel.com>

print_aggr() fails to print per-core/per-socket statistics after commit
582ec0829b3d ("perf stat: Fix per-socket output bug for uncore events")
if events have differnt cpus. Because in print_aggr(), aggr_get_id needs
index (not cpu id) to find core/pkg id. Also, evsel cpu maps should be
used to get aggregated id.

Here is an example:

Counting events cycles,uncore_imc_0/cas_count_read/. (Uncore event has
cpumask 0,18)

  $ perf stat -e cycles,uncore_imc_0/cas_count_read/ -C0,18 --per-core sleep 2

Without this patch, it failes to get CPU 18 result.

   Performance counter stats for 'CPU(s) 0,18':

  S0-C0           1            7526851      cycles
  S0-C0           1               1.05 MiB  uncore_imc_0/cas_count_read/
  S1-C0           0      <not counted>      cycles
  S1-C0           0      <not counted> MiB  uncore_imc_0/cas_count_read/

With this patch, it can get both CPU0 and CPU18 result.

   Performance counter stats for 'CPU(s) 0,18':

  S0-C0           1            6327768      cycles
  S0-C0           1               0.47 MiB  uncore_imc_0/cas_count_read/
  S1-C0           1             330228      cycles
  S1-C0           1               0.29 MiB  uncore_imc_0/cas_count_read/

Signed-off-by: Kan Liang <kan.liang@intel.com>
Acked-by: Jiri Olsa <jolsa@kernel.org>
Acked-by: Stephane Eranian <eranian@google.com>
Cc: Adrian Hunter <adrian.hunter@intel.com>
Cc: Andi Kleen <ak@linux.intel.com>
Cc: David Ahern <dsahern@gmail.com>
Cc: Namhyung Kim <namhyung@kernel.org>
Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
Fixes: 582ec0829b3d ("perf stat: Fix per-socket output bug for uncore events")
Link: http://lkml.kernel.org/r/1435820925-51091-1-git-send-email-kan.liang@intel.com
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
---
 tools/perf/builtin-stat.c | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

diff --git a/tools/perf/builtin-stat.c b/tools/perf/builtin-stat.c
index d99d850e1444..ef355fc0e870 100644
--- a/tools/perf/builtin-stat.c
+++ b/tools/perf/builtin-stat.c
@@ -694,7 +694,7 @@ static void abs_printout(int id, int nr, struct perf_evsel *evsel, double avg)
 static void print_aggr(char *prefix)
 {
 	struct perf_evsel *counter;
-	int cpu, cpu2, s, s2, id, nr;
+	int cpu, s, s2, id, nr;
 	double uval;
 	u64 ena, run, val;
 
@@ -707,8 +707,7 @@ static void print_aggr(char *prefix)
 			val = ena = run = 0;
 			nr = 0;
 			for (cpu = 0; cpu < perf_evsel__nr_cpus(counter); cpu++) {
-				cpu2 = perf_evsel__cpus(counter)->map[cpu];
-				s2 = aggr_get_id(evsel_list->cpus, cpu2);
+				s2 = aggr_get_id(perf_evsel__cpus(counter), cpu);
 				if (s2 != id)
 					continue;
 				val += perf_counts(counter->counts, cpu, 0)->val;
-- 
2.1.0


^ permalink raw reply related	[flat|nested] 3+ messages in thread

* Re: [GIT PULL 0/1] perf stat fix
  2015-08-28 17:13 [GIT PULL 0/1] perf stat fix Arnaldo Carvalho de Melo
  2015-08-28 17:13 ` [PATCH 1/1] perf stat: Get correct cpu id for print_aggr Arnaldo Carvalho de Melo
@ 2015-08-31  8:24 ` Ingo Molnar
  1 sibling, 0 replies; 3+ messages in thread
From: Ingo Molnar @ 2015-08-31  8:24 UTC (permalink / raw)
  To: Arnaldo Carvalho de Melo
  Cc: linux-kernel, Adrian Hunter, Andi Kleen, David Ahern, Jiri Olsa,
	Kan Liang, Namhyung Kim, Peter Zijlstra, Stephane Eranian,
	Arnaldo Carvalho de Melo


* Arnaldo Carvalho de Melo <acme@kernel.org> wrote:

> Hi Ingo,
> 
> 	Please consider applying,
> 
> Kan Liang (1):
>   perf stat: Get correct cpu id for print_aggr
> 
>  tools/perf/builtin-stat.c | 5 ++---
>  1 file changed, 2 insertions(+), 3 deletions(-)
> 
> -- 
> 2.1.0
> 
> The following changes since commit 196676497f2507966f99abef63bede6a8550f8b3:
> 
>   Merge tag 'perf-urgent-for-mingo' of git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux into perf/urgent (2015-08-20 11:47:14 +0200)
> 
> are available in the git repository at:
> 
>   git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux.git tags/perf-urgent-for-mingo
> 
> for you to fetch changes up to 601083cffb7cabdcc55b8195d732f0f7028570fa:
> 
>   perf stat: Get correct cpu id for print_aggr (2015-08-28 11:49:52 -0300)
> 
> ----------------------------------------------------------------
> perf/urgent fix:
> 
> User visible:
> 
> - Use index, not CPU id, to find core/pkg id in 'perf stat' (Kan Liang)
> 
> Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
> 
> ----------------------------------------------------------------
> Kan Liang (1):
>       perf stat: Get correct cpu id for print_aggr
> 
>  tools/perf/builtin-stat.c | 5 ++---
>  1 file changed, 2 insertions(+), 3 deletions(-)

Pulled, thanks Arnaldo!

	Ingo

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2015-08-31  8:25 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-08-28 17:13 [GIT PULL 0/1] perf stat fix Arnaldo Carvalho de Melo
2015-08-28 17:13 ` [PATCH 1/1] perf stat: Get correct cpu id for print_aggr Arnaldo Carvalho de Melo
2015-08-31  8:24 ` [GIT PULL 0/1] perf stat fix Ingo Molnar

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.