An Update On The Linux Power Situation In Ubuntu

Published on October 07, 2011
Written by Michael Larabel
Page 1 of 6
Discuss This Article

While I was away for three weeks, there was an update on LP bug #760131, the infamous bug report on the power consumption being raised significantly higher in Ubuntu Natty. This bug report of high importance now indicates a fix being committed to Natty and a fix being released for Oneiric, but what has changed? Here is an update.

As indicated on Phoronix back in April, there was a big kernel power regression in Linux 2.6.38, which showed up during some Ubuntu power testing. I ended up narrowing the biggest increase in power consumption down to a change in how PCI Express ASPM (Active State Power Management) is handled. ASPM used to be enabled on more systems, but with Linux 2.6.38 it's more conservative as otherwise problematic systems could hang. There is a workaround though and that is setting pcie_aspm=force at the kernel command line. It's worked for many users to increase their battery life, as indicated by many of the 189+ comments in the LaunchPad bug report, but it's still far from ideal. The proper solution though is for more Linux drivers to set the ASPM bits directly, for hardware where this PCI-E power management feature is properly supported. As of early October, no widespread work on this has been done upstream yet.

What changed in mid-September is that Tim Gardner, a Canonical employee part of the Ubuntu kernel team, requested an SRU (Stable Release Update) to get a commit from the upstream Linux kernel into Natty's 2.6.38 kernel. The commit in question is "abe48b108247e9b90b4c6739662a2e5c765ed114" from upstream, which is entitled "x86, intel, power: Initialize MSR_IA32_ENERGY_PERF_BIAS."

This is a patch that has been upstream in the mainline Linux kernel since the end of July, immediately following the Linux 3.0 kernel release and pushed during the Linux 3.1 kernel merge window. This patch was then sent to the stable tree as well, which was then released in the Linux 3.0.1 point release. This will be an SRU in Ubuntu 11.04 and is found in Ubuntu 11.10 since its kernel is based on Linux 3.0.1+, which has this stable back-port upstream.

What this patch does is initialize the MSR_IA32_ENERGY_PERF_BIAS machine state register to a value of "normal" by default. Most BIOS do not initialize that MSR, but when that does not happen, the default is to act as if MSR_IA32_ENERGY_PERF_BIAS is in its "performance" mode. When in the performance mode, the hardware will run at maximum performance, but not for maximum energy efficiency. What this patch does is just make sure the hardware starts out in the "normal" mode while later it can be switched to the "performance" mode.

<< Previous Page
1
Latest Hardware Reviews
  1. Intel Haswell HD Graphics 4600 vs. AMD Radeon Graphics On Linux
  2. Intel Haswell HD Graphics 4600 Performance On Ubuntu Linux
  3. Intel Core i7 4770K "Haswell" Benchmarks On Ubuntu Linux
  4. The First Experience Of Intel Haswell On Linux
Latest Software Articles
  1. Optimized Binaries Provide Great Benefits For Intel Haswell
  2. 11-Way Linux, BSD Platform Comparison
  3. SNA Acceleration Works Great For Intel Core i7 Haswell
  4. The Linux Evolution For Intel Haswell's Performance
Latest Linux News
  1. NVIDIA Driver Soon Likely To Support EGL, Mir
  2. OpenMandriva Goes Into Alpha Form, Russian-Based
  3. NVIDIA Brings Their Linux Driver To ARM
  4. D Language Still Showing Promise, Advancements
  5. Planetary Annihilation Released For Linux Gamers
  6. Gentoo Starts Work On KDE-Wayland Support
  7. NVIDIA To License Its Kepler GPU Technology
  8. KDE's KWin Made Lots Of Progress In 4.11
  9. Ubuntu Announces Carrier Advisory Group
  10. Qt 5.1 Release Candidate 1 Has Arrived
  11. In-Fighting Continues Over Mir On Non-Unity Ubuntu
Latest Forum Talk
  1. OpenMandriva Goes Into Alpha Form, Russian-Based
  2. D Language Still Showing Promise, Advancements
  3. Gentoo Starts Work On KDE-Wayland Support
  4. NVIDIA Driver Soon Likely To Support EGL, Mir
  5. NVIDIA Brings Their Linux Driver To ARM
  6. Ubuntu Announces Carrier Advisory Group
  1. Computers
  2. Display Drivers
  3. Graphics Cards
  4. Motherboards
  5. Peripherals
  6. Processors
  7. Software
  8. Operating Systems
  9. All Articles
  1. Linux Benchmarking
  2. OpenBenchmarking.org
  3. Phoronix Test Suite