Forgive me, readers, but I have to make a brief technical digression: for some time now I’ve been grappling with a common but perplexing computer problem, one that appears to have vexed and confounded an awful lot of people. I’ve just found the solution, and I must share it here so that others Googling the same problem might find it.
The problem: I’m using an HP Pavilion laptop running Windows 7 on a quad-core Intel processor. It’s a robust machine, with 6 GB of RAM and a capacious hard drive. Nevertheless, for some time now the machine has been running more and more sluggishly, and often it’s been so bad that video playback stutters and freezes, and there’s a significant lag between typing characters and seeing them appear on the screen.
The proximate cause was clear enough: my CPU was running at or near 100% most of the time. What I couldn’t figure out was why.
Windows provides a variety of tools for looking into this sort of thing. One of them is called the “Task Manager”, and it tells you what processes and services are running, and how much CPU they’re using. I was never able to find anything out of the ordinary, though.
I tried shutting down various Windows services that people had identified online as resource hogs, such as the “Windows Media Player Network Sharing Service”. At first I thought this one had helped, but after a minute or two my CPU was pegged again.
This machine has a little touch-strip above the keyboard with controls for volume, video playback, and a few other things. These hadn’t been working for a while, so I even went so far as to dismantle the machine and clean and re-seat all the little ribbon connectors attached to this component. I got the touch panel working again, but it still didn’t help the problem (not that I really expected it to).
I did a full system scan with my antivirus software. I deleted 40 gigabytes of junk from the hard drive, and defragmented it. I even re-flashed my BIOS with a later version. Nothing.
Then I ran across a little video on YouTube, by a fellow named Danish Amjad Alvi. In the posting he promised:
It can fix the 100 % CPU Usage I swear it will 100 % work.
The problem turned out to be the System Cooling Policy, under my Processor Power Management settings (Control Panel\All Control Panel Items\Power Options\Edit Plan Settings, then click “Change advanced power settings”).
Here’s the story: when a CPU is running at full speed (that means, for example, that if it’s a 2GHz processor the clock rate is actually running at 2 billion instruction cycles per second), it’s drawing maximum power, and gets hot. You don’t always need to go so fast, though, and so the system can drop the clock frequency to conserve power if needed. This means that for any given number of instructions per second, the CPU usage-percentage runs higher.
It seems that my system was doing a really crappy job of modulating the CPU frequency. It turned out that my System Cooling Policy was set to “Passive”, which will apparently slow the processor before increasing the fan speed. Setting it to “Active” does the opposite. It was slowing the processor too much, and so the CPU was running at close to 100% all the time.
I made the change, and bingo! CPU usage immediately dropped to 1%, and now the machine runs like a Lamborghini.
So: I hope you’ll forgive me, readers, but for tonight’s post I’m just sharing this with the world. If it saves anyone the irritation I’ve just gone through, I’ll be very happy indeed. And to Danish Amjad Alvi: thank you, thank you.