GNU Linux-libre 4.14.266-gnu1
[releases.git] / tools / perf / Documentation / perf-annotate.txt
1 perf-annotate(1)
2 ================
3
4 NAME
5 ----
6 perf-annotate - Read perf.data (created by perf record) and display annotated code
7
8 SYNOPSIS
9 --------
10 [verse]
11 'perf annotate' [-i <file> | --input=file] [symbol_name]
12
13 DESCRIPTION
14 -----------
15 This command reads the input file and displays an annotated version of the
16 code. If the object file has debug symbols then the source code will be
17 displayed alongside assembly code.
18
19 If there is no debug info in the object, then annotated assembly is displayed.
20
21 OPTIONS
22 -------
23 -i::
24 --input=::
25         Input file name. (default: perf.data unless stdin is a fifo)
26
27 -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::
36         Don't do ownership validation.
37
38 -v::
39 --verbose::
40         Be more verbose. (Show symbol address, etc)
41
42 -q::
43 --quiet::
44         Do not show any message.  (Suppress -v)
45
46 -n::
47 --show-nr-samples::
48         Show the number of samples for each symbol
49
50 -D::
51 --dump-raw-trace::
52         Dump raw trace in ASCII.
53
54 -k::
55 --vmlinux=<file>::
56         vmlinux pathname.
57
58 -m::
59 --modules::
60         Load module symbols. WARNING: use only with -k and LIVE kernel.
61
62 -l::
63 --print-line::
64         Print matching source lines (may be slow).
65
66 -P::
67 --full-paths::
68         Don't shorten the displayed pathnames.
69
70 --stdio:: Use the stdio interface.
71
72 --stdio-color::
73         'always', 'never' or 'auto', allowing configuring color output
74         via the command line, in addition to via "color.ui" .perfconfig.
75         Use '--stdio-color always' to generate color even when redirecting
76         to a pipe or file. Using just '--stdio-color' is equivalent to
77         using 'always'.
78
79 --tui:: Use the TUI interface. Use of --tui requires a tty, if one is not
80         present, as when piping to other commands, the stdio interface is
81         used. This interfaces starts by centering on the line with more
82         samples, TAB/UNTAB cycles through the lines with more samples.
83
84 --gtk:: Use the GTK interface.
85
86 -C::
87 --cpu:: Only report samples for the list of CPUs provided. Multiple CPUs can
88         be provided as a comma-separated list with no space: 0,1. Ranges of
89         CPUs are specified with -: 0-2. Default is to report samples on all
90         CPUs.
91
92 --asm-raw::
93         Show raw instruction encoding of assembly instructions.
94
95 --show-total-period:: Show a column with the sum of periods.
96
97 --source::
98         Interleave source code with assembly code. Enabled by default,
99         disable with --no-source.
100
101 --symfs=<directory>::
102         Look for files with symbols relative to this directory.
103
104 -M::
105 --disassembler-style=:: Set disassembler style for objdump.
106
107 --objdump=<path>::
108         Path to objdump binary.
109
110 --skip-missing::
111         Skip symbols that cannot be annotated.
112
113 --group::
114         Show event group information together
115
116 SEE ALSO
117 --------
118 linkperf:perf-record[1], linkperf:perf-report[1]