blob: b6da7affbbeeb82533387e9ba3f7c788d3e28dec [file] [log] [blame]
Ingo Molnar1d8c8b22009-04-20 15:52:29 +02001perf-stat(1)
Ingo Molnar6e6b7542008-04-15 22:39:31 +02002============
Ingo Molnar1d8c8b22009-04-20 15:52:29 +02003
4NAME
5----
6perf-stat - Run a command and gather performance counter statistics
7
8SYNOPSIS
9--------
10[verse]
Shawn Bohrer8c207692010-11-30 19:57:19 -060011'perf stat' [-e <EVENT> | --event=EVENT] [-a] <command>
12'perf stat' [-e <EVENT> | --event=EVENT] [-a] -- <command> [<options>]
Ingo Molnar1d8c8b22009-04-20 15:52:29 +020013
14DESCRIPTION
15-----------
16This command runs a command and gathers performance counter statistics
17from it.
18
19
20OPTIONS
21-------
22<command>...::
23 Any command you can specify in a shell.
24
Ingo Molnar20c84e92009-06-04 16:33:00 +020025
Ingo Molnar1d8c8b22009-04-20 15:52:29 +020026-e::
27--event=::
Thomas Gleixner386b05e2009-06-06 14:56:33 +020028 Select the PMU event. Selection can be a symbolic event name
29 (use 'perf list' to list all events) or a raw PMU
30 event (eventsel+umask) in the form of rNNN where NNN is a
31 hexadecimal event descriptor.
Ingo Molnar1d8c8b22009-04-20 15:52:29 +020032
Ingo Molnar20c84e92009-06-04 16:33:00 +020033-i::
Stephane Eranian2e6cdf92010-05-12 10:40:01 +020034--no-inherit::
35 child tasks do not inherit counters
Ingo Molnar20c84e92009-06-04 16:33:00 +020036-p::
37--pid=<pid>::
Shawn Bohrer8c207692010-11-30 19:57:19 -060038 stat events on existing process id
39
40-t::
41--tid=<tid>::
42 stat events on existing thread id
43
Ingo Molnar20c84e92009-06-04 16:33:00 +020044
Ingo Molnar1d8c8b22009-04-20 15:52:29 +020045-a::
Shawn Bohrer8c207692010-11-30 19:57:19 -060046--all-cpus::
47 system-wide collection from all CPUs
Ingo Molnar1d8c8b22009-04-20 15:52:29 +020048
Brice Goglinb26bc5a2009-08-07 10:18:39 +020049-c::
Shawn Bohrer8c207692010-11-30 19:57:19 -060050--scale::
51 scale/normalize counter values
52
53-r::
54--repeat=<n>::
55 repeat command and print average + stddev (max: 100)
Ingo Molnar1d8c8b22009-04-20 15:52:29 +020056
Stephane Eranian5af52b52010-05-18 15:00:01 +020057-B::
Shawn Bohrer8c207692010-11-30 19:57:19 -060058--big-num::
Stephane Eranian5af52b52010-05-18 15:00:01 +020059 print large numbers with thousands' separators according to locale
60
Stephane Eranianc45c6ea2010-05-28 12:00:01 +020061-C::
62--cpu=::
Shawn Bohrer8c207692010-11-30 19:57:19 -060063Count only on the list of CPUs provided. Multiple CPUs can be provided as a
64comma-separated list with no space: 0,1. Ranges of CPUs are specified with -: 0-2.
Stephane Eranianc45c6ea2010-05-28 12:00:01 +020065In per-thread mode, this option is ignored. The -a option is still necessary
66to activate system-wide monitoring. Default is to count on all CPUs.
67
Stephane Eranianf5b4a9c32010-11-16 11:05:01 +020068-A::
69--no-aggr::
70Do not aggregate counts across all monitored CPUs in system-wide mode (-a).
71This option is only valid in system-wide mode.
72
Shawn Bohrer8c207692010-11-30 19:57:19 -060073-n::
74--null::
75 null run - don't start any counters
76
77-v::
78--verbose::
79 be more verbose (show counter open errors, etc)
80
Stephane Eraniand7470b62010-12-01 18:49:05 +020081-x SEP::
82--field-separator SEP::
83print counts using a CSV-style output to make it easy to import directly into
84spreadsheets. Columns are separated by the string specified in SEP.
85
Ingo Molnar1d8c8b22009-04-20 15:52:29 +020086EXAMPLES
87--------
88
Ingo Molnar20c84e92009-06-04 16:33:00 +020089$ perf stat -- make -j
Ingo Molnar1d8c8b22009-04-20 15:52:29 +020090
Ingo Molnar20c84e92009-06-04 16:33:00 +020091 Performance counter stats for 'make -j':
Ingo Molnar1d8c8b22009-04-20 15:52:29 +020092
Ingo Molnar20c84e92009-06-04 16:33:00 +020093 8117.370256 task clock ticks # 11.281 CPU utilization factor
94 678 context switches # 0.000 M/sec
95 133 CPU migrations # 0.000 M/sec
96 235724 pagefaults # 0.029 M/sec
97 24821162526 CPU cycles # 3057.784 M/sec
98 18687303457 instructions # 2302.138 M/sec
99 172158895 cache references # 21.209 M/sec
100 27075259 cache misses # 3.335 M/sec
Ingo Molnar1d8c8b22009-04-20 15:52:29 +0200101
Ingo Molnar20c84e92009-06-04 16:33:00 +0200102 Wall-clock time elapsed: 719.554352 msecs
Ingo Molnar1d8c8b22009-04-20 15:52:29 +0200103
104SEE ALSO
105--------
Thomas Gleixner386b05e2009-06-06 14:56:33 +0200106linkperf:perf-top[1], linkperf:perf-list[1]