[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <YcMcT5gbv+3E7LGr@kernel.org>
Date: Wed, 22 Dec 2021 09:38:39 -0300
From: Arnaldo Carvalho de Melo <acme@...nel.org>
To: Kajol Jain <kjain@...ux.ibm.com>
Cc: mpe@...erman.id.au, linuxppc-dev@...ts.ozlabs.org,
linux-kernel@...r.kernel.org, peterz@...radead.org,
mingo@...hat.com, jolsa@...nel.org, namhyung@...nel.org,
ak@...ux.intel.com, linux-perf-users@...r.kernel.org,
maddy@...ux.ibm.com, atrajeev@...ux.vnet.ibm.com,
rnsastry@...ux.ibm.com, yao.jin@...ux.intel.com, ast@...nel.org,
daniel@...earbox.net, songliubraving@...com,
kan.liang@...ux.intel.com, mark.rutland@....com,
alexander.shishkin@...ux.intel.com, paulus@...ba.org
Subject: Re: [PATCH 3/4] powerpc/perf: Add encodings to represent data based
on newer composite PERF_MEM_LVLNUM* fields
Em Mon, Dec 06, 2021 at 02:47:48PM +0530, Kajol Jain escreveu:
> The code represent data coming from L1/L2/L3 cache hits based on
> PERF_MEM_LVL_* namespace, which is in the process of deprecation in
> the favour of newer composite PERF_MEM_{LVLNUM_,REMOTE_,SNOOPX_,HOPS_}
> fields.
Thanks, applied.
- Arnaldo
> Add data source encodings to represent L1/L2/L3 cache hits based on
> newer composite PERF_MEM_{LVLNUM_,REMOTE_,SNOOPX_,HOPS_} fields for
> power10 and older platforms
>
> Result in power9 system without patch changes:
>
> localhost:# ./perf mem report --sort="mem,sym,dso" --stdio
> # Overhead Samples Memory access Symbol Shared Object
> # ........ ............ ........................ ................................. ................
> #
> 29.51% 1 L2 hit [k] perf_event_exec [kernel.vmlinux]
> 27.05% 1 L1 hit [k] perf_ctx_unlock [kernel.vmlinux]
> 13.93% 1 L1 hit [k] vtime_delta [kernel.vmlinux]
> 13.11% 1 L1 hit [k] prepend_path.isra.11 [kernel.vmlinux]
> 8.20% 1 L1 hit [.] 00000038.plt_call.__GI_strlen libc-2.28.so
> 8.20% 1 L1 hit [k] perf_event_interrupt [kernel.vmlinux]
>
> Result in power9 system with patch changes:
>
> localhost:# ./perf mem report --sort="mem,sym,dso" --stdio
> # Overhead Samples Memory access Symbol Shared Object
> # ........ ............ ........................ .......................... ................
> #
> 36.63% 1 L2 or L2 hit [k] perf_event_exec [kernel.vmlinux]
> 25.50% 1 L1 or L1 hit [k] vtime_delta [kernel.vmlinux]
> 13.12% 1 L1 or L1 hit [k] unmap_region [kernel.vmlinux]
> 12.62% 1 L1 or L1 hit [k] perf_sample_event_took [kernel.vmlinux]
> 6.93% 1 L1 or L1 hit [k] perf_ctx_unlock [kernel.vmlinux]
> 5.20% 1 L1 or L1 hit [.] __memcpy_power7 libc-2.28.so
>
> Reviewed-by: Madhavan Srinivasan <maddy@...ux.ibm.com>
> Signed-off-by: Kajol Jain <kjain@...ux.ibm.com>
> ---
> arch/powerpc/perf/isa207-common.c | 6 +++---
> 1 file changed, 3 insertions(+), 3 deletions(-)
>
> diff --git a/arch/powerpc/perf/isa207-common.c b/arch/powerpc/perf/isa207-common.c
> index 7ea873ab2e6f..6c6bc8b7d887 100644
> --- a/arch/powerpc/perf/isa207-common.c
> +++ b/arch/powerpc/perf/isa207-common.c
> @@ -220,13 +220,13 @@ static inline u64 isa207_find_source(u64 idx, u32 sub_idx)
> /* Nothing to do */
> break;
> case 1:
> - ret = PH(LVL, L1);
> + ret = PH(LVL, L1) | LEVEL(L1) | P(SNOOP, HIT);
> break;
> case 2:
> - ret = PH(LVL, L2);
> + ret = PH(LVL, L2) | LEVEL(L2) | P(SNOOP, HIT);
> break;
> case 3:
> - ret = PH(LVL, L3);
> + ret = PH(LVL, L3) | LEVEL(L3) | P(SNOOP, HIT);
> break;
> case 4:
> if (sub_idx <= 1)
> --
> 2.27.0
--
- Arnaldo
Powered by blists - more mailing lists