Re: PROBLEM: Celeron Core

From: Lennart Sorensen
Date: Sun Jan 20 2008 - 15:53:55 EST


On Sun, Jan 20, 2008 at 03:53:41PM +1030, David Newall wrote:
> Then why would it run cooler? What generates the heat when not
> throttled? What stops generating heat when throttled? And you say this
> happens without reducing power consumption? I'm not convinced. I'm a
> long way from that.

If your P4 runs along at 100% and starts getting hot it can start
throthling to only run half the clock cycles. This of course makes the
task running take twice as long to complete, but will reduce the heat
produced by the chip to perhaps 60 or 70% of what it was at 100% load at
normal speed. This lets the chip cool of a bit although the user won't
appreaciate the fact their program now runs slower, but such was life
with the P4 (at least if you didn't have a good cooling system in
place).

In cases where your system is not running at 100% load, but perhaps only
50% load you can instead save some power (and hence heat production) if
you slow the actual clock rate of the cpu and lower the voltage at the
same time, both things the throthling on the P4 did not do, since your
task only neds the chip running at 50% of normal speed in order to
complete the task in the minimum amount of time.

The throthling is about protecting the CPU from damage, not about saving
power (since it does cause the work to take longer to complete
preventing the cpu from going back to idling for a longer period of
time), while the other case is all about saving power when the system
isn't under enough load to require the full performance. Throthling had
nothing to do with an idle CPU where it should make no difference
(although it may actually affect in negatively), it was only about what
to do when under high load and getting too hot.

Sure the power consumption dropped while throthlin was active, since the
idea was to reduce heat output, but the performance dropped more than
the power consumption.

If you have a CPU that uses 100W at full load at full clock rate, and
uses 5W when idle, and uses 70W when throthled 50% under full load, then
a program using the cpu for full load for an hour without throthling and
then idles for an hour, would use less overall power than if you
throthled the system 50% and the program finishes in 2 hours. 100W for
an hour + 5W for an hour = 105Wh while 70W for two hours = 140Wh.

If you only need 50% then a modern CPU should use less than 50% of its
maximum power if you drop it's clock frequency to half and at the same
time reduce it's core voltage a bit. It may be able to run 50% load
with power management in 30W or 40W instead, which is much better than
what throthling did and it only does it when the cpu load is low enough
to not slow down the user, while throughling only applied when it would
slow down the user while under high load.

--
Len Sorensen
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/