perf-mem(1) — Linux manual page
PERF-MEM(1) perf Manual PERF-MEM(1)
NAME
perf-mem - Profile memory accesses
SYNOPSIS
perf mem [<options>] (record [<command>] | report)
DESCRIPTION
"perf mem record" runs a command and gathers memory operation
data from it, into perf.data. Perf record options are accepted
and are passed through.
"perf mem report" displays the result. It invokes perf report
with the right set of options to display a memory access profile.
By default, loads and stores are sampled. Use the -t option to
limit to loads or stores.
Note that on Intel systems the memory latency reported is the
use-latency, not the pure load (or store latency). Use latency
includes any pipeline queueing delays in addition to the memory
subsystem latency.
On Arm64 this uses SPE to sample load and store operations,
therefore hardware and kernel support is required. See
perf-arm-spe(1) for a setup guide. Due to the statistical nature
of SPE sampling, not every memory operation will be sampled.
OPTIONS
<command>...
Any command you can specify in a shell.
-i, --input=<file>
Input file name.
-f, --force
Don’t do ownership validation
-t, --type=<type>
Select the memory operation type: load or store (default:
load,store)
-D, --dump-raw-samples
Dump the raw decoded samples on the screen in a format that
is easy to parse with one sample per line.
-x, --field-separator=<separator>
Specify the field separator used when dump raw samples (-D
option). By default, The separator is the space character.
-C, --cpu=<cpu>
Monitor only on the list of CPUs provided. Multiple CPUs can
be provided as a comma-separated list with no space: 0,1.
Ranges of CPUs are specified with -: 0-2. Default is to
monitor all CPUS.
-U, --hide-unresolved
Only display entries resolved to a symbol.
-p, --phys-data
Record/Report sample physical addresses
--data-page-size
Record/Report sample data address page size
RECORD OPTIONS
-e, --event <event>
Event selector. Use perf mem record -e list to list available
events.
-K, --all-kernel
Configure all used events to run in kernel space.
-U, --all-user
Configure all used events to run in user space.
-v, --verbose
Be more verbose (show counter open errors, etc)
--ldlat <n>
Specify desired latency for loads event. Supported on Intel
and Arm64 processors only. Ignored on other archs.
In addition, for report all perf report options are valid, and
for record all perf record options.
SEE ALSO
perf-record(1), perf-report(1), perf-arm-spe(1)
COLOPHON
This page is part of the perf (Performance analysis tools for
Linux (in Linux source tree)) project. Information about the
project can be found at
⟨https://perf.wiki.kernel.org/index.php/Main_Page⟩. If you have a
bug report for this manual page, send it to
linux-kernel@vger.kernel.org. This page was obtained from the
project's upstream Git repository
⟨http://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git⟩
on 2024-06-14. (At that time, the date of the most recent commit
that was found in the repository was 2024-06-13.) If you
discover any rendering problems in this HTML version of the page,
or you believe there is a better or more up-to-date source for
the page, or you have corrections or improvements to the
information in this COLOPHON (which is not part of the original
manual page), send a mail to man-pages@man7.org
perf 2023-01-27 PERF-MEM(1)
Pages that refer to this page: perf(1), perf-c2c(1)