LWN.net Logo

The PowerClamp driver

The PowerClamp driver

Posted Dec 12, 2012 16:37 UTC (Wed) by arjan (subscriber, #36785)
Parent article: The PowerClamp driver

Note that this is NOT about getting a longer battery life.
In fact, pretty much all tricks to put a limit on temperature/power consumption like this en up costing you battery life.

This is is about limiting either temperature or current use (on laptops temperature matters, in data centers current matters, but also temperature) due to external constraints.

We have a simple userspace app for example that can control a laptop temperature to just below the point that the fan would come on.
(it's very much prototype code at this point.. we're working on getting it more usable than on the one machine we ran it on).


(Log in to post comments)

The PowerClamp driver

Posted Dec 12, 2012 16:44 UTC (Wed) by corbet (editor, #1) [Link]

I'm confused...the word "battery" does not appear in the article. Instead I talk about things like temperature regulation. Was something not clear?

The PowerClamp driver

Posted Dec 12, 2012 16:55 UTC (Wed) by arjan (subscriber, #36785) [Link]

the article is clear to me, but I can see people thinking this is for "saving power" (see the first comments)...

The PowerClamp driver

Posted Dec 13, 2012 15:59 UTC (Thu) by redden0t8 (guest, #72783) [Link]

I'm kind of confused... how does reduced power consumption cost you battery life?

Is it because a given workload will take longer to complete, and therefore take more total power by the time its done?

If that's the case, then it's actually workload dependent. Specifically, I'm thinking of playing retro games that insist on taking 100% of the CPU. They needlessly waste power to achieve much greater that 60 fps, even with the CPU clocked to the lowest scaling frequency. Would PowerClamp not increase battery life in this scenario?

The PowerClamp driver

Posted Mar 7, 2013 21:57 UTC (Thu) by pjones (subscriber, #31722) [Link]

energy = power * time. If you deliberately hobble the workload to use less power, it takes more time, but also operates less efficiently. This means you'll use more energy.

The PowerClamp driver

Posted Mar 7, 2013 22:53 UTC (Thu) by dgm (subscriber, #49227) [Link]

> If you deliberately hobble the workload to use less power, it takes more time

Not if your work depends on external events, that is, IO. And it all depends on the characteristics of the system. If you can do it 10% slower at half the power consumption, it may very well be worth the wait.

The PowerClamp driver

Posted Mar 7, 2013 23:30 UTC (Thu) by dlang (✭ supporter ✭, #313) [Link]

and remember that even memory access is an external event that is significantly slower than the CPU, so if what you are doing is a small amount of computation on a large amount of memory, you may be able to do it in the same amount of time with a much slower CPU.

The PowerClamp driver

Posted Mar 11, 2013 13:06 UTC (Mon) by ssam (subscriber, #46587) [Link]

if i am running a process that is limited by memory bandwidth, wont the CPU be spend lots of time idle, and so reducing the power consumption already? Can the CPU sleep while it is waiting for something to be fetched from RAM?

The PowerClamp driver

Posted Mar 11, 2013 20:28 UTC (Mon) by dlang (✭ supporter ✭, #313) [Link]

not really, it takes a long time for the processor to go to sleep and wake up again, long enough that it's frequently better for the processor to idle at high speed rather than go into sleep mode.

Copyright © 2013, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds