blob: b1a5bbbfebef9e00f936aaa4914c3668ef146637 [file] [log] [blame]
Ingo Molnar1d8c8b22009-04-20 15:52:29 +02001perf-top(1)
Ingo Molnar6e6b7542008-04-15 22:39:31 +02002===========
Ingo Molnar1d8c8b22009-04-20 15:52:29 +02003
4NAME
5----
Mike Galbraith83617982009-08-04 10:24:41 +02006perf-top - System profiling tool.
Ingo Molnar1d8c8b22009-04-20 15:52:29 +02007
8SYNOPSIS
9--------
10[verse]
Mike Galbraith83617982009-08-04 10:24:41 +020011'perf top' [-e <EVENT> | --event=EVENT] [<options>]
Ingo Molnar1d8c8b22009-04-20 15:52:29 +020012
13DESCRIPTION
14-----------
Shawn Bohrer2e7a9882010-11-30 19:57:21 -060015This command generates and displays a performance counter profile in real time.
Ingo Molnar1d8c8b22009-04-20 15:52:29 +020016
17
18OPTIONS
19-------
Mike Galbraith83617982009-08-04 10:24:41 +020020-a::
21--all-cpus::
22 System-wide collection. (default)
Ingo Molnar1d8c8b22009-04-20 15:52:29 +020023
Mike Galbraith83617982009-08-04 10:24:41 +020024-c <count>::
25--count=<count>::
26 Event period to sample.
27
Stephane Eranianc45c6ea2010-05-28 12:00:01 +020028-C <cpu-list>::
29--cpu=<cpu>::
Shawn Bohrer2e7a9882010-11-30 19:57:21 -060030Monitor only on the list of CPUs provided. Multiple CPUs can be provided as a
31comma-separated list with no space: 0,1. Ranges of CPUs are specified with -: 0-2.
Stephane Eranianc45c6ea2010-05-28 12:00:01 +020032Default is to monitor all CPUS.
Mike Galbraith83617982009-08-04 10:24:41 +020033
34-d <seconds>::
35--delay=<seconds>::
36 Number of seconds to delay between refreshes.
37
38-e <event>::
39--event=<event>::
Thomas Gleixner386b05e2009-06-06 14:56:33 +020040 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
Mike Galbraith83617982009-08-04 10:24:41 +020043 hexadecimal event descriptor.
Ingo Molnar1d8c8b22009-04-20 15:52:29 +020044
Mike Galbraith83617982009-08-04 10:24:41 +020045-E <entries>::
46--entries=<entries>::
47 Display this many functions.
Ingo Molnar1d8c8b22009-04-20 15:52:29 +020048
Mike Galbraith83617982009-08-04 10:24:41 +020049-f <count>::
50--count-filter=<count>::
51 Only display functions with more events than this.
52
Shawn Bohrer2e7a9882010-11-30 19:57:21 -060053-g::
54--group::
55 Put the counters into a counter group.
56
Mike Galbraith83617982009-08-04 10:24:41 +020057-F <freq>::
58--freq=<freq>::
59 Profile at this frequency.
60
61-i::
62--inherit::
63 Child tasks inherit counters, only makes sens with -p option.
64
65-k <path>::
66--vmlinux=<path>::
67 Path to vmlinux. Required for annotation functionality.
68
69-m <pages>::
70--mmap-pages=<pages>::
71 Number of mmapped data pages.
72
73-p <pid>::
74--pid=<pid>::
Shawn Bohrer2e7a9882010-11-30 19:57:21 -060075 Profile events on existing Process ID.
76
77-t <tid>::
78--tid=<tid>::
79 Profile events on existing thread ID.
Mike Galbraith83617982009-08-04 10:24:41 +020080
81-r <priority>::
82--realtime=<priority>::
83 Collect data with this RT SCHED_FIFO priority.
84
85-s <symbol>::
86--sym-annotate=<symbol>::
Kirill Smelkov6cff0e82010-02-03 16:52:08 -020087 Annotate this symbol.
Mike Galbraith83617982009-08-04 10:24:41 +020088
Shawn Bohrer2e7a9882010-11-30 19:57:21 -060089-K::
90--hide_kernel_symbols::
91 Hide kernel symbols.
92
93-U::
94--hide_user_symbols::
95 Hide user symbols.
96
97-D::
98--dump-symtab::
99 Dump the symbol table used for profiling.
100
Mike Galbraith83617982009-08-04 10:24:41 +0200101-v::
102--verbose::
103 Be more verbose (show counter open errors, etc).
104
105-z::
106--zero::
107 Zero history across display updates.
108
Arnaldo Carvalho de Meloab81f3f2011-10-05 19:16:15 -0300109-s::
110--sort::
111 Sort by key(s): pid, comm, dso, symbol, parent
112
113-n::
114--show-nr-samples::
115 Show a column with the number of samples.
116
117--show-total-period::
118 Show a column with the sum of periods.
119
120--dsos::
121 Only consider symbols in these dsos.
122
123--comms::
124 Only consider symbols in these comms.
125
126--symbols::
127 Only consider these symbols.
128
Arnaldo Carvalho de Melo64c6f0c2011-10-06 12:48:31 -0300129-M::
130--disassembler-style=:: Set disassembler style for objdump.
131
132--source::
133 Interleave source code with assembly code. Enabled by default,
134 disable with --no-source.
135
136--asm-raw::
137 Show raw instruction encoding of assembly instructions.
138
Arnaldo Carvalho de Melo19d4ac32011-10-05 19:30:22 -0300139-G [type,min,order]::
140--call-graph::
141 Display call chains using type, min percent threshold and order.
142 type can be either:
143 - flat: single column, linear exposure of call chains.
144 - graph: use a graph tree, displaying absolute overhead rates.
145 - fractal: like graph, but displays relative rates. Each branch of
146 the tree is considered as a new profiled object.
147
148 order can be either:
149 - callee: callee based call graph.
150 - caller: inverted caller based call graph.
151
152 Default: fractal,0.5,callee.
153
Mike Galbraith83617982009-08-04 10:24:41 +0200154INTERACTIVE PROMPTING KEYS
155--------------------------
156
157[d]::
158 Display refresh delay.
159
160[e]::
161 Number of entries to display.
162
163[E]::
164 Event to display when multiple counters are active.
165
166[f]::
167 Profile display filter (>= hit count).
168
169[F]::
170 Annotation display filter (>= % of total).
171
172[s]::
173 Annotate symbol.
174
175[S]::
176 Stop annotation, return to full profile display.
177
Mike Galbraith83617982009-08-04 10:24:41 +0200178[z]::
179 Toggle event count zeroing across display updates.
180
181[qQ]::
182 Quit.
183
184Pressing any unmapped key displays a menu, and prompts for input.
185
Ingo Molnar1d8c8b22009-04-20 15:52:29 +0200186
Ingo Molnar1d8c8b22009-04-20 15:52:29 +0200187SEE ALSO
188--------
Thomas Gleixner386b05e2009-06-06 14:56:33 +0200189linkperf:perf-stat[1], linkperf:perf-list[1]