blob: 4b3a2d46b4378607f5195d12328646f5b1d7a638 [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]
Jaswinder Singh Rajputdee41202009-06-23 02:22:39 +053011'perf stat' [-e <EVENT> | --event=EVENT] [-S] [-a] <command>
12'perf stat' [-e <EVENT> | --event=EVENT] [-S] [-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>::
38 stat events on existing pid
39
Ingo Molnar1d8c8b22009-04-20 15:52:29 +020040-a::
41 system-wide collection
42
Brice Goglinb26bc5a2009-08-07 10:18:39 +020043-c::
Ingo Molnar1d8c8b22009-04-20 15:52:29 +020044 scale counter values
45
Stephane Eranian5af52b52010-05-18 15:00:01 +020046-B::
47 print large numbers with thousands' separators according to locale
48
Stephane Eranianc45c6ea2010-05-28 12:00:01 +020049-C::
50--cpu=::
51Count only on the list of cpus provided. Multiple CPUs can be provided as a
52comma-sperated list with no space: 0,1. Ranges of CPUs are specified with -: 0-2.
53In per-thread mode, this option is ignored. The -a option is still necessary
54to activate system-wide monitoring. Default is to count on all CPUs.
55
Ingo Molnar1d8c8b22009-04-20 15:52:29 +020056EXAMPLES
57--------
58
Ingo Molnar20c84e92009-06-04 16:33:00 +020059$ perf stat -- make -j
Ingo Molnar1d8c8b22009-04-20 15:52:29 +020060
Ingo Molnar20c84e92009-06-04 16:33:00 +020061 Performance counter stats for 'make -j':
Ingo Molnar1d8c8b22009-04-20 15:52:29 +020062
Ingo Molnar20c84e92009-06-04 16:33:00 +020063 8117.370256 task clock ticks # 11.281 CPU utilization factor
64 678 context switches # 0.000 M/sec
65 133 CPU migrations # 0.000 M/sec
66 235724 pagefaults # 0.029 M/sec
67 24821162526 CPU cycles # 3057.784 M/sec
68 18687303457 instructions # 2302.138 M/sec
69 172158895 cache references # 21.209 M/sec
70 27075259 cache misses # 3.335 M/sec
Ingo Molnar1d8c8b22009-04-20 15:52:29 +020071
Ingo Molnar20c84e92009-06-04 16:33:00 +020072 Wall-clock time elapsed: 719.554352 msecs
Ingo Molnar1d8c8b22009-04-20 15:52:29 +020073
74SEE ALSO
75--------
Thomas Gleixner386b05e2009-06-06 14:56:33 +020076linkperf:perf-top[1], linkperf:perf-list[1]