blob: 749cc6055dac32ab1d30879bda29343eed3d887d [file] [log] [blame]
Ingo Molnar8035e422009-06-06 15:19:13 +02001perf-annotate(1)
Arnaldo Carvalho de Melo4778e0e2010-05-05 11:23:27 -03002================
Ingo Molnar8035e422009-06-06 15:19:13 +02003
4NAME
5----
Ingo Molnar0b73da32009-06-06 15:48:52 +02006perf-annotate - Read perf.data (created by perf record) and display annotated code
Ingo Molnar8035e422009-06-06 15:19:13 +02007
8SYNOPSIS
9--------
10[verse]
Arnaldo Carvalho de Melo8b9e74e2010-08-21 10:38:16 -030011'perf annotate' [-i <file> | --input=file] [symbol_name]
Ingo Molnar8035e422009-06-06 15:19:13 +020012
13DESCRIPTION
14-----------
Ingo Molnar0b73da32009-06-06 15:48:52 +020015This command reads the input file and displays an annotated version of the
16code. If the object file has debug symbols then the source code will be
17displayed alongside assembly code.
18
19If there is no debug info in the object, then annotated assembly is displayed.
Ingo Molnar8035e422009-06-06 15:19:13 +020020
21OPTIONS
22-------
23-i::
Jaecheol Shinac2c3062018-02-07 18:52:05 +090024--input=<file>::
Robert Richterefad1412011-12-07 10:02:54 +010025 Input file name. (default: perf.data unless stdin is a fifo)
Ingo Molnar8035e422009-06-06 15:19:13 +020026
Shawn Bohrer1968ad92010-11-30 19:57:09 -060027-d::
28--dsos=<dso[,dso...]>::
29 Only consider symbols in these dsos.
30-s::
31--symbol=<symbol>::
32 Symbol to annotate.
33
34-f::
35--force::
Jiri Olsae0be62c2016-03-24 13:52:19 +010036 Don't do ownership validation.
Shawn Bohrer1968ad92010-11-30 19:57:09 -060037
38-v::
39--verbose::
40 Be more verbose. (Show symbol address, etc)
41
Namhyung Kimeddaef82017-02-17 17:17:41 +090042-q::
43--quiet::
44 Do not show any message. (Suppress -v)
45
Taeung Song1ac39372017-08-18 17:46:48 +090046-n::
47--show-nr-samples::
48 Show the number of samples for each symbol
49
Shawn Bohrer1968ad92010-11-30 19:57:09 -060050-D::
51--dump-raw-trace::
52 Dump raw trace in ASCII.
53
54-k::
55--vmlinux=<file>::
56 vmlinux pathname.
57
Arnaldo Carvalho de Melobe316402018-03-16 15:58:35 -030058--ignore-vmlinux::
59 Ignore vmlinux files.
60
Shawn Bohrer1968ad92010-11-30 19:57:09 -060061-m::
62--modules::
63 Load module symbols. WARNING: use only with -k and LIVE kernel.
64
65-l::
66--print-line::
67 Print matching source lines (may be slow).
68
69-P::
70--full-paths::
71 Don't shorten the displayed pathnames.
72
Arnaldo Carvalho de Melo8b9e74e2010-08-21 10:38:16 -030073--stdio:: Use the stdio interface.
74
Arnaldo Carvalho de Melobefd2a32018-03-15 23:44:34 -030075--stdio2:: Use the stdio2 interface, non-interactive, uses the TUI formatting.
76
Jaecheol Shinac2c3062018-02-07 18:52:05 +090077--stdio-color=<mode>::
Arnaldo Carvalho de Melo53fe4ba2016-07-05 11:08:17 -030078 'always', 'never' or 'auto', allowing configuring color output
79 via the command line, in addition to via "color.ui" .perfconfig.
80 Use '--stdio-color always' to generate color even when redirecting
81 to a pipe or file. Using just '--stdio-color' is equivalent to
82 using 'always'.
83
Namhyung Kim2b676bf2013-02-07 18:02:08 +090084--tui:: Use the TUI interface. Use of --tui requires a tty, if one is not
Arnaldo Carvalho de Melo8b9e74e2010-08-21 10:38:16 -030085 present, as when piping to other commands, the stdio interface is
86 used. This interfaces starts by centering on the line with more
Shawn Bohrer1968ad92010-11-30 19:57:09 -060087 samples, TAB/UNTAB cycles through the lines with more samples.
Arnaldo Carvalho de Melo8b9e74e2010-08-21 10:38:16 -030088
Namhyung Kim2b676bf2013-02-07 18:02:08 +090089--gtk:: Use the GTK interface.
90
David Ahernc8e66722011-11-13 11:30:08 -070091-C::
Jaecheol Shinac2c3062018-02-07 18:52:05 +090092--cpu=<cpu>:: Only report samples for the list of CPUs provided. Multiple CPUs can
Anton Blanchard5d67be92011-07-04 21:57:50 +100093 be provided as a comma-separated list with no space: 0,1. Ranges of
94 CPUs are specified with -: 0-2. Default is to report samples on all
95 CPUs.
96
Stephane Eranian3e6a2a72011-05-17 17:32:07 +020097--asm-raw::
Arnaldo Carvalho de Melo64c6f0c2011-10-06 12:48:31 -030098 Show raw instruction encoding of assembly instructions.
Stephane Eranian3e6a2a72011-05-17 17:32:07 +020099
Taeung Song01c85622017-08-18 17:46:53 +0900100--show-total-period:: Show a column with the sum of periods.
101
Stephane Eranian3e6a2a72011-05-17 17:32:07 +0200102--source::
103 Interleave source code with assembly code. Enabled by default,
104 disable with --no-source.
105
Stephane Eraniane71a0592011-07-30 01:20:40 +0200106--symfs=<directory>::
107 Look for files with symbols relative to this directory.
108
Andi Kleenf69b64f2011-09-15 14:31:41 -0700109-M::
110--disassembler-style=:: Set disassembler style for objdump.
111
Maciek Borzecki7a4ec932012-09-04 12:32:30 +0200112--objdump=<path>::
113 Path to objdump binary.
114
Namhyung Kim18c9e5c2013-02-07 18:02:14 +0900115--skip-missing::
116 Skip symbols that cannot be annotated.
117
Namhyung Kimb1dd4432013-03-05 14:53:25 +0900118--group::
119 Show event group information together
120
Ingo Molnar8035e422009-06-06 15:19:13 +0200121SEE ALSO
122--------
Arnaldo Carvalho de Melo8b9e74e2010-08-21 10:38:16 -0300123linkperf:perf-record[1], linkperf:perf-report[1]