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.

3 thoughts on “Laptop battery consumption / learning gnuplot”

  1. I see that you are trying to learn Gnuplot, so you might be interested to know that there is now a book on it: “Gnuplot in Action”. You can pre-order it directly from the publisher: Manning: Gnuplot in Action.

    The book assumes no previous familiarity with Gnuplot. It introduces the most basic concepts rapidly, and then moves on to explain Gnuplot’s advanced concepts and power features in detail.

    If you want to learn more about the book and the author, check out my book page at Principal Value – Gnuplot in Action.

    Let me know if you are interested in a review copy.

  2. Hi Philipp,

    thanks for the (a little spam-ish) comment. 😉 I’m not having too much to plot, so I don’t think I really need to get deeper into Gnuplot. But if that should change, I’ll surely remember your book 🙂

    By the way: it was only today that I (totally unrelated to your comment) read your three great articles about programming in Qt in the Linux magazine (http://www.linux-mag.com/author/75).

    Cheers,
    Patrick.

  3. Oh, well, too bad.

    Glad you got use out of my articles on QT – I really quite like QT, but don’t have much opportunity to use it. (It’s Python bindings are excellent, by the way, and that’s my preferred way to do QT GUI programming these days…)

Leave a Reply

Your email address will not be published. Required fields are marked *