From: Namhyung Kim <namhyung@kernel.org>
To: Arnaldo Carvalho de Melo <acme@kernel.org>
Cc: Ian Rogers <irogers@google.com>,
Kan Liang <kan.liang@linux.intel.com>,
Jiri Olsa <jolsa@kernel.org>,
Adrian Hunter <adrian.hunter@intel.com>,
Peter Zijlstra <peterz@infradead.org>,
Ingo Molnar <mingo@kernel.org>,
LKML <linux-kernel@vger.kernel.org>,
linux-perf-users@vger.kernel.org,
Ravi Bangoria <ravi.bangoria@amd.com>, Leo Yan <leo.yan@arm.com>
Subject: Re: [PATCH 11/11] perf mem: Add 'dtlb' output field
Date: Fri, 2 May 2025 11:38:35 -0700 [thread overview]
Message-ID: <aBURK58syHRV9Eqx@google.com> (raw)
In-Reply-To: <aBTzK_vZ0kBh9CLV@x1>
On Fri, May 02, 2025 at 01:30:35PM -0300, Arnaldo Carvalho de Melo wrote:
> On Wed, Apr 30, 2025 at 01:55:48PM -0700, Namhyung Kim wrote:
> > This is a breakdown of perf_mem_data_src.mem_dtlb values. It assumes
> > PMU drivers would set PERF_MEM_TLB_HIT bit with an appropriate level.
> > And having PERF_MEM_TLB_MISS means that it failed to find one in any
> > levels of TLB. For now, it doesn't use PERF_MEM_TLB_{WK,OS} bits.
> >
> > Also it seems Intel machines don't distinguish L1 or L2 precisely. So I
> > added ANY_HIT (printed as "L?-Hit") to handle the case.
> >
> > $ perf mem report -F overhead,dtlb,dso --stdio
> > ...
> > # --- D-TLB ----
> > # Overhead L?-Hit Miss Shared Object
> > # ........ .............. .................
> > #
> > 67.03% 99.5% 0.5% [unknown]
> > 31.23% 99.2% 0.8% [kernel.kallsyms]
> > 1.08% 97.8% 2.2% [i915]
> > 0.36% 100.0% 0.0% [JIT] tid 6853
> > 0.12% 100.0% 0.0% [drm]
> > 0.05% 100.0% 0.0% [drm_kms_helper]
> > 0.05% 100.0% 0.0% [ext4]
> > 0.02% 100.0% 0.0% [aesni_intel]
> > 0.02% 100.0% 0.0% [crc32c_intel]
> > 0.02% 100.0% 0.0% [dm_crypt]
> > ...
>
> root@number:~# perf report --header | grep cpudesc
> # cpudesc : AMD Ryzen 9 9950X3D 16-Core Processor
> root@number:~# perf mem report -F overhead,dtlb,dso --stdio | head -20
> # To display the perf.data header info, please use --header/--header-only options.
> #
> #
> # Total Lost Samples: 0
> #
> # Samples: 2K of event 'cycles:P'
> # Total weight : 2637
> # Sort order : local_weight,mem,sym,dso,symbol_daddr,dso_daddr,snoop,tlb,locked,blocked,local_ins_lat,local_p_stage_cyc
> #
> # ---------- D-TLB -----------
> # Overhead L1-Hit L2-Hit Miss Other Shared Object
> # ........ ............................ .................................
> #
> 77.47% 18.4% 0.1% 0.6% 80.9% [kernel.kallsyms]
> 5.61% 36.5% 0.7% 1.4% 61.5% libxul.so
> 2.77% 39.7% 0.0% 12.3% 47.9% libc.so.6
> 2.01% 34.0% 1.9% 1.9% 62.3% libglib-2.0.so.0.8400.1
> 1.93% 31.4% 2.0% 2.0% 64.7% [amdgpu]
> 1.63% 48.8% 0.0% 0.0% 51.2% [JIT] tid 60168
> 1.14% 3.3% 0.0% 0.0% 96.7% [vdso]
> root@number:~#
I guess it's because those samples don't have mem_info as they are not
memory instructions.
Can you please re-run the perf record with filters like below?
$ perf record -aW --sample-mem-info -e cycles:P --filter 'mem_op == load || mem_op == store' sleep 1
Thanks,
Namhyung
next prev parent reply other threads:[~2025-05-02 18:38 UTC|newest]
Thread overview: 23+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-04-30 20:55 [RFC/PATCHSET 00/11] perf mem: Add new output fields for data source (v1) Namhyung Kim
2025-04-30 20:55 ` [PATCH 01/11] perf hist: Remove output field from sort-list properly Namhyung Kim
2025-04-30 20:55 ` [PATCH 02/11] perf record: Add --sample-mem-info option Namhyung Kim
2025-04-30 20:55 ` [PATCH 03/11] perf hist: Support multi-line header Namhyung Kim
2025-04-30 20:55 ` [PATCH 04/11] perf hist: Add struct he_mem_stat Namhyung Kim
2025-04-30 20:55 ` [PATCH 05/11] perf hist: Basic support for mem_stat accounting Namhyung Kim
2025-04-30 20:55 ` [PATCH 06/11] perf hist: Implement output fields for mem stats Namhyung Kim
2025-04-30 20:55 ` [PATCH 07/11] perf mem: Add 'op' output field Namhyung Kim
2025-04-30 20:55 ` [PATCH 08/11] perf hist: Hide unused mem stat columns Namhyung Kim
2025-05-02 16:18 ` Arnaldo Carvalho de Melo
2025-05-02 16:27 ` Arnaldo Carvalho de Melo
2025-05-02 18:21 ` Namhyung Kim
2025-04-30 20:55 ` [PATCH 09/11] perf mem: Add 'cache' and 'memory' output fields Namhyung Kim
2025-04-30 20:55 ` [PATCH 10/11] perf mem: Add 'snoop' output field Namhyung Kim
2025-04-30 20:55 ` [PATCH 11/11] perf mem: Add 'dtlb' " Namhyung Kim
2025-05-02 16:30 ` Arnaldo Carvalho de Melo
2025-05-02 18:38 ` Namhyung Kim [this message]
2025-05-02 19:21 ` Arnaldo Carvalho de Melo
2025-05-02 20:01 ` Namhyung Kim
2025-05-02 16:00 ` [RFC/PATCHSET 00/11] perf mem: Add new output fields for data source (v1) Arnaldo Carvalho de Melo
2025-05-08 4:12 ` Ravi Bangoria
2025-05-09 16:17 ` Namhyung Kim
2025-05-12 10:01 ` Ravi Bangoria
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=aBURK58syHRV9Eqx@google.com \
--to=namhyung@kernel.org \
--cc=acme@kernel.org \
--cc=adrian.hunter@intel.com \
--cc=irogers@google.com \
--cc=jolsa@kernel.org \
--cc=kan.liang@linux.intel.com \
--cc=leo.yan@arm.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-perf-users@vger.kernel.org \
--cc=mingo@kernel.org \
--cc=peterz@infradead.org \
--cc=ravi.bangoria@amd.com \
/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;
as well as URLs for NNTP newsgroup(s).