1perf-record(1)
2==============
3
4NAME
5----
6perf-record - Run a command and record its profile into perf.data
7
8SYNOPSIS
9--------
10[verse]
11'perf record' [-e <EVENT> | --event=EVENT] [-l] [-a] <command>
12'perf record' [-e <EVENT> | --event=EVENT] [-l] [-a] -- <command> [<options>]
13
14DESCRIPTION
15-----------
16This command runs a command and gathers a performance counter profile
17from it, into perf.data - without displaying anything.
18
19This file can then be inspected later on, using 'perf report'.
20
21
22OPTIONS
23-------
24<command>...::
25	Any command you can specify in a shell.
26
27-e::
28--event=::
29	Select the PMU event. Selection can be:
30
31        - a symbolic event name	(use 'perf list' to list all events)
32
33        - a raw PMU event (eventsel+umask) in the form of rNNN where NNN is a
34	  hexadecimal event descriptor.
35
36        - a hardware breakpoint event in the form of '\mem:addr[:access]'
37          where addr is the address in memory you want to break in.
38          Access is the memory access type (read, write, execute) it can
39          be passed as follows: '\mem:addr[:[r][w][x]]'.
40          If you want to profile read-write accesses in 0x1000, just set
41          'mem:0x1000:rw'.
42-a::
43        System-wide collection.
44
45-l::
46        Scale counter values.
47
48-p::
49--pid=::
50	Record events on existing pid.
51
52-r::
53--realtime=::
54	Collect data with this RT SCHED_FIFO priority.
55-A::
56--append::
57	Append to the output file to do incremental profiling.
58
59-f::
60--force::
61	Overwrite existing data file. (deprecated)
62
63-c::
64--count=::
65	Event period to sample.
66
67-o::
68--output=::
69	Output file name.
70
71-i::
72--no-inherit::
73	Child tasks do not inherit counters.
74-F::
75--freq=::
76	Profile at this frequency.
77
78-m::
79--mmap-pages=::
80	Number of mmap data pages.
81
82-g::
83--call-graph::
84	Do call-graph (stack chain/backtrace) recording.
85
86-v::
87--verbose::
88	Be more verbose (show counter open errors, etc).
89
90-s::
91--stat::
92	Per thread counts.
93
94-d::
95--data::
96	Sample addresses.
97
98-n::
99--no-samples::
100	Don't sample.
101
102-R::
103--raw-samples::
104Collect raw sample records from all opened counters (default for tracepoint counters).
105
106-C::
107--cpu::
108Collect samples only on the list of cpus provided. Multiple CPUs can be provided as a
109comma-sperated list with no space: 0,1. Ranges of CPUs are specified with -: 0-2.
110In per-thread mode with inheritance mode on (default), samples are captured only when
111the thread executes on the designated CPUs. Default is to monitor all CPUs.
112
113SEE ALSO
114--------
115linkperf:perf-stat[1], linkperf:perf-list[1]
116