1 For a higher level overview, try: perf report 2 Sample related events with: perf record -e '{c 3 Compare performance results with: perf diff [< 4 Boolean options have negative forms, e.g.: per 5 To not accumulate CPU time of children symbols 6 Customize output of perf script with: perf scr 7 Generate a script for your data: perf script - 8 Save output of perf stat using: perf stat reco 9 Create an archive with symtabs to analyse on o 10 Search options using a keyword: perf report -h 11 Use parent filter to see specific call path: p 12 List events using substring match: perf list < 13 To see list of saved events and attributes: pe 14 Use --symfs <dir> if your symbol files are in 15 To see callchains in a more compact form: perf 16 To see call chains by final symbol taking CPU 17 Show individual samples with: perf script 18 Limit to show entries above 5% only: perf repo 19 Profiling branch (mis)predictions with: perf r 20 To show assembler sample context control flow 21 To adjust path to source files to local file s 22 Treat branches as callchains: perf record -b . 23 Show estimate cycles per function and IPC in a 24 To count events every 1000 msec: perf stat -I 25 Print event counts in machine readable CSV for 26 If you have debuginfo enabled, try: perf repor 27 For memory address profiling, try: perf mem re 28 For tracepoint events, try: perf report -s tra 29 To record callchains for each sample: perf rec 30 If call chains don't work try perf record --ca 31 To record every process run by a user: perf re 32 To show inline functions in call traces add -- 33 To not record events from perf itself add --ex 34 Skip collecting build-id when recording: perf 35 To change sampling frequency to 100 Hz: perf r 36 To show information about system the samples w 37 To only collect call graph on one event use pe 38 To set sampling period of individual events us 39 To group events which need to be collected tog 40 To compute metrics for samples use perf record 41 See assembly instructions with percentage: per 42 If you prefer Intel style assembly, try: perf 43 When collecting LBR backtraces use --stitch-lb 44 For hierarchical output, try: perf report --hi 45 Order by the overhead of source file name and 46 System-wide collection from all CPUs: perf rec 47 Show current config key-value pairs: perf conf 48 To collect Processor Trace with samples use pe 49 To trace calls using Processor Trace use perf 50 To measure approximate function latency with P 51 To trace only single function with Processor T 52 Show user configuration overrides: perf config 53 To add Node.js USDT(User-Level Statically Defi 54 To analyze cache line scalability issues use p 55 To browse sample contexts use perf report --sa 56 To separate samples by time use perf report -- 57 To filter subset of samples with report or scr 58 To set sample time separation other than 100ms 59 Add -I to perf record to sample register value 60 To show IPC for sampling periods use perf reco 61 To show context switches in perf report sample 62 To show time in nanoseconds in record/report a 63 To compare hot regions in two workloads use pe 64 To compare scalability of two workload samples
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.