diff options
Diffstat (limited to 'tools/power/x86/turbostat/turbostat.8')
-rw-r--r-- | tools/power/x86/turbostat/turbostat.8 | 55 |
1 files changed, 44 insertions, 11 deletions
diff --git a/tools/power/x86/turbostat/turbostat.8 b/tools/power/x86/turbostat/turbostat.8 index 74e44507dfe9..e4d0690cccf9 100644 --- a/tools/power/x86/turbostat/turbostat.8 +++ b/tools/power/x86/turbostat/turbostat.8 | |||
@@ -4,15 +4,11 @@ turbostat \- Report processor frequency and idle statistics | |||
4 | .SH SYNOPSIS | 4 | .SH SYNOPSIS |
5 | .ft B | 5 | .ft B |
6 | .B turbostat | 6 | .B turbostat |
7 | .RB [ "\-s" ] | 7 | .RB [ Options ] |
8 | .RB [ "\-v" ] | ||
9 | .RB [ "\-M MSR#" ] | ||
10 | .RB command | 8 | .RB command |
11 | .br | 9 | .br |
12 | .B turbostat | 10 | .B turbostat |
13 | .RB [ "\-s" ] | 11 | .RB [ Options ] |
14 | .RB [ "\-v" ] | ||
15 | .RB [ "\-M MSR#" ] | ||
16 | .RB [ "\-i interval_sec" ] | 12 | .RB [ "\-i interval_sec" ] |
17 | .SH DESCRIPTION | 13 | .SH DESCRIPTION |
18 | \fBturbostat \fP reports processor topology, frequency | 14 | \fBturbostat \fP reports processor topology, frequency |
@@ -27,16 +23,23 @@ supports an "invariant" TSC, plus the APERF and MPERF MSRs. | |||
27 | on processors that additionally support C-state residency counters. | 23 | on processors that additionally support C-state residency counters. |
28 | 24 | ||
29 | .SS Options | 25 | .SS Options |
30 | The \fB-s\fP option limits output to a 1-line system summary for each interval. | 26 | The \fB-p\fP option limits output to the 1st thread in 1st core of each package. |
31 | .PP | 27 | .PP |
32 | The \fB-c\fP option limits output to the 1st thread in each core. | 28 | The \fB-P\fP option limits output to the 1st thread in each Package. |
33 | .PP | 29 | .PP |
34 | The \fB-p\fP option limits output to the 1st thread in each package. | 30 | The \fB-S\fP option limits output to a 1-line System Summary for each interval. |
35 | .PP | 31 | .PP |
36 | The \fB-v\fP option increases verbosity. | 32 | The \fB-v\fP option increases verbosity. |
37 | .PP | 33 | .PP |
38 | The \fB-M MSR#\fP option dumps the specified MSR, | 34 | The \fB-s\fP option prints the SMI counter, equivalent to "-c 0x34" |
39 | in addition to the usual frequency and idle statistics. | 35 | .PP |
36 | The \fB-c MSR#\fP option includes the delta of the specified 32-bit MSR counter. | ||
37 | .PP | ||
38 | The \fB-C MSR#\fP option includes the delta of the specified 64-bit MSR counter. | ||
39 | .PP | ||
40 | The \fB-m MSR#\fP option includes the the specified 32-bit MSR value. | ||
41 | .PP | ||
42 | The \fB-M MSR#\fP option includes the the specified 64-bit MSR value. | ||
40 | .PP | 43 | .PP |
41 | The \fB-i interval_sec\fP option prints statistics every \fiinterval_sec\fP seconds. | 44 | The \fB-i interval_sec\fP option prints statistics every \fiinterval_sec\fP seconds. |
42 | The default is 5 seconds. | 45 | The default is 5 seconds. |
@@ -150,6 +153,29 @@ Note that turbostat reports average GHz of 3.63, while | |||
150 | the arithmetic average of the GHz column above is lower. | 153 | the arithmetic average of the GHz column above is lower. |
151 | This is a weighted average, where the weight is %c0. ie. it is the total number of | 154 | This is a weighted average, where the weight is %c0. ie. it is the total number of |
152 | un-halted cycles elapsed per time divided by the number of CPUs. | 155 | un-halted cycles elapsed per time divided by the number of CPUs. |
156 | .SH SMI COUNTING EXAMPLE | ||
157 | On Intel Nehalem and newer processors, MSR 0x34 is a System Management Mode Interrupt (SMI) counter. | ||
158 | Using the -m option, you can display how many SMIs have fired since reset, or if there | ||
159 | are SMIs during the measurement interval, you can display the delta using the -d option. | ||
160 | .nf | ||
161 | [root@x980 ~]# turbostat -m 0x34 | ||
162 | cor CPU %c0 GHz TSC MSR 0x034 %c1 %c3 %c6 %pc3 %pc6 | ||
163 | 1.41 1.82 3.38 0x00000000 8.92 37.82 51.85 17.37 0.55 | ||
164 | 0 0 3.73 2.03 3.38 0x00000055 1.72 48.25 46.31 17.38 0.55 | ||
165 | 0 6 0.14 1.63 3.38 0x00000056 5.30 | ||
166 | 1 2 2.51 1.80 3.38 0x00000056 15.65 29.33 52.52 | ||
167 | 1 8 0.10 1.65 3.38 0x00000056 18.05 | ||
168 | 2 4 1.16 1.68 3.38 0x00000056 5.87 24.47 68.50 | ||
169 | 2 10 0.10 1.63 3.38 0x00000056 6.93 | ||
170 | 8 1 3.84 1.91 3.38 0x00000056 1.36 50.65 44.16 | ||
171 | 8 7 0.08 1.64 3.38 0x00000056 5.12 | ||
172 | 9 3 1.82 1.73 3.38 0x00000056 7.59 24.21 66.38 | ||
173 | 9 9 0.09 1.68 3.38 0x00000056 9.32 | ||
174 | 10 5 1.66 1.65 3.38 0x00000056 15.10 50.00 33.23 | ||
175 | 10 11 1.72 1.65 3.38 0x00000056 15.05 | ||
176 | ^C | ||
177 | [root@x980 ~]# | ||
178 | .fi | ||
153 | .SH NOTES | 179 | .SH NOTES |
154 | 180 | ||
155 | .B "turbostat " | 181 | .B "turbostat " |
@@ -165,6 +191,13 @@ may work poorly on Linux-2.6.20 through 2.6.29, | |||
165 | as \fBacpi-cpufreq \fPperiodically cleared the APERF and MPERF | 191 | as \fBacpi-cpufreq \fPperiodically cleared the APERF and MPERF |
166 | in those kernels. | 192 | in those kernels. |
167 | 193 | ||
194 | If the TSC column does not make sense, then | ||
195 | the other numbers will also make no sense. | ||
196 | Turbostat is lightweight, and its data collection is not atomic. | ||
197 | These issues are usually caused by an extremely short measurement | ||
198 | interval (much less than 1 second), or system activity that prevents | ||
199 | turbostat from being able to run on all CPUS to quickly collect data. | ||
200 | |||
168 | The APERF, MPERF MSRs are defined to count non-halted cycles. | 201 | The APERF, MPERF MSRs are defined to count non-halted cycles. |
169 | Although it is not guaranteed by the architecture, turbostat assumes | 202 | Although it is not guaranteed by the architecture, turbostat assumes |
170 | that they count at TSC rate, which is true on all processors tested to date. | 203 | that they count at TSC rate, which is true on all processors tested to date. |