Why do computers often spin up the CPU fan to high speed momentarily when powered on?

Because the power is turned on to the fan, before the BIOS loads any real time controllers that will base the speed of the fan on the temperature of the processor. This also keeps the processor from getting excessively hot if you were to try the alternative... which would be to keep the fan off until those controllers were loaded and basing the fan speed on processor temp. More of a safeguard than anything. The processor is starting to work the moment you turn the computer on, but the BIOS still needs time to load.

Here is another alternative. What if the BIOS didn't load for some reason... a stick of Ram gone bad, for example. Would you really want your processor sitting there with no fan, waiting for the BIOS to turn on the fan after it loaded the appropriate controllers? I know I wouldn't.


Fans are made to operate at a certain speed with a certain voltage (generally 12v). When the computer starts, all fan voltages are at their default setting of 12v, which result in 100% speed. There's no programming in this - simply the act of being powered on.

Later on, either the BIOS or a software utility is able to either reducing the DC voltage or use a pulsing PWM method in order to reduce the effective fan speed.

Now, of course, motherboard makers could have altered the circuity logic so that fans start at another voltage (50%, or even off until needed), but Bon Gart hit the nail on the head: there's a potential for disaster if the BIOS fails to boot properly while the computer remains powered.

But even if they wanted to, unlike self-contained devices the motherboard have no idea what sort of fans you may have so there's no "good guesses" to be done:

  • some fan models are relatively slow at 100%, while others need their voltage reduced to 50% for an equivalent result
  • some fans -especially the large ones- might not even start with 50% voltage, while they can actually be slowed to do 50% after the initial "push", complicating things further.

Because until a modern OS that knows to idle the CPU is booted, the CPU is running hot (I explained why at that question). If the motherboard and BIOS support fan-speed–regulation, then once the POST has completed and the BIOS starts its work, it will lower the speed if needed; otherwise, the fan remains at high speed.

If you connect your system to a power-meter like the Kill-a-Watt, you can observe this numerically as the system will draw significantly more power while in the BIOS editor or DOS, paused POST, or even the OS boot-menu. However, when a power-aware OS loads, the power usage drops (in fact, even running idle.com in DOS will drop it to the same amount). The specific difference will vary, but 30-50W is not uncommon.

Another way you can see this in action is with a virtual machine. If you pause the VM at the POST or enter the BIOS configuration tool, you will see the CPU load on the host being high (100% on a single-core processor, 50% on a dual-core/threaded, etc.) If you boot into DOS in the VM, the host’s CPU load remains high until you execute idle.com, at which point, it drops to ~0%. It also drops when you boot the guest into Windows or other modern OS.

Tags:

Boot

Fan