1perf-top(1) 2=========== 3 4NAME 5---- 6perf-top - System profiling tool. 7 8SYNOPSIS 9-------- 10[verse] 11'perf top' [-e <EVENT> | --event=EVENT] [<options>] 12 13DESCRIPTION 14----------- 15This command generates and displays a performance counter profile in real time. 16 17 18OPTIONS 19------- 20-a:: 21--all-cpus:: 22 System-wide collection. (default) 23 24-c <count>:: 25--count=<count>:: 26 Event period to sample. 27 28-C <cpu-list>:: 29--cpu=<cpu>:: 30Monitor 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. 32Default is to monitor all CPUS. 33 34-d <seconds>:: 35--delay=<seconds>:: 36 Number of seconds to delay between refreshes. 37 38-e <event>:: 39--event=<event>:: 40 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 43 hexadecimal event descriptor. 44 45-E <entries>:: 46--entries=<entries>:: 47 Display this many functions. 48 49-f <count>:: 50--count-filter=<count>:: 51 Only display functions with more events than this. 52 53--group:: 54 Put the counters into a counter group. 55 56-F <freq>:: 57--freq=<freq>:: 58 Profile at this frequency. 59 60-i:: 61--inherit:: 62 Child tasks do not inherit counters. 63 64-k <path>:: 65--vmlinux=<path>:: 66 Path to vmlinux. Required for annotation functionality. 67 68-m <pages>:: 69--mmap-pages=<pages>:: 70 Number of mmap data pages (must be a power of two) or size 71 specification with appended unit character - B/K/M/G. The 72 size is rounded up to have nearest pages power of two value. 73 74-p <pid>:: 75--pid=<pid>:: 76 Profile events on existing Process ID (comma separated list). 77 78-t <tid>:: 79--tid=<tid>:: 80 Profile events on existing thread ID (comma separated list). 81 82-u:: 83--uid=:: 84 Record events in threads owned by uid. Name or number. 85 86-r <priority>:: 87--realtime=<priority>:: 88 Collect data with this RT SCHED_FIFO priority. 89 90--sym-annotate=<symbol>:: 91 Annotate this symbol. 92 93-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 105-v:: 106--verbose:: 107 Be more verbose (show counter open errors, etc). 108 109-z:: 110--zero:: 111 Zero history across display updates. 112 113-s:: 114--sort:: 115 Sort by key(s): pid, comm, dso, symbol, parent, srcline, weight, 116 local_weight, abort, in_tx, transaction, overhead, sample, period. 117 Please see description of --sort in the perf-report man page. 118 119--fields=:: 120 Specify output field - multiple keys can be specified in CSV format. 121 Following fields are available: 122 overhead, overhead_sys, overhead_us, overhead_children, sample and period. 123 Also it can contain any sort key(s). 124 125 By default, every sort keys not specified in --field will be appended 126 automatically. 127 128-n:: 129--show-nr-samples:: 130 Show a column with the number of samples. 131 132--show-total-period:: 133 Show a column with the sum of periods. 134 135--dsos:: 136 Only consider symbols in these dsos. This option will affect the 137 percentage of the overhead column. See --percentage for more info. 138 139--comms:: 140 Only consider symbols in these comms. This option will affect the 141 percentage of the overhead column. See --percentage for more info. 142 143--symbols:: 144 Only consider these symbols. This option will affect the 145 percentage of the overhead column. See --percentage for more info. 146 147-M:: 148--disassembler-style=:: Set disassembler style for objdump. 149 150--source:: 151 Interleave source code with assembly code. Enabled by default, 152 disable with --no-source. 153 154--asm-raw:: 155 Show raw instruction encoding of assembly instructions. 156 157-g:: 158 Enables call-graph (stack chain/backtrace) recording. 159 160--call-graph:: 161 Setup and enable call-graph (stack chain/backtrace) recording, 162 implies -g. 163 164--children:: 165 Accumulate callchain of children to parent entry so that then can 166 show up in the output. The output will have a new "Children" column 167 and will be sorted on the data. It requires -g/--call-graph option 168 enabled. 169 170--max-stack:: 171 Set the stack depth limit when parsing the callchain, anything 172 beyond the specified depth will be ignored. This is a trade-off 173 between information loss and faster processing especially for 174 workloads that can have a very long callchain stack. 175 176 Default: 127 177 178--ignore-callees=<regex>:: 179 Ignore callees of the function(s) matching the given regex. 180 This has the effect of collecting the callers of each such 181 function into one place in the call-graph tree. 182 183--percent-limit:: 184 Do not show entries which have an overhead under that percent. 185 (Default: 0). 186 187--percentage:: 188 Determine how to display the overhead percentage of filtered entries. 189 Filters can be applied by --comms, --dsos and/or --symbols options and 190 Zoom operations on the TUI (thread, dso, etc). 191 192 "relative" means it's relative to filtered entries only so that the 193 sum of shown entries will be always 100%. "absolute" means it retains 194 the original value before and after the filter is applied. 195 196INTERACTIVE PROMPTING KEYS 197-------------------------- 198 199[d]:: 200 Display refresh delay. 201 202[e]:: 203 Number of entries to display. 204 205[E]:: 206 Event to display when multiple counters are active. 207 208[f]:: 209 Profile display filter (>= hit count). 210 211[F]:: 212 Annotation display filter (>= % of total). 213 214[s]:: 215 Annotate symbol. 216 217[S]:: 218 Stop annotation, return to full profile display. 219 220[z]:: 221 Toggle event count zeroing across display updates. 222 223[qQ]:: 224 Quit. 225 226Pressing any unmapped key displays a menu, and prompts for input. 227 228 229SEE ALSO 230-------- 231linkperf:perf-stat[1], linkperf:perf-list[1], linkperf:perf-report[1] 232