Merge remote-tracking branches 'spi/fix/qup' and 'spi/fix/topcliff-pch' into spi...
[cascardo/linux.git] / tools / perf / Documentation / perf-top.txt
1 perf-top(1)
2 ===========
3
4 NAME
5 ----
6 perf-top - System profiling tool.
7
8 SYNOPSIS
9 --------
10 [verse]
11 'perf top' [-e <EVENT> | --event=EVENT] [<options>]
12
13 DESCRIPTION
14 -----------
15 This command generates and displays a performance counter profile in real time.
16
17
18 OPTIONS
19 -------
20 -a::
21 --all-cpus::
22         System-wide collection.  (default)
23
24 -c <count>::
25 --count=<count>::
26         Event period to sample.
27
28 -C <cpu-list>::
29 --cpu=<cpu>::
30 Monitor only on the list of CPUs provided. Multiple CPUs can be provided as a
31 comma-separated list with no space: 0,1. Ranges of CPUs are specified with -: 0-2.
32 Default is to monitor all CPUS.
33
34 -d <seconds>::
35 --delay=<seconds>::
36         Number of seconds to delay between refreshes.
37
38 -e <event>::
39 --event=<event>::
40         Select the PMU event. Selection can be a symbolic event name
41         (use 'perf list' to list all events) or a raw PMU
42         event (eventsel+umask) in the form of rNNN where NNN is a
43         hexadecimal event descriptor.
44
45 -E <entries>::
46 --entries=<entries>::
47         Display this many functions.
48
49 -f <count>::
50 --count-filter=<count>::
51         Only display functions with more events than this.
52
53 --group::
54         Put the counters into a counter group.
55
56 -F <freq>::
57 --freq=<freq>::
58         Profile at this frequency.
59
60 -i::
61 --inherit::
62         Child tasks do not inherit counters.
63
64 -k <path>::
65 --vmlinux=<path>::
66         Path to vmlinux.  Required for annotation functionality.
67
68 -m <pages>::
69 --mmap-pages=<pages>::
70         Number of mmap data pages (must be a power of two) or size
71         specification with appended unit character - B/K/M/G. The
72         size is rounded up to have nearest pages power of two value.
73
74 -p <pid>::
75 --pid=<pid>::
76         Profile events on existing Process ID (comma separated list).
77
78 -t <tid>::
79 --tid=<tid>::
80         Profile events on existing thread ID (comma separated list).
81
82 -u::
83 --uid=::
84         Record events in threads owned by uid. Name or number.
85
86 -r <priority>::
87 --realtime=<priority>::
88         Collect data with this RT SCHED_FIFO priority.
89
90 --sym-annotate=<symbol>::
91         Annotate this symbol.
92
93 -K::
94 --hide_kernel_symbols::
95         Hide kernel symbols.
96
97 -U::
98 --hide_user_symbols::
99         Hide user symbols.
100
101 -D::
102 --dump-symtab::
103         Dump the symbol table used for profiling.
104
105 -v::
106 --verbose::
107         Be more verbose (show counter open errors, etc).
108
109 -z::
110 --zero::
111         Zero history across display updates.
112
113 -s::
114 --sort::
115         Sort by key(s): pid, comm, dso, symbol, parent, srcline, weight,
116         local_weight, abort, in_tx, transaction
117
118 -n::
119 --show-nr-samples::
120         Show a column with the number of samples.
121
122 --show-total-period::
123         Show a column with the sum of periods.
124
125 --dsos::
126         Only consider symbols in these dsos.
127
128 --comms::
129         Only consider symbols in these comms.
130
131 --symbols::
132         Only consider these symbols.
133
134 -M::
135 --disassembler-style=:: Set disassembler style for objdump.
136
137 --source::
138         Interleave source code with assembly code. Enabled by default,
139         disable with --no-source.
140
141 --asm-raw::
142         Show raw instruction encoding of assembly instructions.
143
144 -g::
145         Enables call-graph (stack chain/backtrace) recording.
146
147 --call-graph::
148         Setup and enable call-graph (stack chain/backtrace) recording,
149         implies -g.
150
151 --max-stack::
152         Set the stack depth limit when parsing the callchain, anything
153         beyond the specified depth will be ignored. This is a trade-off
154         between information loss and faster processing especially for
155         workloads that can have a very long callchain stack.
156
157         Default: 127
158
159 --ignore-callees=<regex>::
160         Ignore callees of the function(s) matching the given regex.
161         This has the effect of collecting the callers of each such
162         function into one place in the call-graph tree.
163
164 --percent-limit::
165         Do not show entries which have an overhead under that percent.
166         (Default: 0).
167
168 INTERACTIVE PROMPTING KEYS
169 --------------------------
170
171 [d]::
172         Display refresh delay.
173
174 [e]::
175         Number of entries to display.
176
177 [E]::
178         Event to display when multiple counters are active.
179
180 [f]::
181         Profile display filter (>= hit count).
182
183 [F]::
184         Annotation display filter (>= % of total).
185
186 [s]::
187         Annotate symbol.
188
189 [S]::
190         Stop annotation, return to full profile display.
191
192 [z]::
193         Toggle event count zeroing across display updates.
194
195 [qQ]::
196         Quit.
197
198 Pressing any unmapped key displays a menu, and prompts for input.
199
200
201 SEE ALSO
202 --------
203 linkperf:perf-stat[1], linkperf:perf-list[1]