Kernel Power Management

Registered by Leann Ogasawara on 2011-11-10


Blueprint information

Pete Graner
Colin Ian King
Colin Ian King
Series goal:
Accepted for precise
Milestone target:
milestone icon ubuntu-12.04
Started by
Andy Whitcroft on 2011-11-17
Completed by
Colin Ian King on 2012-10-24

Related branches



Work items for ubuntu-12.04:
[colin-king] define a testing methodology: DONE
[colin-king] Write ACPI battery power measuring tool for laptop users (git:// DONE
[colin-king] Tools/Methodology to graph Fluke power readings: DONE
[colin-king] Client test framework + tests: DONE
[colin-king] Calibrate ACPI battery readings vs read power readings ( DONE
[colin-king] 32, 32-pae, 64 bit comparisons: DONE
[colin-king] Measure/validate all existing PM options: ( DONE
[colin-king] Crowd source PM power.d improvements: DONE
[colin-king] Look at power of BlueTooth off options when in S3 ( DONE
[colin-king] Measure power consumption of mouse events, should we bother to reduce them: see : DONE
[colin-king] Measure different backgrounds + i915 framebuffer compression: ( DONE
[colin-king] Measure black/white pixels on blanked screen: ( DONE
[colin-king] Measure CPU config tweaks: ( DONE
[colin-king] Investigate Intel power policy mode (aka MSR_IA32_ENERGY_PERF_BIAS) ( DONE
[colin-king] Look at power top recommendations, how much they save, are they reasonable to turn on by default: ( DONE
[colin-king] Compare UEFI vs BIOS (low priority) ( DONE
[colin-king] Identify rogue tasks (wakeups) on a default install ( DONE
[colin-king] Identify rogue tasks (CPU utilization) on a default install ( DONE
[colin-king] Measure Desktop power consumption, Unity 2D vs 3D, etc ( DONE
[colin-king] Sanity check HDD wakeups, when, how, frequency, etc: ( DONE
[colin-king] Crowd source + measure PCIe ASPM fixes ( DONE
[colin-king] Investigate Phoronix Power tests: DONE
[colin-king] Measure power consumption over a range of releases ( DONE
[colin-king] Measure power consumption over Unity, Gnome Classic, Gnome Classic no-effects ( DONE
[colin-king] Investigate power consumed by backlight ( DONE
[colin-king] Compare Win7 to Ubuntu: ( DONE
[colin-king] Measure i915 and drm power saving options: ( DONE
[colin-king] Write documentation on how to find misbehaving applications: ( DONE
[colin-king] Investigate LVDS down clocking ( DONE
[colin-king] hdparm spin down time setting ( DONE
[colin-king] IRQ balancing: POSTPONED

PM Braindump:

- policy
 - policy AC/!AC does it still make sense for each option
 - is that enough?

* accurately calibrate a set of battery power measurements via /proc/acpi/battery and see how reliably these are
* investigate Intel power policy mode
* identify rogue tasks
* crowd sourcing measurements + improvements
* mouse events - can they be reduced? (granularity)
* bluetooth turn off, and when in S3/S4
* flight mode - power nap
* HDD busy
        identify - what's causing disk wakeups
        why? frequency? what's doing that?
 * powertop recommendations:
Look at dumb power top issues like PCI settings being off
        e.g.power top reports we are in BAD mode.
        Can we enable good w/o causing unreliability?
 * Compare UEFI verses BIOS on like for like tests
 * Measure black verses white pixels on screen blank
 * 32, 32-pae vs 64 bit

Existing PM Options: (see /usr/lib/pm-utils/power.d et al)
 - APM: enabled on all disks
 - anacron: disabled
 - wol: disabled
  - allows PHY to be powered down
 - hal: disable CD poll
  - halsectomy ???
 - intel audio power save
  - is this enabled?
  - is there a non intel equivalent?
 - ext3 commit timeout
  - is there a btrfs equivalent
 - laptop-mode
  - attempts to batch writes
 - pcie_aspm
  - more power conservative mode
 - block device read ahead
  - ???
 - Sata link management
  - ALPM can we turn that back on?
 - scheduler placement
 - wireless power savings
  - reducing transmit power etc
 - XFS buffering

Other options:
 - audio power save, can we start using this
 - USB power saving?
 - video settings
  - framebuffer compression 'boundaries'
  - clock settings
 - LCD set to white saves power over black
  - can we measure this, use with? dpms
 - off the shelf machines with issues
 - review phoronix stuff

Powertop - broken?

 - suspended not turning everything off
 - idle power consumption
  - natty/oneiric (virgin install, just kernel)
  - daily iso comparisons
   - hand off to QA for QQ
 - identifying power suckers
 - are there other things we can switch
  - power policy in the processor (MSR)
 - recommendations


Work Items

Dependency tree

* Blueprints in grey have been implemented.

This blueprint contains Public information 
Everyone can see this information.