CPU cores that are not under heavy load get parked to save on power, reduce heat, etc.
Some users (not me) may get a performance benefit out of disabling this parking and keeping their cores unparked.
There is a commonly used tool to do this, but it is slow and somewhat convoluted. All this tool does is modify a few values in the registry.
The different keys it modifies are actually different control sets. As
CurrentControlSet is a pointer, it is the only one you need to modify. In fact, as the numbered control sets store the “last known good configuration” that you may see when you recover from a crash, you probably shouldn’t change them directly.
This means that all you need to do is:
Run regedit as Administrator
(type regedit in start menu, right click, Run as Administrator).
(you can just go to “HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet”, right click, find, search for
To park, set
ValueMax to 100 as decimal (or 64 as hex).
To unpark, set
ValueMax to 0.
Attributes to 0 and you will be able to change the setting easily from Power Options in the Control Panel.
Alternatively, I made a very simple tool to do it in one click. admin rights and .net 2.0 required to run, reboot is required for setting to take effect. Source code is in the archive.
See also: BitSum ParkControl.
You can also use the PowerCfg command line.