If you’ve spent any time on this site, you know that one of the things I do regularly is to debunk Windows tips and tweaks that don’t work as promised. It’s that time again.
Lately I’ve seen an old, discredited Windows tip enjoy a sudden resurgence in popularity. The claim is that you can speed up Windows Vista (and Windows 7) boot times on a PC with a multiple-core CPU by telling the operating system to use all of the cores during startup.
If you follow the instructions, you’ll see a dialog box that appears to do what the tipsters claim. Except they’ve got its function absolutely backwards!
The setting in question is part of the System Configuration utility, Msconfig.exe. On the Boot tab, you can click the Advanced Options button and then select the Number of Processors check box to see the settings shown here (if you look in the Windows XP version of Msconfig, you’ll see a similar setting on the BOOT.INI tab, which sets the /NUMPROC switch – same thing):
Aha! If I increase that number from 1 to 4, I’ll get to use all the resources in my quad-core CPU, right?
Sorry, no. The good news is that your system is already using all of your CPU’s multiple processors as soon as it starts up. The purpose of this advanced setting is to help you disable multiple cores as part of a troubleshooting process, or to work around an installation routine that balks when it runs into multiple CPU cores. This Microsoft Knowledge Base article, for example, describes a problem you might run into when installing SQL Server 2005 on a Windows server with a multi-core processor. The solution is in the Workaround section:
To work around this problem, before you install SQL Server 2005, temporarily change the number of logical processors to one. This makes the computer appear to be a single-processor system, and SQL Server 2005 is installed successfully.
It then proceeds to walk you through the settings in the screen shot above, setting the Number of Processors value to 1.
The older XP setting is documented in KB 833721:
This switch sets the number of processors that Windows will run at startup. With this switch, you can force a multiprocessor system to use only the quantity of processors (number) that you specify. This switch can help you troubleshoot performance problems and defective CPUs.
So there you go. To use all of the CPU cores on a Windows PC, just install Windows. You don’t need to adjust any other settings.