Disable CPU Scaling in Windows Server 2008 R2
Solution 1:
There are 3 Main BIOS settings in the Dell R710 that control this under Power Management:
OS Control sets the CPU power to OS DBPM, the fan power to Minimum Power, and the memory power to Maximum Performance. In this setting, all processor performance information is passed from the system BIOS to the operating system for control. The operating system sets the processor performance based on processor utilization.
Active Power Controller sets the CPU power to System DBPM, the fan power to Minimum Power, and the memory power to Maximum Performance. The BIOS sets the processor performance based on processor utilization.
Maximum Performance sets all fields to Maximum Performance.
Source: http://support.dell.com/support/systemsinfo/document.aspx?c=us&cs=555&l=en&s=biz&~file=/systems/pet410/en/hom/html/syssetup.htm
We had it set to "System DBPM" so it was ignoring the OS settings.
It is worth noting that this was digging into why some of our full text SQL queries were taking so long. After this change we observed that these queries dropped from an average of 1285 ms to 335 ms.
Solution 2:
For posterity, here are the settings needed for HP servers (as of the DL360G6 I just checked)
The main one:
- Power Management Options
- HP Power Regulator
- HP Dynamic Power Savings Mode Vary CPU frequency and power setting based on load. Ignores OS settings. Default
- HP Static Low Performance Mode Tunes CPU frequency and power settings to their lowest levels.
- HP Static High Performance Mode Locks CPU frequency and power settings to their highest levels. For performance.
- OS Control Let the OS handle it.
- HP Power Regulator
The other one:
- Power Management Options
- Minimum Processor Idle Power State
- C6 Deep Power Down
- C3 Sleep mode
- C1E Enhanced Low Power Mode
- No C-States Disable all such states.
- Minimum Processor Idle Power State