Intel’s “powertop” gives hints on how to save power

I discovered this small ncurses based tool just yesterday… Just start it as root and it will spit out info on how often the CPU must return from C3 sleep mode to a more power consuming mode, and what the reasons are. It will also show various hints on how to reduce power consumption on your system. The tool is intended for computers with Intel mobile CPUs. It’s available through portage (sys-power/powertop).

Nice work, Intel!

Laptop battery consumption / learning gnuplot

Today I tested how long my laptop’s battery can last when I just keep it on the table, idling. Running Linux and a bunch of applications, the TFT set to the lowest brightness setting. Wireless activated.

After the laptop switched off, I plotted the power consumption curve with gnuplot, which I wanted to get to know for a long time already 😉 The data file (fed from /proc/acpi/battery/BAT1/state) contained 1678 data points (ten samples per minute). The gnuplot session looks like this:

gnuplot> set terminal png picsize 800 600
Terminal type set to 'png'
Options are 'small color picsize 800 600 '
gnuplot> set output "test.png"
gnuplot> plot "powerlog3" using 1:2 title 'Power consumption (W) over time (min)' with lines, "powerlog3" using 1:3 title 'Remaining (%) over time (min)' with lines smooth unique

You can see the result here:
Plot of my laptop’s power consumption, tested on 2007-06-10, plotted with gnuplot

In the beginning I finished something I was working on, so you can see some spikes in the power consumption when I launched programs and such… After 60 minutes the monitor switched off, so the consumption drops. I guess I hit the table at minute 144 or so, because then the monitor seems to have switched on again, don’t remember though 😉

I’ll do the test running Windows at a later time – but there I will only get one number – the total runtime. I have no idea how I could get statistics like that in Windows, and I’m not willing to try 10 shareware programs until I get a suitable result 😉

UPDATE (2007-06-11):
I got around running the test in Windows. I tried to produce about the same conditions: display switches off automatically after 60 minutes, no automatic standby and stuff. I also remembered to switch on the display again after ~70 minutes of being switched off, so the results should really be comparable. One of the apps I kept running on the otherwise idle system was a PuTTY window. Therein I ran a shell script on my server, which touched a file every ten seconds, so I just would have to check the modification date of that file to know when the box went down. I started the test at 11:01 local time, which means 3:01 UTC. The file’s modification date is: 2007-06-11 05:22 (UTC). –> The laptop was shutdown automatically after 2:21h.

So it’s definitely not true that there is some energy wasting going on when Linux is running on a computer, as I have been told (and which eventually caused me conducting this experiment 😉 ). If anything, Windows lost here, as usual.

P.S.: Some information about the two software environments:
Linux: Kernel 2.6.21-gentoo-r2, (for details, have a look at my current configuration). On top of it, running Xorg, KDE with Beryl as window manager, there are usually about 150 processes in the task list.
Windows: Windows Vista Business, everything left quite to the default (I never use it…). No special services running or anything.