long flight; need battery power!

Kevin Oberman oberman at es.net
Fri Aug 26 15:55:17 GMT 2005


> From: "Dan Langille" <dan at langille.org>
> Date: Thu, 25 Aug 2005 22:42:47 -0400
> Sender: owner-freebsd-mobile at freebsd.org
> 
> In September, I'll have a couple of long flights.  I'll be using my 
> IBM ThinkPad T41 to catch up on some long delayed FreshPorts 
> enhancements.  Apart from charging whenever I can, I'm afraid I'll 
> get only about 140-150 minutes from my battery.
> 
> Apart from buying a second battery, any ideas?

This gets a bit long, but I've been spending a lot of my spare time
testing this stuff and it's proven interesting.

What version of FreeBSD are you running? V6 has a lot better power
management than V5 and current is better, still. If you are running
V6, get the powerd from HEAD and use that or just keep the CPU fairly
slow.

Background: Most newer laptop CPUs have the capability of running at two
or more actual clock rates. This makes a BIG difference in power
consumption. It can also be throttled (by various means) to a portion of
the actual clock speed. This can save power, but the impact is far less
than with reducing the actual CPU clock rate.

'sysctl dev.cpu.0' will show (among other things) the available
performance settings. Please remember that these are
'pseudo-frequencies' obtained by combining actual CPU clock settings
with throttling and not just actual clock speed changes.

You can use several tools to see the actual CPU speed. I use the
gkx86info2 plugin for gkrellm2.

On my T30 I have determined that the a busy system running at low
performance uses more power than a system with the same load at a higher
performance. I mean the same actual load. I was testing by playing MP3s
which provide a fairly steady load. At 300 MHz, it runs about 65% of
capacity. At 1.2 GHz it runs about 17%. At 1.8 GHz it runs only 10%.

Lowest power utilization was at 1.2 GHz. My system has 2 actual clock
speeds (1.8 and 1.2 GHz) and uses TCC (similar to throttling) to provide
the added speeds. As long as the system is close to idle, the slower the
clock, the better. But, if it's busy, the higher rate with the 1.2 GHz
clock speed is the winner.

This is not really intuitive, but makes sense if you look at just what
the CPU is doing. Running slowly saves power, but halted saves even more
and, when the MP3 is plying a a low CPU performance, it seldom is
halted. When it's playing at 1.2 GHz, it finishes each operation and can
halt for a while until the next buffer is processed, thus running at
lower power.

If you are just editing, a very low speed is the winner. Turn off powerd
(if you are running it) and just set he CPU to the lowest performance
available. If you are compiling, bump it up to the lowest native CPU
speed. For debug, it depends, but I suspect you want lowest, again.
-- 
R. Kevin Oberman, Network Engineer
Energy Sciences Network (ESnet)
Ernest O. Lawrence Berkeley National Laboratory (Berkeley Lab)
E-mail: oberman at es.net			Phone: +1 510 486-8634


More information about the freebsd-mobile mailing list