Stephane Eranian | 028f12e | 2013-01-24 16:10:38 +0100 | [diff] [blame] | 1 | perf-mem(1) |
| 2 | =========== |
| 3 | |
| 4 | NAME |
| 5 | ---- |
| 6 | perf-mem - Profile memory accesses |
| 7 | |
| 8 | SYNOPSIS |
| 9 | -------- |
| 10 | [verse] |
| 11 | 'perf mem' [<options>] (record [<command>] | report) |
| 12 | |
| 13 | DESCRIPTION |
| 14 | ----------- |
Stephane Eranian | 67121f8 | 2014-12-17 16:23:55 +0100 | [diff] [blame] | 15 | "perf mem record" runs a command and gathers memory operation data |
Stephane Eranian | 028f12e | 2013-01-24 16:10:38 +0100 | [diff] [blame] | 16 | from it, into perf.data. Perf record options are accepted and are passed through. |
| 17 | |
Stephane Eranian | 67121f8 | 2014-12-17 16:23:55 +0100 | [diff] [blame] | 18 | "perf mem report" displays the result. It invokes perf report with the |
| 19 | right set of options to display a memory access profile. By default, loads |
| 20 | and stores are sampled. Use the -t option to limit to loads or stores. |
Stephane Eranian | 028f12e | 2013-01-24 16:10:38 +0100 | [diff] [blame] | 21 | |
Andi Kleen | b639409 | 2014-02-28 06:02:14 -0800 | [diff] [blame] | 22 | Note that on Intel systems the memory latency reported is the use-latency, |
| 23 | not the pure load (or store latency). Use latency includes any pipeline |
| 24 | queueing delays in addition to the memory subsystem latency. |
| 25 | |
Stephane Eranian | 028f12e | 2013-01-24 16:10:38 +0100 | [diff] [blame] | 26 | OPTIONS |
| 27 | ------- |
| 28 | <command>...:: |
| 29 | Any command you can specify in a shell. |
| 30 | |
| 31 | -t:: |
| 32 | --type=:: |
Stephane Eranian | 67121f8 | 2014-12-17 16:23:55 +0100 | [diff] [blame] | 33 | Select the memory operation type: load or store (default: load,store) |
Stephane Eranian | 028f12e | 2013-01-24 16:10:38 +0100 | [diff] [blame] | 34 | |
| 35 | -D:: |
| 36 | --dump-raw-samples=:: |
| 37 | Dump the raw decoded samples on the screen in a format that is easy to parse with |
| 38 | one sample per line. |
| 39 | |
| 40 | -x:: |
| 41 | --field-separator:: |
| 42 | Specify the field separator used when dump raw samples (-D option). By default, |
| 43 | The separator is the space character. |
| 44 | |
| 45 | -C:: |
| 46 | --cpu-list:: |
| 47 | Restrict dump of raw samples to those provided via this option. Note that the same |
| 48 | option can be passed in record mode. It will be interpreted the same way as perf |
| 49 | record. |
| 50 | |
Jiri Olsa | ad16511 | 2016-03-24 13:52:16 +0100 | [diff] [blame] | 51 | -K:: |
| 52 | --all-kernel:: |
| 53 | Configure all used events to run in kernel space. |
| 54 | |
| 55 | -U:: |
| 56 | --all-user:: |
| 57 | Configure all used events to run in user space. |
| 58 | |
Jiri Olsa | b0d745b | 2016-06-14 20:19:11 +0200 | [diff] [blame] | 59 | --ldload:: |
| 60 | Specify desired latency for loads event. |
| 61 | |
Stephane Eranian | 028f12e | 2013-01-24 16:10:38 +0100 | [diff] [blame] | 62 | SEE ALSO |
| 63 | -------- |
| 64 | linkperf:perf-record[1], linkperf:perf-report[1] |