Most Ubuntu users do not need an introduction to ‘indicator-cpufreq‘. However, if you don’t know what that is, then ‘indicator-cpufreq’ is a small utility that runs on the system tray area that lets you manually change the speeds at which your CPU run (also known as changing ‘clock speeds’).
The CPU or the ‘Central Processing Unit’ is a hardware device that consumes a lot of power. And because of that, newer processors have a lot of power saving techniques, for enhancing the battery life or to minimize the power pollution in general. Some of these power saving feature are controlled by the processor itself and some can be controlled using software tools.
For example, when idle, and until a request is sent by the OS, the processor puts itself into ‘sleep states’ or can switch into slower processing speeds (clock speeds), where it consumes very little power.
If your processor has these features, then Ubuntu too automatically changes its speed (up and down) depending on the occasion. But, by using tools like the above mentioned ‘indicator-cpufreq’, a user can manually set a clock speed, where unlike the automatic method, the CPU will function in that speed, until the user changes it manually.
For most users, it is better to let the OS to automatically change the speeds. However, the OS cannot always predict the needs of the user and might speed it up ‘unnecessarily’, thus, under most situations, manually changing the speeds saves power.
Anyway, I have an Intel Core i3-2330 (2.2 Ghz, native clock speed) CPU in my Laptop and I wanted to test changing the CPU speeds manually vs letting the OS do it automatically, and see its effect on the power usage.
I did not perform a lot of tests, but only concentrated on two tests that were carried out while running on battery.
Test 1 : HD Video playback
This included, watching a full HD video in full-screen using VLC and measuring the power usage while; letting Ubuntu to handle speeds automatically and after installing ‘indicator-cpufreq’ (and manually changing the speeds and set it to its lowest, 800 Mhz in this case).
Video file’s info: 1080p (H.264, 30 fps, 9 Mbps, MP3 Stereo, MKV).
I have tested many times (made sure to reboot the PC few times to minimize caching the data into RAM), sure the numbers changed here and there, nevertheless, after setting the lowest possible speed for my Core i3 mobile CPU, I saw an average power reduction of 2-3 Watts per second!.
After slowing down the CPU speed, because the Core i3 is a reasonably faster CPU, I did not encounter any playback issues either.
It might not sound like much, but, saving 2/3 Watts + for at least an hour and a half (assuming that it was a full HD movie) is a lot and should help to increase the battery life.
Test 2: Web browser test
This time, I opened Firefox web browser, cleared its cache, cookies and everything. Then rebooted the PC, let it idle, then fired up the ‘powerstat‘ tool and as soon as I did that, I opened the web browser by clicking on its icon on the ‘application launcher’ in Unity.
Then I opened four web pages (‘hecticgeek.com’, ‘cnn’, ‘nytimes’ and ‘Yahoo!’). Once all were fully loaded, I read the output of ‘powerstat’. This too was carried many times, without ‘indicator-cpufreq’ and with it installed and setting my CPU speed to its lowest possible.
Now due to the nature of the test, the numbers fluctuated a bit more than in the previous test. The web pages too loaded slightly quicker without throttling the CPU, but after slowing it down, though the page loaded slightly slower, still, it saved a lot of power (about 2.5-3.3 Watts on average).
But again, unlike the HD video test, it is difficult to get extremely accurate tests with this one as one has to do few things manually and hard to automate the process.
Also, please remember that, you might or might not see a reasonable change in the power consumption even after slowing it down using ‘indicator-cpufreq’. And even without throttling its speeds, if your CPU can barely keep up with HD video playback, then you should not do this either.
Plus, reducing the speeds too much will slow down the performance, so if your CPU is not like super fast, then setting it to the lowest possible speed might not be a good idea as well. That said however, if you have a newer & faster CPU, then using ‘indicator-cpufreq’ to manually throttle down the speeds has its uses! (at least in my Laptop). Good luck.
Update: This tool does not support Ubuntu 12.04 LTS.