1 .TH CPUPOWER\-MONITOR "1" "22/02/2011" "" "cpu 2 .SH NAME 3 cpupower\-monitor \- Report processor frequenc 4 .SH SYNOPSIS 5 .ft B 6 .B cpupower monitor 7 .RB "\-l" 8 9 .B cpupower monitor 10 .RB [ -c ] [ "\-m <mon1>," [ "<mon2>,..." ] ] 11 .RB [ "\-i seconds" ] 12 .br 13 .B cpupower monitor 14 .RB [ -c ][ "\-m <mon1>," [ "<mon2>,..." ] ] 15 .RB command 16 .br 17 .SH DESCRIPTION 18 \fBcpupower-monitor \fP reports processor topo 19 state statistics. Either \fBcommand\fP is fork 20 statistics are printed upon its completion, or 21 22 \fBcpupower-monitor \fP implements independent 23 frequency counters. Some are retrieved from ke 24 directly reading out hardware registers. Use \ 25 supported on your system. 26 27 .SH Options 28 .PP 29 \-l 30 .RS 4 31 List available monitors on your system. Additi 32 are shown: 33 .RS 2 34 .IP \(bu 35 The name in quotation marks which can be passe 36 .IP \(bu 37 The number of different counters the monitor s 38 .IP \(bu 39 The amount of time in seconds the counters mig 40 implementation constraints. 41 .IP \(bu 42 The name and a description of each counter and 43 coverage in square brackets: 44 .RS 4 45 .IP \(bu 46 [T] \-> Thread 47 .IP \(bu 48 [C] \-> Core 49 .IP \(bu 50 [P] \-> Processor Package (Socket) 51 .IP \(bu 52 [M] \-> Machine/Platform wide counter 53 .RE 54 .RE 55 .RE 56 .PP 57 \-m <mon1>,<mon2>,... 58 .RS 4 59 Only display specific monitors. Use the monito 60 .RE 61 .PP 62 \-i seconds 63 .RS 4 64 Measure interval. 65 .RE 66 .PP 67 \-c 68 .RS 4 69 Schedule the process on every core before star 70 This could be needed for the Idle_Stats monito 71 monitor (has to be run on the core that is mea 72 This is to wake up the processors from deeper 73 kernel re 74 -account its cpuidle (C-state) information bef 75 cpuidle timings from sysfs. 76 .RE 77 .PP 78 command 79 .RS 4 80 Measure idle and frequency characteristics of 81 The executable \fBcommand\fP is forked and upo 82 forked are displayed. 83 .RE 84 85 .SH MONITOR DESCRIPTIONS 86 .SS "Idle_Stats" 87 Shows statistics of the cpuidle kernel subsyst 88 /sys/devices/system/cpu/cpu*/cpuidle/state*/. 89 The kernel updates these values every time an 90 left. Therefore there can be some inaccuracy w 91 state for some time when the measure starts or 92 that one core stayed in an idle state for the 93 state usage time as exported by the kernel did 94 a state residency of 0 percent is shown while 95 96 .SS "Mperf" 97 The name comes from the aperf/mperf (average a 98 which are available on recent X86 processors. 99 (including boost frequencies). 100 The fact that on all recent hardware the mperf 101 state it is also used to show C0 (processor is 102 any sleep state) times. These counters do not 103 the "Idle_Stats" counters may show. 104 May work poorly on Linux-2.6.20 through 2.6.29 105 kernel frequency driver periodically cleared a 106 kernels. 107 108 .SS "Nehalem" "SandyBridge" "HaswellExtended" 109 Intel Core and Package sleep state counters. 110 Threads (hyperthreaded cores) may not be able 111 its sibling is utilized. 112 Deepest package sleep states may in reality sh 113 sleep states and can only be entered if all co 114 manuals (some are provided in the References s 115 The monitors are named after the CPU family wh 116 got introduced and may not match exactly the C 117 For example an IvyBridge processor has sleep s 118 introduced in Nehalem and SandyBridge processo 119 Thus on an IvyBridge processor one will get Ne 120 state monitors. 121 HaswellExtended extra package sleep state capa 122 specific Haswell (family 0x45) and probably al 123 124 .SS "Fam_12h" "Fam_14h" 125 AMD laptop and desktop processor (family 12h a 126 The registers are accessed via PCI and therefo 127 cores have been offlined. 128 129 There is one special counter: NBP1 (North Brid 130 This one always returns 0 or 1, depending on w 131 power state got entered at least once during m 132 Being able to enter NBP1 state also depends on 133 Therefore this counter can be used to verify w 134 power management is working as expected. 135 136 .SH EXAMPLES 137 138 cpupower monitor -l" may show: 139 .RS 4 140 Monitor "Mperf" (3 states) \- Might overflow a 141 142 ... 143 144 Monitor "Idle_Stats" (3 states) \- Might overf 145 146 ... 147 148 .RE 149 cpupower monitor \-m "Idle_Stats,Mperf" scp /t 150 151 Monitor the scp command, show both Mperf and I 152 statistics, but in exchanged order. 153 154 155 156 .RE 157 Be careful that the typical command to fully u 158 159 cpupower monitor cat /dev/zero >/dev/null 160 161 Does not work as expected, because the measure 162 /dev/null. This could get workarounded by putt 163 shell script. Hit CTRL\-c to terminate the com 164 displayed. 165 166 .SH REFERENCES 167 "BIOS and Kernel Developer’s Guide (BKDG) fo 168 https://support.amd.com/us/Processor_TechDocs/ 169 170 "What Is Intel® Turbo Boost Technology?" 171 https://www.intel.com/content/www/us/en/gaming 172 173 "Power Management - Technology Overview" 174 https://cdrdv2.intel.com/v1/dl/getContent/6377 175 176 "Intel® 64 and IA-32 Architectures Software D 177 Volume 3B: System Programming Guide" 178 https://www.intel.com/products/processor/manua 179 180 .SH FILES 181 .ta 182 .nf 183 /dev/cpu/*/msr 184 /sys/devices/system/cpu/cpu*/cpuidle/state*/. 185 .fi 186 187 .SH "SEE ALSO" 188 powertop(8), msr(4), vmstat(8) 189 .PP 190 .SH AUTHORS 191 .nf 192 Written by Thomas Renninger <trenn@suse.de> 193 194 Nehalem, SandyBridge monitors and command pass 195 based on turbostat.8 from Len Brown <len.brown@
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.