power management, ahci link power management and DragonFly

Johannes Hofmann johannes.hofmann at gmx.de
Mon Nov 8 10:16:34 PST 2010

Alex Hornung <ahornung at gmail.com> wrote:
> Hi,
> I've been playing around today to see the our power efficiency on my
> ThinkPad. I have been using acpiconf -i 0 to see the discharge rate, and
> it seems we can't get below 19W. On linux and Windows I can get as low
> as 10-12W.
> I've set the brightness to the lowest level. I didn't enable any wifi
> power management, but on linux I can't do that either since it has been
> marked as broken for my card on linux (iwl3945).
> I've set the P-State to be fixed at 1GHz (the lowest), since powerd
> doesn't seem to work correctly; it didn't seem to scale down from 2GHz
> anymore after a while on an idle system. FWIW, estd seems to do a better
> job, though. In any case discussing the sense or lack thereof behind
> powerd is not the subject of this mail.
> I've also set the lowest C-state to C3 and according to
> hw.acpi.cpu*.cx_usage, it is actually spending most of the idle time in
> C3 (around 75%).
> Additionally I've set the ahci link power management to aggressive. This
> is the biggest problem. While it seems to save another watt or so, it
> also causes a long wait for even a simple ls if the stuff isn't cached.
> dmesg shows timeouts:
> ahci0.0: CMD TIMEOUT state=5 slot=22
>        cmd-reg 0xc00d617<ASP,ALPE,CR,FR,FRE,POD,SUD,ST>
>        sactive=00400000 active=00000000 expired=00000000
>           sact=00400000     ci=00000000
>            STS=150
> ahci0.0: disk_rw: timeout
> This definitely doesn't occur on linux with ahci aggressive link power
> management, and would seem like quite a big issue. Anyone knows why
> these timeouts occur with aggressive link power management?

I didn't see those on my thinkpad when adding link power management.
It looks like a bug. Are you getting those for each request, or just
when activating it?
What exact type of thinkpad and harddrive do you use?

> I'm also wondering what we need to do to increase our power efficiency
> to a Linux-like level, or at least down to 15W on this ThinkPad.
> It would also be helpful if we could gather more information on why we
> are so power inefficient. Can we see the number of wakeups per second
> and what causes the wakeups, much like powertop on linux does?

I played around with it a bit and to me it seemed that wakeups are not
that much of a big deal. E.g. decreasing HZ (just for testing) didn't
gain much. But I might be missing something as everyone in Linux-land
talks about reducing the wakups and tickless kernels.


More information about the Kernel mailing list