Last week when traveling to Europe for FOSDEM and other business meetings, I had picked up a new 9-cell battery for a Lenovo ThinkPad T60. While an additional three battery cells will noticeably extend your battery life, you can also extend your battery life by taking a few simple steps to optimize your Linux desktop that will also reduce your power consumption and heat output. In this article are a few simple steps to take in order to extend your notebook's battery life on Ubuntu.
One of the easiest ways to start optimizing your notebook's battery life is by using the utilities already available to you within Ubuntu. From using gnome-power-preferences, one can adjust their power settings not only when running on the battery but also when using AC power. Inside GNOME Power Management Preferences you can adjust how many minutes of inactivity before the computer and/or display is put to sleep, what to do when the laptop lid is closed (Nothing, Blank Screen, Suspend, Hibernate), what to do when the battery power is critically low, dimming the display brightness (on a percentage basis), and whether to dim the display when the system is idle. These same settings are available to battery and AC power environments. Dimming the notebook's LCD panel when running on battery power can significantly improve your battery life, but of course that it can also strain your eyes. When dimming the display on a Lenovo T60 by 30%, it was still bright enough not to cause any major eyestrain and had extended the battery life by several minutes. The backlight power can also be controlled using xbacklight.
One of the great power-saving advancements of recent times was Intel's introduction of PowerTOP. PowerTOP is an open-source project sponsored by Intel that analyzes your running system and will make recommendations on changes that can be made to conserve power consumption. With many of the recommendations, PowerTOP is able to automatically make these optimizations as well. This utility also identifies the software components that are causing the most wake-ups, which in turn consume excess power.
Intel's PowerTOP doesn't ship with Ubuntu by default, but it's available through the Ubuntu package repository (sudo apt-get install powertop). PowerTOP v1.8 is the latest packaged version for Ubuntu 7.10, but by compiling from source, you can build the latest version of PowerTOP (v1.9 is the latest version at the time of publishing). To build PowerTOP from source on Ubuntu you will need the standard build utilities and libraries along with libncurses5-dev and libncursesw5-dev. PowerTOP needs to be run as root for proper results and the initial analyzing process only takes a few seconds.
PowerTOP reports the average residency in each of the power-saving states for Intel processors (C0, C1, C2, and C3) and P-states for the processor frequency. The wakeups-from-idle per second are disabled and the ACPI power usage is displayed, if supported by your laptop's ACPI implementation. The top causes for the system waking up are displayed and is sorted by percentage -- not only end-user programs are displayed in this listing but also drivers and other software components. For then taking action to reduce the power consumption, suggestions are shown and then usually with the hit of a single key that action can be done automatically. Some of the common power-saving suggestions by PowerTOP are disabling HAL from polling the CD-ROM, enabling USB auto-suspend, increasing the VM dirty write-back time, and turning off the WiFi radio if it's not being used or entering a wireless power-saving mode. Intel's PowerTOP utility is extremely easy to use and often can deliver noticeable results.