perf-mem(1)
===========

NAME
----
perf-mem - Profile memory accesses

SYNOPSIS
--------
[verse]
'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.

OPTIONS
-------
<command>...::
	Any command you can specify in a shell.

-t::
--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::
	Specify the field separator used when dump raw samples (-D option). By default,
	The separator is the space character.

-C::
--cpu-list::
	Restrict dump of raw samples to those provided via this option. Note that the same
	option can be passed in record mode. It will be interpreted the same way as perf
	record.

-K::
--all-kernel::
	Configure all used events to run in kernel space.

-U::
--all-user::
	Configure all used events to run in user space.

--ldload::
	Specify desired latency for loads event.

-p::
--phys-data::
	Record/Report sample physical addresses

SEE ALSO
--------
linkperf:perf-record[1], linkperf:perf-report[1]
