* [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.