blob: 2d89f02719b5f6ce52e502414c031a2d7610ca9a [file] [log] [blame]
Ingo Molnar0bec2532009-05-26 09:17:18 +02001perf-report(1)
Ingo Molnarc1c23652009-05-30 12:38:51 +02002==============
Ingo Molnar0bec2532009-05-26 09:17:18 +02003
4NAME
5----
Ingo Molnar23ac9cb2009-05-27 09:33:18 +02006perf-report - Read perf.data (created by perf record) and display the profile
Ingo Molnar0bec2532009-05-26 09:17:18 +02007
8SYNOPSIS
9--------
10[verse]
11'perf report' [-i <file> | --input=file]
12
13DESCRIPTION
14-----------
15This command displays the performance counter profile information recorded
Ingo Molnarb0a28582009-06-23 16:39:53 +020016via perf record.
Ingo Molnar0bec2532009-05-26 09:17:18 +020017
18OPTIONS
19-------
20-i::
21--input=::
Robert Richterefad1412011-12-07 10:02:54 +010022 Input file name. (default: perf.data unless stdin is a fifo)
Shawn Bohrere04fffc2010-11-30 19:57:17 -060023
24-v::
25--verbose::
26 Be more verbose. (show symbol address, etc)
27
Arnaldo Carvalho de Melo25903402009-06-30 19:01:20 -030028-d::
29--dsos=::
30 Only consider symbols in these dsos. CSV that understands
31 file://filename entries.
Zeev Tarantovca2b9002009-11-09 13:26:13 +020032-n::
33--show-nr-samples::
Arnaldo Carvalho de Meloe3d7e182009-07-11 12:18:37 -030034 Show the number of samples for each symbol
Shawn Bohrere04fffc2010-11-30 19:57:17 -060035
36--showcpuutilization::
37 Show sample percentage for different cpu modes.
38
Zeev Tarantovca2b9002009-11-09 13:26:13 +020039-T::
40--threads::
Brice Goglin8d513272009-08-07 13:55:24 +020041 Show per-thread event counters
David Ahernc8e66722011-11-13 11:30:08 -070042-c::
Arnaldo Carvalho de Melocc8b88b2009-06-30 19:01:21 -030043--comms=::
44 Only consider symbols in these comms. CSV that understands
45 file://filename entries.
Arnaldo Carvalho de Melo7bec7a92009-06-30 19:01:22 -030046-S::
47--symbols=::
48 Only consider these symbols. CSV that understands
49 file://filename entries.
Ingo Molnar0bec2532009-05-26 09:17:18 +020050
Namhyung Kimfde0eea2012-03-19 11:53:48 +090051--symbol-filter=::
52 Only show symbols that match (partially) with this filter.
53
Shawn Bohrere04fffc2010-11-30 19:57:17 -060054-U::
55--hide-unresolved::
56 Only display entries resolved to a symbol.
57
Arnaldo Carvalho de Meloc351c282009-12-16 13:49:27 -020058-s::
59--sort=::
60 Sort by key(s): pid, comm, dso, symbol, parent.
61
Shawn Bohrere04fffc2010-11-30 19:57:17 -060062-p::
63--parent=<regex>::
64 regex filter to identify parent, see: '--sort parent'
65
66-x::
67--exclude-other::
68 Only display entries with parent-match.
69
Arnaldo Carvalho de Melo52d422d2009-07-10 22:47:28 -030070-w::
Shawn Bohrere04fffc2010-11-30 19:57:17 -060071--column-widths=<width[,width...]>::
Arnaldo Carvalho de Melo52d422d2009-07-10 22:47:28 -030072 Force each column width to the provided list, for large terminal
73 readability.
74
75-t::
76--field-separator=::
77
78 Use a special separator character and don't pad with spaces, replacing
Shawn Bohrere04fffc2010-11-30 19:57:17 -060079 all occurrences of this separator in symbol names (and other output)
Arnaldo Carvalho de Melo52d422d2009-07-10 22:47:28 -030080 with a '.' character, that thus it's the only non valid separator.
81
Shawn Bohrere04fffc2010-11-30 19:57:17 -060082-D::
83--dump-raw-trace::
84 Dump raw trace in ASCII.
85
Namhyung Kim6581f6e2011-12-13 00:16:50 +090086-g [type,min[,limit],order]::
Frederic Weisbeckerec7ba4e2009-08-31 03:32:03 +020087--call-graph::
Namhyung Kim6581f6e2011-12-13 00:16:50 +090088 Display call chains using type, min percent threshold, optional print
89 limit and order.
Frederic Weisbeckerec7ba4e2009-08-31 03:32:03 +020090 type can be either:
Shawn Bohrere04fffc2010-11-30 19:57:17 -060091 - flat: single column, linear exposure of call chains.
Frederic Weisbeckerec7ba4e2009-08-31 03:32:03 +020092 - graph: use a graph tree, displaying absolute overhead rates.
93 - fractal: like graph, but displays relative rates. Each branch of
94 the tree is considered as a new profiled object. +
Sam Liaod797fdc2011-06-07 23:49:46 +080095
96 order can be either:
97 - callee: callee based call graph.
98 - caller: inverted caller based call graph.
99
100 Default: fractal,0.5,callee.
101
102-G::
103--inverted::
104 alias for inverted caller based call graph.
Frederic Weisbeckerec7ba4e2009-08-31 03:32:03 +0200105
Shawn Bohrere04fffc2010-11-30 19:57:17 -0600106--pretty=<key>::
107 Pretty printing style. key: normal, raw
108
Arnaldo Carvalho de Melo8b9e74e2010-08-21 10:38:16 -0300109--stdio:: Use the stdio interface.
110
111--tui:: Use the TUI interface, that is integrated with annotate and allows
112 zooming into DSOs or threads, among other features. Use of --tui
113 requires a tty, if one is not present, as when piping to other
114 commands, the stdio interface is used.
115
Pekka Enbergc31a9452012-03-19 15:13:29 -0300116--gtk:: Use the GTK2 interface.
117
Shawn Bohrere04fffc2010-11-30 19:57:17 -0600118-k::
119--vmlinux=<file>::
120 vmlinux pathname
121
David Ahernb226a5a2010-12-07 19:39:46 -0700122--kallsyms=<file>::
123 kallsyms pathname
124
Shawn Bohrere04fffc2010-11-30 19:57:17 -0600125-m::
126--modules::
127 Load module symbols. WARNING: This should only be used with -k and
128 a LIVE kernel.
129
130-f::
131--force::
132 Don't complain, do it.
133
David Ahernec5761e2010-12-09 13:27:07 -0700134--symfs=<directory>::
135 Look for files with symbols relative to this directory.
136
David Ahernc8e66722011-11-13 11:30:08 -0700137-C::
Anton Blanchard5d67be92011-07-04 21:57:50 +1000138--cpu:: Only report samples for the list of CPUs provided. Multiple CPUs can
139 be provided as a comma-separated list with no space: 0,1. Ranges of
140 CPUs are specified with -: 0-2. Default is to report samples on all
141 CPUs.
142
Andi Kleenf69b64f2011-09-15 14:31:41 -0700143-M::
144--disassembler-style=:: Set disassembler style for objdump.
145
Arnaldo Carvalho de Melo64c6f0c2011-10-06 12:48:31 -0300146--source::
147 Interleave source code with assembly code. Enabled by default,
148 disable with --no-source.
149
150--asm-raw::
151 Show raw instruction encoding of assembly instructions.
152
Arnaldo Carvalho de Melo3f2728b2011-10-05 16:10:06 -0300153--show-total-period:: Show a column with the sum of periods.
154
Stephane Eranianfbe96f22011-09-30 15:40:40 +0200155-I::
156--show-info::
157 Display extended information about the perf.data file. This adds
158 information which may be very large and thus may clutter the display.
159 It currently includes: cpu and numa topology of the host system.
160
Roberto Agostino Vitillob50311d2012-02-09 23:21:03 +0100161-b::
162--branch-stack::
163 Use the addresses of sampled taken branches instead of the instruction
164 address to build the histograms. To generate meaningful output, the
Stephane Eranian993ac882012-03-08 23:47:47 +0100165 perf.data file must have been obtained using perf record -b or
166 perf record --branch-filter xxx where xxx is a branch filter option.
167 perf report is able to auto-detect whether a perf.data file contains
168 branch stacks and it will automatically switch to the branch view mode,
169 unless --no-branch-stack is used.
Roberto Agostino Vitillob50311d2012-02-09 23:21:03 +0100170
Ingo Molnar0bec2532009-05-26 09:17:18 +0200171SEE ALSO
172--------
Arnaldo Carvalho de Melo64c6f0c2011-10-06 12:48:31 -0300173linkperf:perf-stat[1], linkperf:perf-annotate[1]