Re: PROBLEM: Celeron Core

2008-01-21 Thread Robert Hancock

Tomasz Chmielewski wrote:
Clock throttling is not likely to save your battery, unless you have 
tasks that are running at 100% CPU for an unlimited time or 
something, and you force your CPU to throttle. Normally most people 
have tasks that run and then the CPU idles - loading an email, 
displaying a web page, etc. Clock throttling will just make these 
tasks utilize the CPU for a longer time proportional to the amount 
clock throttling and therefore negate any gains in battery usage.


Aren't you forgetting about CPUfreq governors? Which mean: use the 
maximum CPU frequency when the system is busy, throttle down (or lower 
voltage) when the system is idle.


So yes, throttling will save the battery.


We are talking about throttling (i.e. P4 clockmod) not CPU frequency 
scaling. Clock modulation does not reduce the clock speed, it just 
basically forces the CPU to halt on a certain duty cycle. If the CPU is 
already idle this has no effect and won't save any power.


--
Robert Hancock  Saskatoon, SK, Canada
To email, remove "nospam" from [EMAIL PROTECTED]
Home Page: http://www.roberthancock.com/

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


Re: PROBLEM: Celeron Core

2008-01-21 Thread Matthew Garrett
On Sun, Jan 20, 2008 at 11:06:02PM +0100, Tomasz Chmielewski wrote:

> Aren't you forgetting about CPUfreq governors? Which mean: use the 
> maximum CPU frequency when the system is busy, throttle down (or lower 
> voltage) when the system is idle.
> 
> So yes, throttling will save the battery.
> 
> Besides, not all CPUs support power management (voltage control).

Voltage scaling isn't the only component of CPU power management. Intels 
have supported low power states on idle since the Pentium 90 (Cyrix had 
"Suspend on HALT" earlier than that), which means that an idle processor 
takes less power than one executing code. On anything even vaguely 
modern, throttling will not save you any significant power compared to 
the C state support.

> For example, a server that doesn't crunch any numbers at night will 
> certainly use less power when throttled.

Have you got benchmark figures for this?
-- 
Matthew Garrett | [EMAIL PROTECTED]
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: PROBLEM: Celeron Core

2008-01-21 Thread Matthew Garrett
On Sun, Jan 20, 2008 at 11:06:02PM +0100, Tomasz Chmielewski wrote:

 Aren't you forgetting about CPUfreq governors? Which mean: use the 
 maximum CPU frequency when the system is busy, throttle down (or lower 
 voltage) when the system is idle.
 
 So yes, throttling will save the battery.
 
 Besides, not all CPUs support power management (voltage control).

Voltage scaling isn't the only component of CPU power management. Intels 
have supported low power states on idle since the Pentium 90 (Cyrix had 
Suspend on HALT earlier than that), which means that an idle processor 
takes less power than one executing code. On anything even vaguely 
modern, throttling will not save you any significant power compared to 
the C state support.

 For example, a server that doesn't crunch any numbers at night will 
 certainly use less power when throttled.

Have you got benchmark figures for this?
-- 
Matthew Garrett | [EMAIL PROTECTED]
--
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: PROBLEM: Celeron Core

2008-01-21 Thread Robert Hancock

Tomasz Chmielewski wrote:
Clock throttling is not likely to save your battery, unless you have 
tasks that are running at 100% CPU for an unlimited time or 
something, and you force your CPU to throttle. Normally most people 
have tasks that run and then the CPU idles - loading an email, 
displaying a web page, etc. Clock throttling will just make these 
tasks utilize the CPU for a longer time proportional to the amount 
clock throttling and therefore negate any gains in battery usage.


Aren't you forgetting about CPUfreq governors? Which mean: use the 
maximum CPU frequency when the system is busy, throttle down (or lower 
voltage) when the system is idle.


So yes, throttling will save the battery.


We are talking about throttling (i.e. P4 clockmod) not CPU frequency 
scaling. Clock modulation does not reduce the clock speed, it just 
basically forces the CPU to halt on a certain duty cycle. If the CPU is 
already idle this has no effect and won't save any power.


--
Robert Hancock  Saskatoon, SK, Canada
To email, remove nospam from [EMAIL PROTECTED]
Home Page: http://www.roberthancock.com/

--
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: PROBLEM: Celeron Core

2008-01-20 Thread Daniel Barkalow
On Sun, 20 Jan 2008, Matt Mackall wrote:

> Your usage of "overall power" here is wrong. Power is an instantaneous
> quantity (1/s) like velocity, and you are comparing it to energy which
> is not an instaneous quantity, more like distance.
> 
> If we throttle the velocity of a car from 100km/h to 50km/h, it'll
> obviously take longer for it travel a given distance. Now what will it
> mean when we ask about its "overall velocity" when it reaches its
> destination? We surely don't mean the distance travelled - that's not a
> velocity! We can perhaps talk about its average velocity, which will
> obviously be smaller.

What's people tend to care about is average power usage over a period, not 
instantaneous power usage. In fact, throttling obviously doesn't decrease 
instantaneous power usage while the machine is doing anything (since it 
runs full speed and full power when running, and does nothing and uses 
some but not as much power when halted). Throttling decreases the average 
power usage over the period of the throttling, but increases the average 
power usage in general over longer periods.

If we throttle a car's velocity by only driving 100km/h for 5 minutes out 
of every 10 instead of all of the time, it doesn't meaningfully have less 
velocity. And it's a particularly meaningless measure if the arrangement 
as a whole is that it will leave point A at some time, drive to point B, 
and sit there until some other time; in this case its average velocity is 
the distance from point A to point B divided by the duration between the 
two times, regardless of how you drive. But the distance travelled is 
longer if you have to pull over and park every 10 minutes, and so the 
average velocity must be higher for the TDMA throttling case.

-Daniel
*This .sig left intentionally blank*
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: PROBLEM: Celeron Core

2008-01-20 Thread Rafael J. Wysocki
On Sunday, 20 of January 2008, Tomasz Chmielewski wrote:
> >> Clock throttling is not likely to save your battery, unless you have 
> >> tasks that are running at 100% CPU for an unlimited time or something, 
> >> and you force your CPU to throttle. Normally most people have tasks that 
> >> run and then the CPU idles - loading an email, displaying a web page, 
> >> etc. Clock throttling will just make these tasks utilize the CPU for a 
> >> longer time proportional to the amount clock throttling and therefore 
> >> negate any gains in battery usage.
> 
> Aren't you forgetting about CPUfreq governors? Which mean: use the 
> maximum CPU frequency when the system is busy, throttle down (or lower 
> voltage) when the system is idle.
> 
> So yes, throttling will save the battery.

In the relevant documentation "throttling" usually means "the reduction of the
frequency of a CPU that is not idle" in which case it won't (at least on the
average).
 
> Besides, not all CPUs support power management (voltage control).
> 
> 
> > IMO clock throttling (as opposed to the reduction of the frequency of an 
> > idle
> > CPU) is only useful for preventing the CPU from overheating.
> 
> And for reducing power on CPUs that can't do any power management, just 
> throttling.
> 
> For example, a server that doesn't crunch any numbers at night will 
> certainly use less power when throttled.

You can't use less power, you only can use less energy. :-)

Anyway, that's "the reduction of the frequency of an idle CPU" mentioned above
and it makes sense in the majority of cases.

Greetings,
Rafael
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: PROBLEM: Celeron Core

2008-01-20 Thread Tomasz Chmielewski
Clock throttling is not likely to save your battery, unless you have 
tasks that are running at 100% CPU for an unlimited time or something, 
and you force your CPU to throttle. Normally most people have tasks that 
run and then the CPU idles - loading an email, displaying a web page, 
etc. Clock throttling will just make these tasks utilize the CPU for a 
longer time proportional to the amount clock throttling and therefore 
negate any gains in battery usage.


Aren't you forgetting about CPUfreq governors? Which mean: use the 
maximum CPU frequency when the system is busy, throttle down (or lower 
voltage) when the system is idle.


So yes, throttling will save the battery.

Besides, not all CPUs support power management (voltage control).



IMO clock throttling (as opposed to the reduction of the frequency of an idle
CPU) is only useful for preventing the CPU from overheating.


And for reducing power on CPUs that can't do any power management, just 
throttling.


For example, a server that doesn't crunch any numbers at night will 
certainly use less power when throttled.



--
Tomasz Chmielewski
http://wpkg.org


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


Re: PROBLEM: Celeron Core

2008-01-20 Thread Rafael J. Wysocki
On Sunday, 20 of January 2008, Robert Hancock wrote:
> Matt Mackall wrote:
> > Your usage of "overall power" here is wrong. Power is an instantaneous
> > quantity (1/s) like velocity, and you are comparing it to energy which
> > is not an instaneous quantity, more like distance.
> > 
> > If we throttle the velocity of a car from 100km/h to 50km/h, it'll
> > obviously take longer for it travel a given distance. Now what will it
> > mean when we ask about its "overall velocity" when it reaches its
> > destination? We surely don't mean the distance travelled - that's not a
> > velocity! We can perhaps talk about its average velocity, which will
> > obviously be smaller.
> 
> You are right.. it should be that overall energy usage is higher with 
> clock throttling.

Well, I'm still thinking you mean "the average energy usage per unit of
computations".  IOW, "one will use more energy to carry out the same
computations with throttling than without it".

> >> Real CPU clock throttling schemes like SpeedStep, PowerNow, etc. 
> >> actually do increase performance per watt when they kick in.
> > 
> > That may be true. But the statement "throttling does not reduce power
> > usage" remains false. And the statement "throttling reduces heat
> > production but not power usage" remains physically impossible.
> 
> It reduces the rate of power usage (watts), however it will likely not 
> decreate or even increase the energy usage (i.e. watt-hours) of any 
> given computational task.

In this context "power" means "energy used over a unit of time", so by
decreasing power you cause less energy to be used over a unit of time, by
definition.  Still, the total energy required to complete given computational
task is (on the average) equal to "power" * "total time of computations" and
this really has to be measured on a per task basis.
 
> > It might be true that "throttling increases energy usage per unit of
> > computation relative to no power saving measures at all", but that is
> > not incompatible with "throttling lets you run your laptop on battery
> > longer than no power saving measures at all", which is often what people
> > care about.
> > 
> > Voltage/frequency reduction is obviously a much better solution if it's
> > available as reducing voltage reduces power usage quadratically rather
> > than linearly. But beyond the quadratic/linear thing, the concept is the
> > same: use less power and your battery lasts longer.
> 
> Clock throttling is not likely to save your battery, unless you have 
> tasks that are running at 100% CPU for an unlimited time or something, 
> and you force your CPU to throttle. Normally most people have tasks that 
> run and then the CPU idles - loading an email, displaying a web page, 
> etc. Clock throttling will just make these tasks utilize the CPU for a 
> longer time proportional to the amount clock throttling and therefore 
> negate any gains in battery usage.

IMO clock throttling (as opposed to the reduction of the frequency of an idle
CPU) is only useful for preventing the CPU from overheating.

Greetings,
Rafael
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: PROBLEM: Celeron Core

2008-01-20 Thread Lennart Sorensen
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 [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: PROBLEM: Celeron Core

2008-01-20 Thread Robert Hancock

Matt Mackall wrote:

Your usage of "overall power" here is wrong. Power is an instantaneous
quantity (1/s) like velocity, and you are comparing it to energy which
is not an instaneous quantity, more like distance.

If we throttle the velocity of a car from 100km/h to 50km/h, it'll
obviously take longer for it travel a given distance. Now what will it
mean when we ask about its "overall velocity" when it reaches its
destination? We surely don't mean the distance travelled - that's not a
velocity! We can perhaps talk about its average velocity, which will
obviously be smaller.


You are right.. it should be that overall energy usage is higher with 
clock throttling.




Real CPU clock throttling schemes like SpeedStep, PowerNow, etc. 
actually do increase performance per watt when they kick in.


That may be true. But the statement "throttling does not reduce power
usage" remains false. And the statement "throttling reduces heat
production but not power usage" remains physically impossible.


It reduces the rate of power usage (watts), however it will likely not 
decreate or even increase the energy usage (i.e. watt-hours) of any 
given computational task.




It might be true that "throttling increases energy usage per unit of
computation relative to no power saving measures at all", but that is
not incompatible with "throttling lets you run your laptop on battery
longer than no power saving measures at all", which is often what people
care about.

Voltage/frequency reduction is obviously a much better solution if it's
available as reducing voltage reduces power usage quadratically rather
than linearly. But beyond the quadratic/linear thing, the concept is the
same: use less power and your battery lasts longer.


Clock throttling is not likely to save your battery, unless you have 
tasks that are running at 100% CPU for an unlimited time or something, 
and you force your CPU to throttle. Normally most people have tasks that 
run and then the CPU idles - loading an email, displaying a web page, 
etc. Clock throttling will just make these tasks utilize the CPU for a 
longer time proportional to the amount clock throttling and therefore 
negate any gains in battery usage.

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


Re: PROBLEM: Celeron Core

2008-01-20 Thread Matt Mackall

On Sun, 2008-01-20 at 12:24 -0600, Robert Hancock wrote:
> David Newall wrote:
> > Andi Kleen wrote:
> >>> Isn't it the case that an idle machine will use
> >>> less power when throttled than when not?
> >>> 
> >> No that is not the case (not even on old CPUs) 
> >>   
> > 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.
> 
> I believe that all throttling does is forcibly halt the CPU on a 
> particular duty cycle. This will reduce the rate of power consumption, 
> but reduces the CPU performance by a greater amount (since even at 100% 
> halted the CPU still consumes power) and so actually reduces performance 
> per watt. It will spread the heat and power usage produced from a given 
> workload task out in time (thus its usefulness in limiting CPU 
> temperature) but will consume more power overall.

Your usage of "overall power" here is wrong. Power is an instantaneous
quantity (1/s) like velocity, and you are comparing it to energy which
is not an instaneous quantity, more like distance.

If we throttle the velocity of a car from 100km/h to 50km/h, it'll
obviously take longer for it travel a given distance. Now what will it
mean when we ask about its "overall velocity" when it reaches its
destination? We surely don't mean the distance travelled - that's not a
velocity! We can perhaps talk about its average velocity, which will
obviously be smaller.

> Real CPU clock throttling schemes like SpeedStep, PowerNow, etc. 
> actually do increase performance per watt when they kick in.

That may be true. But the statement "throttling does not reduce power
usage" remains false. And the statement "throttling reduces heat
production but not power usage" remains physically impossible.

It might be true that "throttling increases energy usage per unit of
computation relative to no power saving measures at all", but that is
not incompatible with "throttling lets you run your laptop on battery
longer than no power saving measures at all", which is often what people
care about.

Voltage/frequency reduction is obviously a much better solution if it's
available as reducing voltage reduces power usage quadratically rather
than linearly. But beyond the quadratic/linear thing, the concept is the
same: use less power and your battery lasts longer.

-- 
Mathematics is the supreme nostalgia of our time.

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


Re: PROBLEM: Celeron Core

2008-01-20 Thread Andi Kleen
> I believe that all throttling does is forcibly halt the CPU on a 
> particular duty cycle. This will reduce the rate of power consumption, 
> but reduces the CPU performance by a greater amount (since even at 100% 
> halted the CPU still consumes power) and so actually reduces performance 
> per watt. It will spread the heat and power usage produced from a given 
> workload task out in time (thus its usefulness in limiting CPU 
> temperature) but will consume more power overall.

...and  more importantly deep sleep states in idle save far more power than
anything else and with throttling the CPU is idle shorter.

-Andi
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: PROBLEM: Celeron Core

2008-01-20 Thread Robert Hancock

David Newall wrote:

Andi Kleen wrote:

Isn't it the case that an idle machine will use
less power when throttled than when not?

No that is not the case (not even on old CPUs) 
  

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.


I believe that all throttling does is forcibly halt the CPU on a 
particular duty cycle. This will reduce the rate of power consumption, 
but reduces the CPU performance by a greater amount (since even at 100% 
halted the CPU still consumes power) and so actually reduces performance 
per watt. It will spread the heat and power usage produced from a given 
workload task out in time (thus its usefulness in limiting CPU 
temperature) but will consume more power overall.


Real CPU clock throttling schemes like SpeedStep, PowerNow, etc. 
actually do increase performance per watt when they kick in.

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


Re: PROBLEM: Celeron Core

2008-01-20 Thread Geert Uytterhoeven
On Sat, 19 Jan 2008, Andi Kleen wrote:
> > So while throttling may be less efficient in terms of watt seconds used
> > to compile something than running at full speed, it is incorrect to say
> > it uses less power. One machine running for an hour throttled to 50%
> > uses less power (and therefore less battery and cooling) than another
> > running at full speed for that same hour.
> 
> Not for the same unit of work. If you just run endless loops you 
> might be true, but most systems don't do that. 

So you mean energy (measured in J).
Power is energy/time unit (measured in W, i.e. J/s).

So I guess what you really want to say is: throttling decreases power
consumption, but on modern CPUs it increases the amount of energy needed
to perform the task.

Gr{oetje,eeting}s,

Geert

--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- [EMAIL PROTECTED]

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
-- Linus Torvalds
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: PROBLEM: Celeron Core

2008-01-20 Thread Geert Uytterhoeven
On Sat, 19 Jan 2008, Andi Kleen wrote:
  So while throttling may be less efficient in terms of watt seconds used
  to compile something than running at full speed, it is incorrect to say
  it uses less power. One machine running for an hour throttled to 50%
  uses less power (and therefore less battery and cooling) than another
  running at full speed for that same hour.
 
 Not for the same unit of work. If you just run endless loops you 
 might be true, but most systems don't do that. 

So you mean energy (measured in J).
Power is energy/time unit (measured in W, i.e. J/s).

So I guess what you really want to say is: throttling decreases power
consumption, but on modern CPUs it increases the amount of energy needed
to perform the task.

Gr{oetje,eeting}s,

Geert

--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- [EMAIL PROTECTED]

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say programmer or something like that.
-- Linus Torvalds
--
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: PROBLEM: Celeron Core

2008-01-20 Thread Robert Hancock

David Newall wrote:

Andi Kleen wrote:

Isn't it the case that an idle machine will use
less power when throttled than when not?

No that is not the case (not even on old CPUs) 
  

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.


I believe that all throttling does is forcibly halt the CPU on a 
particular duty cycle. This will reduce the rate of power consumption, 
but reduces the CPU performance by a greater amount (since even at 100% 
halted the CPU still consumes power) and so actually reduces performance 
per watt. It will spread the heat and power usage produced from a given 
workload task out in time (thus its usefulness in limiting CPU 
temperature) but will consume more power overall.


Real CPU clock throttling schemes like SpeedStep, PowerNow, etc. 
actually do increase performance per watt when they kick in.

--
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: PROBLEM: Celeron Core

2008-01-20 Thread Robert Hancock

Matt Mackall wrote:

Your usage of overall power here is wrong. Power is an instantaneous
quantity (1/s) like velocity, and you are comparing it to energy which
is not an instaneous quantity, more like distance.

If we throttle the velocity of a car from 100km/h to 50km/h, it'll
obviously take longer for it travel a given distance. Now what will it
mean when we ask about its overall velocity when it reaches its
destination? We surely don't mean the distance travelled - that's not a
velocity! We can perhaps talk about its average velocity, which will
obviously be smaller.


You are right.. it should be that overall energy usage is higher with 
clock throttling.




Real CPU clock throttling schemes like SpeedStep, PowerNow, etc. 
actually do increase performance per watt when they kick in.


That may be true. But the statement throttling does not reduce power
usage remains false. And the statement throttling reduces heat
production but not power usage remains physically impossible.


It reduces the rate of power usage (watts), however it will likely not 
decreate or even increase the energy usage (i.e. watt-hours) of any 
given computational task.




It might be true that throttling increases energy usage per unit of
computation relative to no power saving measures at all, but that is
not incompatible with throttling lets you run your laptop on battery
longer than no power saving measures at all, which is often what people
care about.

Voltage/frequency reduction is obviously a much better solution if it's
available as reducing voltage reduces power usage quadratically rather
than linearly. But beyond the quadratic/linear thing, the concept is the
same: use less power and your battery lasts longer.


Clock throttling is not likely to save your battery, unless you have 
tasks that are running at 100% CPU for an unlimited time or something, 
and you force your CPU to throttle. Normally most people have tasks that 
run and then the CPU idles - loading an email, displaying a web page, 
etc. Clock throttling will just make these tasks utilize the CPU for a 
longer time proportional to the amount clock throttling and therefore 
negate any gains in battery usage.

--
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: PROBLEM: Celeron Core

2008-01-20 Thread Andi Kleen
 I believe that all throttling does is forcibly halt the CPU on a 
 particular duty cycle. This will reduce the rate of power consumption, 
 but reduces the CPU performance by a greater amount (since even at 100% 
 halted the CPU still consumes power) and so actually reduces performance 
 per watt. It will spread the heat and power usage produced from a given 
 workload task out in time (thus its usefulness in limiting CPU 
 temperature) but will consume more power overall.

...and  more importantly deep sleep states in idle save far more power than
anything else and with throttling the CPU is idle shorter.

-Andi
--
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: PROBLEM: Celeron Core

2008-01-20 Thread Matt Mackall

On Sun, 2008-01-20 at 12:24 -0600, Robert Hancock wrote:
 David Newall wrote:
  Andi Kleen wrote:
  Isn't it the case that an idle machine will use
  less power when throttled than when not?
  
  No that is not the case (not even on old CPUs) 

  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.
 
 I believe that all throttling does is forcibly halt the CPU on a 
 particular duty cycle. This will reduce the rate of power consumption, 
 but reduces the CPU performance by a greater amount (since even at 100% 
 halted the CPU still consumes power) and so actually reduces performance 
 per watt. It will spread the heat and power usage produced from a given 
 workload task out in time (thus its usefulness in limiting CPU 
 temperature) but will consume more power overall.

Your usage of overall power here is wrong. Power is an instantaneous
quantity (1/s) like velocity, and you are comparing it to energy which
is not an instaneous quantity, more like distance.

If we throttle the velocity of a car from 100km/h to 50km/h, it'll
obviously take longer for it travel a given distance. Now what will it
mean when we ask about its overall velocity when it reaches its
destination? We surely don't mean the distance travelled - that's not a
velocity! We can perhaps talk about its average velocity, which will
obviously be smaller.

 Real CPU clock throttling schemes like SpeedStep, PowerNow, etc. 
 actually do increase performance per watt when they kick in.

That may be true. But the statement throttling does not reduce power
usage remains false. And the statement throttling reduces heat
production but not power usage remains physically impossible.

It might be true that throttling increases energy usage per unit of
computation relative to no power saving measures at all, but that is
not incompatible with throttling lets you run your laptop on battery
longer than no power saving measures at all, which is often what people
care about.

Voltage/frequency reduction is obviously a much better solution if it's
available as reducing voltage reduces power usage quadratically rather
than linearly. But beyond the quadratic/linear thing, the concept is the
same: use less power and your battery lasts longer.

-- 
Mathematics is the supreme nostalgia of our time.

--
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: PROBLEM: Celeron Core

2008-01-20 Thread Lennart Sorensen
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 [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: PROBLEM: Celeron Core

2008-01-20 Thread Tomasz Chmielewski
Clock throttling is not likely to save your battery, unless you have 
tasks that are running at 100% CPU for an unlimited time or something, 
and you force your CPU to throttle. Normally most people have tasks that 
run and then the CPU idles - loading an email, displaying a web page, 
etc. Clock throttling will just make these tasks utilize the CPU for a 
longer time proportional to the amount clock throttling and therefore 
negate any gains in battery usage.


Aren't you forgetting about CPUfreq governors? Which mean: use the 
maximum CPU frequency when the system is busy, throttle down (or lower 
voltage) when the system is idle.


So yes, throttling will save the battery.

Besides, not all CPUs support power management (voltage control).



IMO clock throttling (as opposed to the reduction of the frequency of an idle
CPU) is only useful for preventing the CPU from overheating.


And for reducing power on CPUs that can't do any power management, just 
throttling.


For example, a server that doesn't crunch any numbers at night will 
certainly use less power when throttled.



--
Tomasz Chmielewski
http://wpkg.org


--
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: PROBLEM: Celeron Core

2008-01-20 Thread Rafael J. Wysocki
On Sunday, 20 of January 2008, Tomasz Chmielewski wrote:
  Clock throttling is not likely to save your battery, unless you have 
  tasks that are running at 100% CPU for an unlimited time or something, 
  and you force your CPU to throttle. Normally most people have tasks that 
  run and then the CPU idles - loading an email, displaying a web page, 
  etc. Clock throttling will just make these tasks utilize the CPU for a 
  longer time proportional to the amount clock throttling and therefore 
  negate any gains in battery usage.
 
 Aren't you forgetting about CPUfreq governors? Which mean: use the 
 maximum CPU frequency when the system is busy, throttle down (or lower 
 voltage) when the system is idle.
 
 So yes, throttling will save the battery.

In the relevant documentation throttling usually means the reduction of the
frequency of a CPU that is not idle in which case it won't (at least on the
average).
 
 Besides, not all CPUs support power management (voltage control).
 
 
  IMO clock throttling (as opposed to the reduction of the frequency of an 
  idle
  CPU) is only useful for preventing the CPU from overheating.
 
 And for reducing power on CPUs that can't do any power management, just 
 throttling.
 
 For example, a server that doesn't crunch any numbers at night will 
 certainly use less power when throttled.

You can't use less power, you only can use less energy. :-)

Anyway, that's the reduction of the frequency of an idle CPU mentioned above
and it makes sense in the majority of cases.

Greetings,
Rafael
--
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: PROBLEM: Celeron Core

2008-01-20 Thread Daniel Barkalow
On Sun, 20 Jan 2008, Matt Mackall wrote:

 Your usage of overall power here is wrong. Power is an instantaneous
 quantity (1/s) like velocity, and you are comparing it to energy which
 is not an instaneous quantity, more like distance.
 
 If we throttle the velocity of a car from 100km/h to 50km/h, it'll
 obviously take longer for it travel a given distance. Now what will it
 mean when we ask about its overall velocity when it reaches its
 destination? We surely don't mean the distance travelled - that's not a
 velocity! We can perhaps talk about its average velocity, which will
 obviously be smaller.

What's people tend to care about is average power usage over a period, not 
instantaneous power usage. In fact, throttling obviously doesn't decrease 
instantaneous power usage while the machine is doing anything (since it 
runs full speed and full power when running, and does nothing and uses 
some but not as much power when halted). Throttling decreases the average 
power usage over the period of the throttling, but increases the average 
power usage in general over longer periods.

If we throttle a car's velocity by only driving 100km/h for 5 minutes out 
of every 10 instead of all of the time, it doesn't meaningfully have less 
velocity. And it's a particularly meaningless measure if the arrangement 
as a whole is that it will leave point A at some time, drive to point B, 
and sit there until some other time; in this case its average velocity is 
the distance from point A to point B divided by the duration between the 
two times, regardless of how you drive. But the distance travelled is 
longer if you have to pull over and park every 10 minutes, and so the 
average velocity must be higher for the TDMA throttling case.

-Daniel
*This .sig left intentionally blank*
--
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: PROBLEM: Celeron Core

2008-01-19 Thread Andi Kleen
On Sun, Jan 20, 2008 at 03:53:41PM +1030, David Newall wrote:
> Andi Kleen wrote:
> >> Isn't it the case that an idle machine will use
> >> less power when throttled than when not?
> >> 
> >
> > No that is not the case (not even on old CPUs) 
> >   
> Then why would it run cooler?  

Ok for one more (but last) time:

Throttling just lowers the short term heat spikes to prevent
short term damage to the silicon.  For that it focusses on lowering 
the absolute temperature at a given point.  That only applies
when the CPU is busy.

But for total power consumption (or rather more concretly conserving
your battery) you don't care about absolute temperature at a given point
(as long as it is not high enough that it destroys the CPU)
you care about how much power is consumed (and heat generated from that) 
averaged out over a longer time.

And for most typical workloads (not running endless loops; significant
idle time) throttling makes no difference and in fact often (especially
on laptop CPUs with deeper sleep modi like the original reported
had one) makes it likely worse (see previous mails for details why) 

> I'm not convinced.  I'm along way from that.

Frankly that's fine for me. I don't really feel any need to convince you. 
I can live with your metal model of CPU physics not being accurate.

-Andi (feeling a bit like a broken record) 
> 
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: PROBLEM: Celeron Core

2008-01-19 Thread David Newall
Andi Kleen wrote:
>> Isn't it the case that an idle machine will use
>> less power when throttled than when not?
>> 
>
> No that is not the case (not even on old CPUs) 
>   
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.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: PROBLEM: Celeron Core

2008-01-19 Thread Andi Kleen
> Isn't it the case that an idle machine will use
> less power when throttled than when not?

No that is not the case (not even on old CPUs) 

-Andi
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: PROBLEM: Celeron Core

2008-01-19 Thread David Newall
Andi Kleen wrote:
> I think the misunderstanding on your side is relative to what there
> is less heat. Throttling essentially reduces temporary heat spikes on
> the silicon, but does not make the system overall take less power
> or generate less heat as measured over a longer time because it will
> be idle less.
>   

I don't understand this, and it seems wrong.  Most machines spend most
of their time doing nothing, or as close to nothing as they're allowed. 
Idle, in other words.  Isn't it the case that an idle machine will use
less power when throttled than when not?
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: PROBLEM: Celeron Core

2008-01-19 Thread David Newall
Andi Kleen wrote:
 I think the misunderstanding on your side is relative to what there
 is less heat. Throttling essentially reduces temporary heat spikes on
 the silicon, but does not make the system overall take less power
 or generate less heat as measured over a longer time because it will
 be idle less.
   

I don't understand this, and it seems wrong.  Most machines spend most
of their time doing nothing, or as close to nothing as they're allowed. 
Idle, in other words.  Isn't it the case that an idle machine will use
less power when throttled than when not?
--
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: PROBLEM: Celeron Core

2008-01-19 Thread Andi Kleen
 Isn't it the case that an idle machine will use
 less power when throttled than when not?

No that is not the case (not even on old CPUs) 

-Andi
--
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: PROBLEM: Celeron Core

2008-01-19 Thread David Newall
Andi Kleen wrote:
 Isn't it the case that an idle machine will use
 less power when throttled than when not?
 

 No that is not the case (not even on old CPUs) 
   
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.
--
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: PROBLEM: Celeron Core

2008-01-19 Thread Andi Kleen
On Sun, Jan 20, 2008 at 03:53:41PM +1030, David Newall wrote:
 Andi Kleen wrote:
  Isn't it the case that an idle machine will use
  less power when throttled than when not?
  
 
  No that is not the case (not even on old CPUs) 

 Then why would it run cooler?  

Ok for one more (but last) time:

Throttling just lowers the short term heat spikes to prevent
short term damage to the silicon.  For that it focusses on lowering 
the absolute temperature at a given point.  That only applies
when the CPU is busy.

But for total power consumption (or rather more concretly conserving
your battery) you don't care about absolute temperature at a given point
(as long as it is not high enough that it destroys the CPU)
you care about how much power is consumed (and heat generated from that) 
averaged out over a longer time.

And for most typical workloads (not running endless loops; significant
idle time) throttling makes no difference and in fact often (especially
on laptop CPUs with deeper sleep modi like the original reported
had one) makes it likely worse (see previous mails for details why) 

 I'm not convinced.  I'm along way from that.

Frankly that's fine for me. I don't really feel any need to convince you. 
I can live with your metal model of CPU physics not being accurate.

-Andi (feeling a bit like a broken record) 
 
--
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: PROBLEM: Celeron Core

2008-01-18 Thread Andi Kleen
> It will relative to not throttling.

No it will not. Please reread Dominik's mail I linked to. It explains 
it clearly.

> You made a claim that is -physically impossible- as stated, a claim I've
> seen here before and I'm correcting it. If something reduces heat, it
> must save power *by the definition of heat and power*. And if you reduce
> power usage, you will make your battery last longer.

I think the misunderstanding on your side is relative to what there
is less heat. Throttling essentially reduces temporary heat spikes on
the silicon, but does not make the system overall take less power
or generate less heat as measured over a longer time because it will
be idle less.

-Andi
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: PROBLEM: Celeron Core

2008-01-18 Thread Matt Mackall

On Sat, 2008-01-19 at 05:27 +0100, Andi Kleen wrote:
> > So while throttling may be less efficient in terms of watt seconds used
> > to compile something than running at full speed, it is incorrect to say
> > it uses less power. One machine running for an hour throttled to 50%
> > uses less power (and therefore less battery and cooling) than another
> > running at full speed for that same hour.
> 
> Not for the same unit of work. If you just run endless loops you 
> might be true, but most systems don't do that. 

Yes, most systems idle.

> In terms of laptops (or rather in most other systems too) you usually care 
> about battery life time while the system is mostly idling (waiting
> for your key strokes etc.). In this case enabling throttling
> as a cpufreq driver will not make your battery last longer.

It will relative to not throttling.

You made a claim that is -physically impossible- as stated, a claim I've
seen here before and I'm correcting it. If something reduces heat, it
must save power *by the definition of heat and power*. And if you reduce
power usage, you will make your battery last longer.

Make any other statement you want about the efficiency of throttling per
unit work or the effectiveness of throttling relavite to other methods,
just stop repeating the claim that "throttling reduces heat but doesn't
save power". It goes against the law of conservation of energy.

-- 
Mathematics is the supreme nostalgia of our time.

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


Re: PROBLEM: Celeron Core

2008-01-18 Thread Andi Kleen
> So while throttling may be less efficient in terms of watt seconds used
> to compile something than running at full speed, it is incorrect to say
> it uses less power. One machine running for an hour throttled to 50%
> uses less power (and therefore less battery and cooling) than another
> running at full speed for that same hour.

Not for the same unit of work. If you just run endless loops you 
might be true, but most systems don't do that. 

In terms of laptops (or rather in most other systems too) you usually care 
about battery life time while the system is mostly idling (waiting
for your key strokes etc.). In this case enabling throttling
as a cpufreq driver will not make your battery last longer.

Also skipping the clocks does not actually safe all very much power
compared to the other measures C-states or speedstep do (like dropping voltage) 

This means enabling it will likely make your laptop battery last shorter.

-Andi
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: PROBLEM: Celeron Core

2008-01-18 Thread Matt Mackall

On Sat, 2008-01-19 at 02:15 +0100, Andi Kleen wrote:
> On Fri, Jan 18, 2008 at 06:27:57PM -0600, Matt Mackall wrote:
> > 
> > On Fri, 2008-01-18 at 22:11 +0100, Andi Kleen wrote:
> > > Chodorenko Michail <[EMAIL PROTECTED]> writes:
> > > 
> > > > I have a laptop "Extensa 5220", with the processor Celeron based on 
> > > > 'core'
> > > > technology.
> > > > There is ~ / arch/i386/kernel/cpu/cpufreq/p4-clockmod.c in the kernel
> > > > source code
> > > > but there's no line identification of my CPU for apply freqency change
> > > > need to add a ID line 0х16
> > > 
> > > Note that driver will likely do clock throttling on your CPU.
> > > Using that is usually a bad idea because it does not actually
> > > safe power. It's only intended to let the CPU cool down in some 
> > > situations.
> > 
> > Power consumption is more or less exactly equal to heat production
> > (that's where the power goes, after all!), so either clock throttling
> > DOES save power or it DOES NOT cool the CPU.
> 
> No actually the way it works on modern x86 CPUs is that the best
> strategy for saving power is to do things quickly and then
> idle longer. That means on anything that has reasonably
> deep sleep modi e.g. on older server/desktop systems things might
> be slightly different because they had very little power saving
> features enabled, but it's definitely true for all
> laptop systems from the last several years. But even
> on desktop/server throttling tends to be a bad idea.

Dominik is measuring energy expended (watts * seconds) vs work done (CPU
cycles). But your claim above is "clock throttling...does not save power
[but it lets] the CPU cool down", which talks about power (watts) and
heat (also watts, in fact the *very same* watts) and is physically
impossible. A CPU turns power into heat. Less heat out implies less
power in.

So while throttling may be less efficient in terms of watt seconds used
to compile something than running at full speed, it is incorrect to say
it uses less power. One machine running for an hour throttled to 50%
uses less power (and therefore less battery and cooling) than another
running at full speed for that same hour.

The first machine may take significantly longer to complete its task (or
it may not, if the task is reading email or watching video), but that's
another matter entirely. And whether it's more or less efficient than
other power-saving approaches is also another matter. Throttling does
save power.

-- 
Mathematics is the supreme nostalgia of our time.

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


Re: PROBLEM: Celeron Core

2008-01-18 Thread Andi Kleen
On Fri, Jan 18, 2008 at 06:27:57PM -0600, Matt Mackall wrote:
> 
> On Fri, 2008-01-18 at 22:11 +0100, Andi Kleen wrote:
> > Chodorenko Michail <[EMAIL PROTECTED]> writes:
> > 
> > > I have a laptop "Extensa 5220", with the processor Celeron based on 'core'
> > > technology.
> > > There is ~ / arch/i386/kernel/cpu/cpufreq/p4-clockmod.c in the kernel
> > > source code
> > > but there's no line identification of my CPU for apply freqency change
> > > need to add a ID line 0х16
> > 
> > Note that driver will likely do clock throttling on your CPU.
> > Using that is usually a bad idea because it does not actually
> > safe power. It's only intended to let the CPU cool down in some situations.
> 
> Power consumption is more or less exactly equal to heat production
> (that's where the power goes, after all!), so either clock throttling
> DOES save power or it DOES NOT cool the CPU.

No actually the way it works on modern x86 CPUs is that the best
strategy for saving power is to do things quickly and then
idle longer. That means on anything that has reasonably
deep sleep modi e.g. on older server/desktop systems things might
be slightly different because they had very little power saving
features enabled, but it's definitely true for all
laptop systems from the last several years. But even
on desktop/server throttling tends to be a bad idea.

Intel style throttling makes the CPU skip cycles so the maximum built
up heat for a time unit is less, but it will run active for longer that 
makes it overall take more power for a given work unit.

Here's a better description from Dominik:

http://article.gmane.org/gmane.linux.kernel.cpufreq/3497

Note the conditions he describes are quite common. Also the OP
CPU likely has C2 and even deeper sleep modi.

Another problem with throttling / p4-clockmod is that on
at least some CPUs (not necessarily P-M, but we saw this on
some P4s) is that they can create quite long user visible
latencies. You might actually get "hanging mouse pointers" 
from it if you use it with an aggressive governour like ondemand.

The normal use case for Intel throttling is to just do 
an emergency cool down in case the CPU fails (down to thermal
shutdown). And that is done transparently behind Linux's back.

-Andi


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


Re: PROBLEM: Celeron Core

2008-01-18 Thread Matt Mackall

On Fri, 2008-01-18 at 22:11 +0100, Andi Kleen wrote:
> Chodorenko Michail <[EMAIL PROTECTED]> writes:
> 
> > I have a laptop "Extensa 5220", with the processor Celeron based on 'core'
> > technology.
> > There is ~ / arch/i386/kernel/cpu/cpufreq/p4-clockmod.c in the kernel
> > source code
> > but there's no line identification of my CPU for apply freqency change
> > need to add a ID line 0х16
> 
> Note that driver will likely do clock throttling on your CPU.
> Using that is usually a bad idea because it does not actually
> safe power. It's only intended to let the CPU cool down in some situations.

Power consumption is more or less exactly equal to heat production
(that's where the power goes, after all!), so either clock throttling
DOES save power or it DOES NOT cool the CPU.

-- 
Mathematics is the supreme nostalgia of our time.

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


Re: PROBLEM: Celeron Core

2008-01-18 Thread Andi Kleen
Chodorenko Michail <[EMAIL PROTECTED]> writes:

> I have a laptop "Extensa 5220", with the processor Celeron based on 'core'
> technology.
> There is ~ / arch/i386/kernel/cpu/cpufreq/p4-clockmod.c in the kernel
> source code
> but there's no line identification of my CPU for apply freqency change
> need to add a ID line 0х16

Note that driver will likely do clock throttling on your CPU.
Using that is usually a bad idea because it does not actually
safe power. It's only intended to let the CPU cool down in some situations.

-Andi
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: PROBLEM: Celeron Core

2008-01-18 Thread Matt Mackall

On Fri, 2008-01-18 at 22:11 +0100, Andi Kleen wrote:
 Chodorenko Michail [EMAIL PROTECTED] writes:
 
  I have a laptop Extensa 5220, with the processor Celeron based on 'core'
  technology.
  There is ~ / arch/i386/kernel/cpu/cpufreq/p4-clockmod.c in the kernel
  source code
  but there's no line identification of my CPU for apply freqency change
  need to add a ID line 0х16
 
 Note that driver will likely do clock throttling on your CPU.
 Using that is usually a bad idea because it does not actually
 safe power. It's only intended to let the CPU cool down in some situations.

Power consumption is more or less exactly equal to heat production
(that's where the power goes, after all!), so either clock throttling
DOES save power or it DOES NOT cool the CPU.

-- 
Mathematics is the supreme nostalgia of our time.

--
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: PROBLEM: Celeron Core

2008-01-18 Thread Andi Kleen
Chodorenko Michail [EMAIL PROTECTED] writes:

 I have a laptop Extensa 5220, with the processor Celeron based on 'core'
 technology.
 There is ~ / arch/i386/kernel/cpu/cpufreq/p4-clockmod.c in the kernel
 source code
 but there's no line identification of my CPU for apply freqency change
 need to add a ID line 0х16

Note that driver will likely do clock throttling on your CPU.
Using that is usually a bad idea because it does not actually
safe power. It's only intended to let the CPU cool down in some situations.

-Andi
--
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: PROBLEM: Celeron Core

2008-01-18 Thread Matt Mackall

On Sat, 2008-01-19 at 02:15 +0100, Andi Kleen wrote:
 On Fri, Jan 18, 2008 at 06:27:57PM -0600, Matt Mackall wrote:
  
  On Fri, 2008-01-18 at 22:11 +0100, Andi Kleen wrote:
   Chodorenko Michail [EMAIL PROTECTED] writes:
   
I have a laptop Extensa 5220, with the processor Celeron based on 
'core'
technology.
There is ~ / arch/i386/kernel/cpu/cpufreq/p4-clockmod.c in the kernel
source code
but there's no line identification of my CPU for apply freqency change
need to add a ID line 0х16
   
   Note that driver will likely do clock throttling on your CPU.
   Using that is usually a bad idea because it does not actually
   safe power. It's only intended to let the CPU cool down in some 
   situations.
  
  Power consumption is more or less exactly equal to heat production
  (that's where the power goes, after all!), so either clock throttling
  DOES save power or it DOES NOT cool the CPU.
 
 No actually the way it works on modern x86 CPUs is that the best
 strategy for saving power is to do things quickly and then
 idle longer. That means on anything that has reasonably
 deep sleep modi e.g. on older server/desktop systems things might
 be slightly different because they had very little power saving
 features enabled, but it's definitely true for all
 laptop systems from the last several years. But even
 on desktop/server throttling tends to be a bad idea.

Dominik is measuring energy expended (watts * seconds) vs work done (CPU
cycles). But your claim above is clock throttling...does not save power
[but it lets] the CPU cool down, which talks about power (watts) and
heat (also watts, in fact the *very same* watts) and is physically
impossible. A CPU turns power into heat. Less heat out implies less
power in.

So while throttling may be less efficient in terms of watt seconds used
to compile something than running at full speed, it is incorrect to say
it uses less power. One machine running for an hour throttled to 50%
uses less power (and therefore less battery and cooling) than another
running at full speed for that same hour.

The first machine may take significantly longer to complete its task (or
it may not, if the task is reading email or watching video), but that's
another matter entirely. And whether it's more or less efficient than
other power-saving approaches is also another matter. Throttling does
save power.

-- 
Mathematics is the supreme nostalgia of our time.

--
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: PROBLEM: Celeron Core

2008-01-18 Thread Matt Mackall

On Sat, 2008-01-19 at 05:27 +0100, Andi Kleen wrote:
  So while throttling may be less efficient in terms of watt seconds used
  to compile something than running at full speed, it is incorrect to say
  it uses less power. One machine running for an hour throttled to 50%
  uses less power (and therefore less battery and cooling) than another
  running at full speed for that same hour.
 
 Not for the same unit of work. If you just run endless loops you 
 might be true, but most systems don't do that. 

Yes, most systems idle.

 In terms of laptops (or rather in most other systems too) you usually care 
 about battery life time while the system is mostly idling (waiting
 for your key strokes etc.). In this case enabling throttling
 as a cpufreq driver will not make your battery last longer.

It will relative to not throttling.

You made a claim that is -physically impossible- as stated, a claim I've
seen here before and I'm correcting it. If something reduces heat, it
must save power *by the definition of heat and power*. And if you reduce
power usage, you will make your battery last longer.

Make any other statement you want about the efficiency of throttling per
unit work or the effectiveness of throttling relavite to other methods,
just stop repeating the claim that throttling reduces heat but doesn't
save power. It goes against the law of conservation of energy.

-- 
Mathematics is the supreme nostalgia of our time.

--
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/