We reduced power consumption from the BIOS in the previous article in this series. And we’re using GNOME’s Balanced power saving mode. What else is next?
Let’s try PowerTOP, software that displays data about the power use of a Linux system. What piqued our interest is that the software analyzes power issues and offers optimization suggestions. Let’s see what it suggests.
PowerTop is available from the repositories of all main Linux distros, so installing it on your system is straightforward.
Run PowerTOP with the command:
$ sudo powertop
The software shows information in 6 tabs. Use TAB and Shift + TAB to cycle through the tabs. The 6 tabs are:
Overview — Idle stats — Frequency stats — Device stats — Tunables — WakeUp
While the last two tabs are the most interesting from the purposes of this series, we’ll briefly cover the first four tabs too.
The Overview Tab
The overview tab lists the top power consuming items which keep waking a processor from its idle state. When tuning applications and device drivers for power, the objective to to reduce the number of wakeups/second to maximize the system’s power performance.
This tab shows the usage, number of events, category, description, and power estimate of the most consuming power items in the system.
The idle stats tab presents the CPUs and GPUs currently loaded in the system in relationship with their C-states. Intel platforms show the list of C-states, broken up by CPU, by core, and by package. We succinctly covered C-states when discussing the BIOS.
The frequency stats tab presents the P-states of a system in relationship with the idle state. To see the different P-states supported on an Intel processor, it is recommended to run the Intel idle driver.
We saw this information displayed with the command
$ inxi -C in the second part in this series.
The device stats tab presents the list of devices in the system that consume the most power.
The Tunables tab is the most interesting. It lists the devices that are present on the system. Devices that are not tuned for power management have the “Bad” label associated. Otherwise, the label reads “Good”.
We can tune the system to be power friendly by toggling each item from bad to good. When you toggle an item, you’re told the command used to tune the system. For example toggling the line “NMI watchdog should be turned off” from “Bad” to Good” displays the command to use.
$ echo '0' > '/proc/sys/kernel/nmi_watchdog
The changes are not permanent and will reset after restarting the machine. We suggest you test each of the “Bad” labels, and see if any introduce any problems to your system. After testing, you can add the commands to your .bashrc file.
PowerTOP can automatically tune all settings for low power usage with the command
$ sudo powertop --auto-tune. We don’t recommend trying this command. For example, it’s annoying to have your mouse go to sleep all the time!
The final tab offers a few additional tweaks.
We’ll want to Disable Wake-on-lan. This runs the command:
$ echo 'disabled' > '/sys/class/net/eno1/device/power/wakeup'
Instead of adding commands to the .bashrc (or whatever equivalent in a different shell), if you run PowerTOP as a service
$ systemctl enable powertop it can apply all suggestions from the Tunables tab.
PowerTOP is a useful diagnostic tool. We saw a fairly small reduction in average power consumption on our test system.
Let us know in the Comments what, if any, power savings you made.
All articles in this series
|Saving Money with Linux|
|Getting Started||We kick off the series with everything you need to start saving|
|Power Settings||We look at the 3 different power settings and some useful open source tools|
|BIOS||Explore changing settings in the BIOS to reduce power consumption|
|PowerTOP||Analyze power issues and receive optimization suggestions|
|Computer Off||Power consumption when computers are off|