turbostat.8 (7483d45f0aee3afc0646d185cabd4af9f6cab58c) turbostat.8 (e23da0370f80834e971142e50253f5b79be83631)
1.TH TURBOSTAT 8
2.SH NAME
3turbostat \- Report processor frequency and idle statistics
4.SH SYNOPSIS
5.ft B
6.B turbostat
1.TH TURBOSTAT 8
2.SH NAME
3turbostat \- Report processor frequency and idle statistics
4.SH SYNOPSIS
5.ft B
6.B turbostat
7.RB [ "\-s" ]
7.RB [ "\-v" ]
8.RB [ "\-M MSR#" ]
9.RB command
10.br
11.B turbostat
8.RB [ "\-v" ]
9.RB [ "\-M MSR#" ]
10.RB command
11.br
12.B turbostat
13.RB [ "\-s" ]
12.RB [ "\-v" ]
13.RB [ "\-M MSR#" ]
14.RB [ "\-i interval_sec" ]
15.SH DESCRIPTION
16\fBturbostat \fP reports processor topology, frequency
17and idle power state statistics on modern X86 processors.
18Either \fBcommand\fP is forked and statistics are printed
19upon its completion, or statistics are printed periodically.
20
21\fBturbostat \fP
22requires that the processor
23supports an "invariant" TSC, plus the APERF and MPERF MSRs.
24\fBturbostat \fP will report idle cpu power state residency
25on processors that additionally support C-state residency counters.
26
27.SS Options
14.RB [ "\-v" ]
15.RB [ "\-M MSR#" ]
16.RB [ "\-i interval_sec" ]
17.SH DESCRIPTION
18\fBturbostat \fP reports processor topology, frequency
19and idle power state statistics on modern X86 processors.
20Either \fBcommand\fP is forked and statistics are printed
21upon its completion, or statistics are printed periodically.
22
23\fBturbostat \fP
24requires that the processor
25supports an "invariant" TSC, plus the APERF and MPERF MSRs.
26\fBturbostat \fP will report idle cpu power state residency
27on processors that additionally support C-state residency counters.
28
29.SS Options
30The \fB-s\fP option prints only a 1-line summary for each sample interval.
31.PP
28The \fB-v\fP option increases verbosity.
29.PP
30The \fB-M MSR#\fP option dumps the specified MSR,
31in addition to the usual frequency and idle statistics.
32.PP
33The \fB-i interval_sec\fP option prints statistics every \fiinterval_sec\fP seconds.
34The default is 5 seconds.
35.PP
36The \fBcommand\fP parameter forks \fBcommand\fP and upon its exit,
37displays the statistics gathered since it was forked.
38.PP
39.SH FIELD DESCRIPTIONS
40.nf
41\fBpk\fP processor package number.
32The \fB-v\fP option increases verbosity.
33.PP
34The \fB-M MSR#\fP option dumps the specified MSR,
35in addition to the usual frequency and idle statistics.
36.PP
37The \fB-i interval_sec\fP option prints statistics every \fiinterval_sec\fP seconds.
38The default is 5 seconds.
39.PP
40The \fBcommand\fP parameter forks \fBcommand\fP and upon its exit,
41displays the statistics gathered since it was forked.
42.PP
43.SH FIELD DESCRIPTIONS
44.nf
45\fBpk\fP processor package number.
42\fBcr\fP processor core number.
46\fBcor\fP processor core number.
43\fBCPU\fP Linux CPU (logical processor) number.
47\fBCPU\fP Linux CPU (logical processor) number.
48Note that multiple CPUs per core indicate support for Intel(R) Hyper-Threading Technology.
44\fB%c0\fP percent of the interval that the CPU retired instructions.
45\fBGHz\fP average clock rate while the CPU was in c0 state.
46\fBTSC\fP average GHz that the TSC ran during the entire interval.
49\fB%c0\fP percent of the interval that the CPU retired instructions.
50\fBGHz\fP average clock rate while the CPU was in c0 state.
51\fBTSC\fP average GHz that the TSC ran during the entire interval.
47\fB%c1, %c3, %c6\fP show the percentage residency in hardware core idle states.
48\fB%pc3, %pc6\fP percentage residency in hardware package idle states.
52\fB%c1, %c3, %c6, %c7\fP show the percentage residency in hardware core idle states.
53\fB%pc2, %pc3, %pc6, %pc7\fP percentage residency in hardware package idle states.
49.fi
50.PP
51.SH EXAMPLE
52Without any parameters, turbostat prints out counters ever 5 seconds.
53(override interval with "-i sec" option, or specify a command
54for turbostat to fork).
55
54.fi
55.PP
56.SH EXAMPLE
57Without any parameters, turbostat prints out counters ever 5 seconds.
58(override interval with "-i sec" option, or specify a command
59for turbostat to fork).
60
56The first row of statistics reflect the average for the entire system.
61The first row of statistics is a summary for the entire system.
62Note that the summary is a weighted average.
57Subsequent rows show per-CPU statistics.
58
59.nf
60[root@x980]# ./turbostat
63Subsequent rows show per-CPU statistics.
64
65.nf
66[root@x980]# ./turbostat
61cr CPU %c0 GHz TSC %c1 %c3 %c6 %pc3 %pc6
62 0.04 1.62 3.38 0.11 0.00 99.85 0.00 95.07
63 0 0 0.04 1.62 3.38 0.06 0.00 99.90 0.00 95.07
64 0 6 0.02 1.62 3.38 0.08 0.00 99.90 0.00 95.07
65 1 2 0.10 1.62 3.38 0.29 0.00 99.61 0.00 95.07
66 1 8 0.11 1.62 3.38 0.28 0.00 99.61 0.00 95.07
67 2 4 0.01 1.62 3.38 0.01 0.00 99.98 0.00 95.07
68 2 10 0.01 1.61 3.38 0.02 0.00 99.98 0.00 95.07
69 8 1 0.07 1.62 3.38 0.15 0.00 99.78 0.00 95.07
70 8 7 0.03 1.62 3.38 0.19 0.00 99.78 0.00 95.07
71 9 3 0.01 1.62 3.38 0.02 0.00 99.98 0.00 95.07
72 9 9 0.01 1.62 3.38 0.02 0.00 99.98 0.00 95.07
73 10 5 0.01 1.62 3.38 0.13 0.00 99.86 0.00 95.07
74 10 11 0.08 1.62 3.38 0.05 0.00 99.86 0.00 95.07
67cor CPU %c0 GHz TSC %c1 %c3 %c6 %pc3 %pc6
68 0.60 1.63 3.38 2.91 0.00 96.49 0.00 76.64
69 0 0 0.59 1.62 3.38 4.51 0.00 94.90 0.00 76.64
70 0 6 1.13 1.64 3.38 3.97 0.00 94.90 0.00 76.64
71 1 2 0.08 1.62 3.38 0.07 0.00 99.85 0.00 76.64
72 1 8 0.03 1.62 3.38 0.12 0.00 99.85 0.00 76.64
73 2 4 0.01 1.62 3.38 0.06 0.00 99.93 0.00 76.64
74 2 10 0.04 1.62 3.38 0.02 0.00 99.93 0.00 76.64
75 8 1 2.85 1.62 3.38 11.71 0.00 85.44 0.00 76.64
76 8 7 1.98 1.62 3.38 12.58 0.00 85.44 0.00 76.64
77 9 3 0.36 1.62 3.38 0.71 0.00 98.93 0.00 76.64
78 9 9 0.09 1.62 3.38 0.98 0.00 98.93 0.00 76.64
79 10 5 0.03 1.62 3.38 0.09 0.00 99.87 0.00 76.64
80 10 11 0.07 1.62 3.38 0.06 0.00 99.87 0.00 76.64
75.fi
81.fi
82.SH SUMMARY EXAMPLE
83The "-s" option prints the column headers just once,
84and then the one line system summary for each sample interval.
85
86.nf
87[root@x980]# ./turbostat -s
88 %c0 GHz TSC %c1 %c3 %c6 %pc3 %pc6
89 0.61 1.89 3.38 5.95 0.00 93.44 0.00 66.33
90 0.52 1.62 3.38 6.83 0.00 92.65 0.00 61.11
91 0.62 1.92 3.38 5.47 0.00 93.91 0.00 67.31
92.fi
76.SH VERBOSE EXAMPLE
77The "-v" option adds verbosity to the output:
78
79.nf
80GenuineIntel 11 CPUID levels; family:model:stepping 0x6:2c:2 (6:44:2)
8112 * 133 = 1600 MHz max efficiency
8225 * 133 = 3333 MHz TSC frequency
8326 * 133 = 3467 MHz max turbo 4 active cores

--- 12 unchanged lines hidden (view full) ---

96.SH FORK EXAMPLE
97If turbostat is invoked with a command, it will fork that command
98and output the statistics gathered when the command exits.
99eg. Here a cycle soaker is run on 1 CPU (see %c0) for a few seconds
100until ^C while the other CPUs are mostly idle:
101
102.nf
103[root@x980 lenb]# ./turbostat cat /dev/zero > /dev/null
93.SH VERBOSE EXAMPLE
94The "-v" option adds verbosity to the output:
95
96.nf
97GenuineIntel 11 CPUID levels; family:model:stepping 0x6:2c:2 (6:44:2)
9812 * 133 = 1600 MHz max efficiency
9925 * 133 = 3333 MHz TSC frequency
10026 * 133 = 3467 MHz max turbo 4 active cores

--- 12 unchanged lines hidden (view full) ---

113.SH FORK EXAMPLE
114If turbostat is invoked with a command, it will fork that command
115and output the statistics gathered when the command exits.
116eg. Here a cycle soaker is run on 1 CPU (see %c0) for a few seconds
117until ^C while the other CPUs are mostly idle:
118
119.nf
120[root@x980 lenb]# ./turbostat cat /dev/zero > /dev/null
121^C
122cor CPU %c0 GHz TSC %c1 %c3 %c6 %pc3 %pc6
123 8.63 3.64 3.38 14.46 0.49 76.42 0.00 0.00
124 0 0 0.34 3.36 3.38 99.66 0.00 0.00 0.00 0.00
125 0 6 99.96 3.64 3.38 0.04 0.00 0.00 0.00 0.00
126 1 2 0.14 3.50 3.38 1.75 2.04 96.07 0.00 0.00
127 1 8 0.38 3.57 3.38 1.51 2.04 96.07 0.00 0.00
128 2 4 0.01 2.65 3.38 0.06 0.00 99.93 0.00 0.00
129 2 10 0.03 2.12 3.38 0.04 0.00 99.93 0.00 0.00
130 8 1 0.91 3.59 3.38 35.27 0.92 62.90 0.00 0.00
131 8 7 1.61 3.63 3.38 34.57 0.92 62.90 0.00 0.00
132 9 3 0.04 3.38 3.38 0.20 0.00 99.76 0.00 0.00
133 9 9 0.04 3.29 3.38 0.20 0.00 99.76 0.00 0.00
134 10 5 0.03 3.08 3.38 0.12 0.00 99.85 0.00 0.00
135 10 11 0.05 3.07 3.38 0.10 0.00 99.85 0.00 0.00
1364.907015 sec
104
137
105^Ccr CPU %c0 GHz TSC %c1 %c3 %c6 %pc3 %pc6
106 8.49 3.63 3.38 16.23 0.66 74.63 0.00 0.00
107 0 0 1.22 3.62 3.38 32.18 0.00 66.60 0.00 0.00
108 0 6 0.40 3.61 3.38 33.00 0.00 66.60 0.00 0.00
109 1 2 0.11 3.14 3.38 0.19 3.95 95.75 0.00 0.00
110 1 8 0.05 2.88 3.38 0.25 3.95 95.75 0.00 0.00
111 2 4 0.00 3.13 3.38 0.02 0.00 99.98 0.00 0.00
112 2 10 0.00 3.09 3.38 0.02 0.00 99.98 0.00 0.00
113 8 1 0.04 3.50 3.38 14.43 0.00 85.54 0.00 0.00
114 8 7 0.03 2.98 3.38 14.43 0.00 85.54 0.00 0.00
115 9 3 0.00 3.16 3.38 100.00 0.00 0.00 0.00 0.00
116 9 9 99.93 3.63 3.38 0.06 0.00 0.00 0.00 0.00
117 10 5 0.01 2.82 3.38 0.08 0.00 99.91 0.00 0.00
118 10 11 0.02 3.36 3.38 0.06 0.00 99.91 0.00 0.00
1196.950866 sec
120
121.fi
138.fi
122Above the cycle soaker drives cpu9 up 3.6 Ghz turbo limit
139Above the cycle soaker drives cpu6 up 3.6 Ghz turbo limit
123while the other processors are generally in various states of idle.
124
140while the other processors are generally in various states of idle.
141
125Note that cpu3 is an HT sibling sharing core9
126with cpu9, and thus it is unable to get to an idle state
127deeper than c1 while cpu9 is busy.
142Note that cpu0 is an HT sibling sharing core0
143with cpu6, and thus it is unable to get to an idle state
144deeper than c1 while cpu6 is busy.
128
145
129Note that turbostat reports average GHz of 3.61, while
130the arithmetic average of the GHz column above is 3.24.
146Note that turbostat reports average GHz of 3.64, while
147the arithmetic average of the GHz column above is lower.
131This is a weighted average, where the weight is %c0. ie. it is the total number of
132un-halted cycles elapsed per time divided by the number of CPUs.
133.SH NOTES
134
135.B "turbostat "
136must be run as root.
137
138.B "turbostat "

--- 23 unchanged lines hidden (view full) ---

162.ta
163.nf
164/dev/cpu/*/msr
165.fi
166
167.SH "SEE ALSO"
168msr(4), vmstat(8)
169.PP
148This is a weighted average, where the weight is %c0. ie. it is the total number of
149un-halted cycles elapsed per time divided by the number of CPUs.
150.SH NOTES
151
152.B "turbostat "
153must be run as root.
154
155.B "turbostat "

--- 23 unchanged lines hidden (view full) ---

179.ta
180.nf
181/dev/cpu/*/msr
182.fi
183
184.SH "SEE ALSO"
185msr(4), vmstat(8)
186.PP
170.SH AUTHORS
187.SH AUTHOR
171.nf
172Written by Len Brown <len.brown@intel.com>
188.nf
189Written by Len Brown <len.brown@intel.com>