LWN.net Logo

The return of power-aware scheduling

The return of power-aware scheduling

Posted Aug 23, 2012 15:02 UTC (Thu) by aaron (subscriber, #282)
Parent article: The return of power-aware scheduling

Ah, the return of the "downshift" vs. "race-to-suspend" debate. I think the cycle roughly goes like:
1. "I should write come code to take advantage of these nifty power-saving modes."
2. "Cool, it works!"
3. "Dang, the power-reduced modes don't actually save much power. I'm going to ignore or deprecate this code."
4. "We should go as fast as we can, and then go into deep suspend for a while, and get some REAL power savings."
5. "Dang, some devices get hinky after a few million suspend-cycles. This is gonna need some blacklists."
6. "Dang, the RT people are really complaining about latency."
7. "Dang, going into and out of suspend takes a long time! And some devices eat power while they're doing it!"
8. "Well, I'm tired of fighting with this. I'll bet it doesn't save enough power to be worth the trouble anyway."
9. "I'm going to deprecate this code."
10. See #1

I seem to remember that Ethernet link power management was a pretty good example of this cycle.

Sadly, it seems that really effective power-management winds up being tied to specific vendor/hardware platforms or use-cases.


(Log in to post comments)

The return of power-aware scheduling

Posted Aug 30, 2012 20:21 UTC (Thu) by oak (subscriber, #2786) [Link]

If every task releases wakeup sources when it's idling, average number of wakeups goes down.

But if you have lots of tasks doing this at some specific times and especially re-acquiring the wakeup sources at the same time (display unblanking is a good example of where that could happen in mobile devices), you get the "thundering herds" issue. System gets occasional small near-freezes i.e. the latency issue you mention.

I've seen this with user-space processes, but I guess it applies also to kernel tasks...

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