Linux Audio

Check our new training course

Loading...
v6.13.7
  1perf-mem(1)
  2===========
  3
  4NAME
  5----
  6perf-mem - Profile memory accesses
  7
  8SYNOPSIS
  9--------
 10[verse]
 11'perf mem' [<options>] (record [<command>] | report)
 12
 13DESCRIPTION
 14-----------
 15"perf mem record" runs a command and gathers memory operation data
 16from it, into perf.data. Perf record options are accepted and are passed through.
 17
 18"perf mem report" displays the result. It invokes perf report with the
 19right set of options to display a memory access profile. By default, loads
 20and stores are sampled. Use the -t option to limit to loads or stores.
 21
 22Note that on Intel systems the memory latency reported is the use-latency,
 23not the pure load (or store latency). Use latency includes any pipeline
 24queuing delays in addition to the memory subsystem latency.
 25
 26On Arm64 this uses SPE to sample load and store operations, therefore hardware
 27and kernel support is required. See linkperf:perf-arm-spe[1] for a setup guide.
 28Due to the statistical nature of SPE sampling, not every memory operation will
 29be sampled.
 
 
 
 
 30
 31COMMON OPTIONS
 32--------------
 33-f::
 34--force::
 35	Don't do ownership validation
 36
 37-t::
 38--type=<type>::
 39	Select the memory operation type: load or store (default: load,store)
 40
 41-v::
 42--verbose::
 43	Be more verbose (show counter open errors, etc)
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 44
 45-p::
 46--phys-data::
 47	Record/Report sample physical addresses
 48
 49--data-page-size::
 50	Record/Report sample data address page size
 51
 52RECORD OPTIONS
 53--------------
 54<command>...::
 55	Any command you can specify in a shell.
 56
 57-e::
 58--event <event>::
 59	Event selector. Use 'perf mem record -e list' to list available events.
 60
 61-K::
 62--all-kernel::
 63	Configure all used events to run in kernel space.
 64
 65-U::
 66--all-user::
 67	Configure all used events to run in user space.
 68
 69--ldlat <n>::
 70	Specify desired latency for loads event. Supported on Intel and Arm64
 71	processors only. Ignored on other archs.
 72
 73REPORT OPTIONS
 74--------------
 75-i::
 76--input=<file>::
 77	Input file name.
 78
 79-C::
 80--cpu=<cpu>::
 81	Monitor only on the list of CPUs provided. Multiple CPUs can be provided as a
 82        comma-separated list with no space: 0,1. Ranges of CPUs are specified with -
 83	like 0-2. Default is to monitor all CPUS.
 84
 85-D::
 86--dump-raw-samples::
 87	Dump the raw decoded samples on the screen in a format that is easy to parse with
 88	one sample per line.
 89
 90-s::
 91--sort=<key>::
 92	Group result by given key(s) - multiple keys can be specified
 93	in CSV format.  The keys are specific to memory samples are:
 94	symbol_daddr, symbol_iaddr, dso_daddr, locked, tlb, mem, snoop,
 95	dcacheline, phys_daddr, data_page_size, blocked.
 96
 97	- symbol_daddr: name of data symbol being executed on at the time of sample
 98	- symbol_iaddr: name of code symbol being executed on at the time of sample
 99	- dso_daddr: name of library or module containing the data being executed
100	             on at the time of the sample
101	- locked: whether the bus was locked at the time of the sample
102	- tlb: type of tlb access for the data at the time of the sample
103	- mem: type of memory access for the data at the time of the sample
104	- snoop: type of snoop (if any) for the data at the time of the sample
105	- dcacheline: the cacheline the data address is on at the time of the sample
106	- phys_daddr: physical address of data being executed on at the time of sample
107	- data_page_size: the data page size of data being executed on at the time of sample
108	- blocked: reason of blocked load access for the data at the time of the sample
109
110	And the default sort keys are changed to local_weight, mem, sym, dso,
111	symbol_daddr, dso_daddr, snoop, tlb, locked, blocked, local_ins_lat.
112
113-T::
114--type-profile::
115	Show data-type profile result instead of code symbols.  This requires
116	the debug information and it will change the default sort keys to:
117	mem, snoop, tlb, type.
118
119-U::
120--hide-unresolved::
121	Only display entries resolved to a symbol.
122
123-x::
124--field-separator=<separator>::
125	Specify the field separator used when dump raw samples (-D option). By default,
126	The separator is the space character.
127
128In addition, for report all perf report options are valid, and for record
129all perf record options.
130
131SEE ALSO
132--------
133linkperf:perf-record[1], linkperf:perf-report[1], linkperf:perf-arm-spe[1]
v4.17
 1perf-mem(1)
 2===========
 3
 4NAME
 5----
 6perf-mem - Profile memory accesses
 7
 8SYNOPSIS
 9--------
10[verse]
11'perf mem' [<options>] (record [<command>] | report)
12
13DESCRIPTION
14-----------
15"perf mem record" runs a command and gathers memory operation data
16from it, into perf.data. Perf record options are accepted and are passed through.
17
18"perf mem report" displays the result. It invokes perf report with the
19right set of options to display a memory access profile. By default, loads
20and stores are sampled. Use the -t option to limit to loads or stores.
21
22Note that on Intel systems the memory latency reported is the use-latency,
23not the pure load (or store latency). Use latency includes any pipeline
24queueing delays in addition to the memory subsystem latency.
25
26OPTIONS
27-------
28<command>...::
29	Any command you can specify in a shell.
30
31-i::
32--input=<file>::
33	Input file name.
34
 
 
35-f::
36--force::
37	Don't do ownership validation
38
39-t::
40--type=<type>::
41	Select the memory operation type: load or store (default: load,store)
42
43-D::
44--dump-raw-samples::
45	Dump the raw decoded samples on the screen in a format that is easy to parse with
46	one sample per line.
47
48-x::
49--field-separator=<separator>::
50	Specify the field separator used when dump raw samples (-D option). By default,
51	The separator is the space character.
52
53-C::
54--cpu=<cpu>::
55	Monitor only on the list of CPUs provided. Multiple CPUs can be provided as a
56        comma-separated list with no space: 0,1. Ranges of CPUs are specified with -: 0-2. Default
57        is to monitor all CPUS.
58-U::
59--hide-unresolved::
60	Only display entries resolved to a symbol.
61
62-p::
63--phys-data::
64	Record/Report sample physical addresses
65
 
 
 
66RECORD OPTIONS
67--------------
 
 
 
68-e::
69--event <event>::
70	Event selector. Use 'perf mem record -e list' to list available events.
71
72-K::
73--all-kernel::
74	Configure all used events to run in kernel space.
75
76-U::
77--all-user::
78	Configure all used events to run in user space.
79
80-v::
81--verbose::
82	Be more verbose (show counter open errors, etc)
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
83
84--ldlat <n>::
85	Specify desired latency for loads event.
 
 
86
87In addition, for report all perf report options are valid, and for record
88all perf record options.
89
90SEE ALSO
91--------
92linkperf:perf-record[1], linkperf:perf-report[1]