b29bd2db6a4934d282c52bac5e9d4e829a40aed5
[linux-2.6.git] / tools / perf / Documentation / perf-record.txt
1 perf-record(1)
2 ==============
3
4 NAME
5 ----
6 perf-record - Run a command and record its profile into perf.data
7
8 SYNOPSIS
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
14 DESCRIPTION
15 -----------
16 This command runs a command and gathers a performance counter profile
17 from it, into perf.data - without displaying anything.
18
19 This file can then be inspected later on, using 'perf report'.
20
21
22 OPTIONS
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 --inherit::
73         Child tasks 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::
104 Collect raw sample records from all opened counters (typically for tracepoint counters).
105
106 SEE ALSO
107 --------
108 linkperf:perf-stat[1], linkperf:perf-list[1]