Why do CPUs run hotter...?

Jun 18, 2006 51 Replies

Why does a Pentium CPU run hotter when "working hard" (executing complex software) than when the OS is idling?



It is always executing *some* instruction, and in that sense, is never idle.



I understand that CMOS gates dissipate power only when changing state. I



*presume* what's going on is that when the CPU is executing software, it is executing a greater variety of machine instructions and therefore heating up a larger proportion of the circuitry in the chip (since there is special circuitry for each kind of instruction).

Am I on the right track? This is one of those dumb questions where I'd like to know the exact answer, rather than just guessing.


1) Yes you are on the right track as idling will only involve regurgitaing a few instructions in the cache and will require less use of CPU cct's. 2) The OS can throttle back the CPU when it is lightly loaded (mostly used on portables)

With a mentality like that, you should consider applying for the job of NASA Adminstrator. You might increase the life expectancty of Space Shuttle astronauts.

-Le Chaud Lapin-

Most sensible CPUs have a "WAIT" instruction that idles most resources until an interrupt ocurrs. Pentiums are not sensible CPUs, but they have something like that, too. If you run a DOS app on a Pentium, that usually keeps it on hard, since most DOS apps loop all the time.

Windows will show you per-cent CPU utilization, and it's probably running a low-power wait instruction during most of the idle time.

Yup, just tried it: Win XP averages about 2% CPU load until I start an old DOS program, at which time it jumps to about 85%.

John

like

It will be better thinking of Work - Energie - Hot. An electron crossing at a speed related with 3 or 4 GHz will produce lots of hot. Great work more hotter

If you have the possibility compare the heating of CPU under different OS's, running comparable activities, I noticed it years ago when started using Linux which IS a Unix clone and as such multiuser/multitasking system. As it has to accomodate "users" by switching between various applications it uses the "halt" command inherent in CPU's which IS not used by MS-Glassware systems although the NT series supposedly are Unix based. So there IS a diff in heating of the system just depended how it is managed.

Have fun.

Stanislaw Slack user from Ulladulla.

Ah, the cache! Of course! That means the memory access and bus interface go almost totally unused.

That is precisely *not* the answer to my question.

I know why CPUs emit heat.

My question is: why does the CPU emit more heat when running complex software than when running the operating system's idle loop? The point is, when *we* feel that it isn't doing anything, it's *still* executing instructions (and if it's not a battery-powered model, it's running at full speed).

Apparently the answer has to do with less of the CPU's circuitry being in use. Not at all the "difficulty" of the "work" being done -- that is anthromorphism. It's not enough that we "feel" that the CPU is "working harder" at one time than another.

Can anyone confirm that Windows' idle loop uses WAIT ops? If so, then the CPU really is idle for milliseconds at a time when it's running the idle loop. Thanks for this interesting clue.

Windows is multiuser too. Are you sure Windows does not use HALT in its idle loop?

Windows is not exactly UNIX based, although it is certainly in the same broad class.

The WAIT is not an instruction, it is a clock cycle (or two) added to the memory access to make slower memory work with faster processors.

Interrupt operations do not use any more cpu resources than background operations.

Processors use the same amount of power doing 'nothing' as they do when busy, kind of like some people I've known.

Luhan

Check your info. When in the '80s the "New Technology" (NT) was announced for some strange reason it was castrated of the main security Unix-like design where the admin and users have separate classes of permissions to protect the system in broad sense of multiuser activity. Since then the tangent increased and the similarity is sci-fi. What I know for fact is, on booting Linux kernel checks the response of the CPU to "halt" command and writes this info in log. file. Check this condition in NT as I am NOT using this kind. Let me know.

Have fun

Stanislaw Slack user from Ulladulla.

[snip]

Bite your tongue!

Interesting observation: My sister and I have exactly the same Dell laptops. Hers runs Windows XP, mine runs Linux. I can get about 4 hours on a battery charge. She panics and looks for an outlet after about an hour.

Just to test my observation, we fired them up on full batteries, side by side. After a few minutes had passed, and before either of us had done any significant work, her CPU fan kicked on. My fan only starts when I'm recompiling the kernel, of indexing a couple of million record database.

Paul Hovnanian mailto:Paul@Hovnanian.com ------------------------------------------------------------------ Hanlon\'s Razor: Never attribute to malice that which is adequately explained by stupidity.

That's what computer theory suggests, but it's false, as demonstrated by CPU temperature measurements. Hence my original question.

I'm not sure what you're talking about. There is an elaborate object-oriented system of permissions and administrators are certainly different from ordinary users.

I thought that since you were making assertions about it, you might have some source of information.

Not to overlook the obvious, swap batteries with her and see if you still get that result.

Now if someone would tell us who Hanlon is...

Nonsense. If nothing is happening reasonably current processors do ... *NOTHING*. The clock tree accounts for something on the order of 40% of the power and leakage as much of the rest. If the processor is doing nothing, shut off the clocks and lower the voltage.

It's called *HALT*, and has been done for at least a decade.

Keith

It does. Since Win98, anyway. Win95 was iffy.

running the idle

Certainly.

Keith

Join the Discussion

Have something to add? Share your thoughts — no account required.

Didn't find your answer?

Ask the community — no account required