blob: ab1454ed450f9617107a9c11e5fdffb7849f6ceb [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
Arnaldo Carvalho de Melo0d37aa32012-01-19 14:08:15 -020081-u::
82--uid=::
83 Record events in threads owned by uid. Name or number.
84
Mike Galbraith83617982009-08-04 10:24:41 +020085-r <priority>::
86--realtime=<priority>::
87 Collect data with this RT SCHED_FIFO priority.
88
89-s <symbol>::
90--sym-annotate=<symbol>::
Kirill Smelkov6cff0e82010-02-03 16:52:08 -020091 Annotate this symbol.
Mike Galbraith83617982009-08-04 10:24:41 +020092
Shawn Bohrer2e7a9882010-11-30 19:57:21 -060093-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
Mike Galbraith83617982009-08-04 10:24:41 +0200105-v::
106--verbose::
107 Be more verbose (show counter open errors, etc).
108
109-z::
110--zero::
111 Zero history across display updates.
112
Arnaldo Carvalho de Meloab81f3f2011-10-05 19:16:15 -0300113-s::
114--sort::
115 Sort by key(s): pid, comm, dso, symbol, parent
116
117-n::
118--show-nr-samples::
119 Show a column with the number of samples.
120
121--show-total-period::
122 Show a column with the sum of periods.
123
124--dsos::
125 Only consider symbols in these dsos.
126
127--comms::
128 Only consider symbols in these comms.
129
130--symbols::
131 Only consider these symbols.
132
Arnaldo Carvalho de Melo64c6f0c2011-10-06 12:48:31 -0300133-M::
134--disassembler-style=:: Set disassembler style for objdump.
135
136--source::
137 Interleave source code with assembly code. Enabled by default,
138 disable with --no-source.
139
140--asm-raw::
141 Show raw instruction encoding of assembly instructions.
142
Arnaldo Carvalho de Melo19d4ac32011-10-05 19:30:22 -0300143-G [type,min,order]::
144--call-graph::
145 Display call chains using type, min percent threshold and order.
146 type can be either:
147 - flat: single column, linear exposure of call chains.
148 - graph: use a graph tree, displaying absolute overhead rates.
149 - fractal: like graph, but displays relative rates. Each branch of
150 the tree is considered as a new profiled object.
151
152 order can be either:
153 - callee: callee based call graph.
154 - caller: inverted caller based call graph.
155
156 Default: fractal,0.5,callee.
157
Mike Galbraith83617982009-08-04 10:24:41 +0200158INTERACTIVE PROMPTING KEYS
159--------------------------
160
161[d]::
162 Display refresh delay.
163
164[e]::
165 Number of entries to display.
166
167[E]::
168 Event to display when multiple counters are active.
169
170[f]::
171 Profile display filter (>= hit count).
172
173[F]::
174 Annotation display filter (>= % of total).
175
176[s]::
177 Annotate symbol.
178
179[S]::
180 Stop annotation, return to full profile display.
181
Mike Galbraith83617982009-08-04 10:24:41 +0200182[z]::
183 Toggle event count zeroing across display updates.
184
185[qQ]::
186 Quit.
187
188Pressing any unmapped key displays a menu, and prompts for input.
189
Ingo Molnar1d8c8b22009-04-20 15:52:29 +0200190
Ingo Molnar1d8c8b22009-04-20 15:52:29 +0200191SEE ALSO
192--------
Thomas Gleixner386b05e2009-06-06 14:56:33 +0200193linkperf:perf-stat[1], linkperf:perf-list[1]