pm-utils-powersave-policy scripts

Chase Douglas chase.douglas at canonical.com
Mon Mar 15 18:08:22 UTC 2010


On Mon, Mar 15, 2010 at 5:27 AM, Amit Kucheria
<amit.kucheria at canonical.com> wrote:
> Hi Chase,
>
> These are the powersave-policy scripts that I've already implemented. Once you
> make the fixes, it might be a good idea to publish them to a PPA and put out
> a CFT on ubuntu-devel.
>
> These need some fixing as follows:
>
> * ac97-powerdown: remove the echo into /dev/dsp, very hackish
> * console-blanking: redirecting the setterm command to /dev/tty1 ought to
> configure the timeout
> * console-blanking-1: just a comment, include with previous script
> * ethernet-wol: add ethtool dependency in the debian package
> * sched-multicore:
> * sched-multithread: fix the script to compare floating point loadavg values,
> -lt cant do that.
>
> For the two sched tweaks, I have the following comments:
>
> "Add policy to tune the scheduler to first fill up all threads on a core and
> all the core in a cpu package before scheduling processes to cores on another
> cpu package.
>
> This kernel tuneable is effective in reducing power consumption on lightly
> loaded systems.
>
> However, this is not a very effective policy since it only takes into account
> the 15-min load average of the system at the time when pm-powersave is
> called.  So if the load average changes right after this script is run, we
> might be making the wrong decision.
>
> What we really need is the ability to adjust this tuning constantly, by
> repeatedly calling this script. Basically a power-policy daemon that is run
> everytime the processor wakes up for an interrupt. In the long run, this
> tuning variable might disappear if the scheduler can make this decision
> automatically."

I've fixed up all the issues you discussed above except the last part
about checking the load every so often. The changes can be found at:

https://code.launchpad.net/~chasedouglas/lucid/pm-utils-powersave-policy

I'll work on a ppa and a CFT soon.

As for the checking load part, how do we want to deal with it? Any
script that would check something periodically would need to be
outside the scope of pm-utils-powersave-policy. We could make a very
hackish script to go in there, but it's just asking for trouble IMHO.
So what do we want to do with it? Create a new daemon just for power
scheduling policy?

-- Chase




More information about the kernel-team mailing list