The Dynamic Power Management (DPM) project explores technologies to
improve power conservation capabilities of platforms based on open
source software. Of particular interest are techniques applicable to
running systems, adjusting power parameters on-the-fly while ensuring
realtime deadlines of running software are met. DPM software exploits
recent advances in hardware to scale clocking information (such as CPU
and core bus frequencies) and core voltages with low latency. This
allows these parameters to be adjusted very frequently in order to
realize power savings during brief idle periods or execution of tasks
with lower performance and power demands. Our work so far targets the
Linux operating system and the characteristics of hardware used for
embedded Linux. Ongoing DPM investigations are attuned to the
requirements of vendors of consumer electronics devices, such as the
members of the Consumer
Electronics Linux Forum, and embedded silicon vendors who have
requested enhanced power management capabilities for Linux.
The DPM project results from a collaboration between the IBM Austin
Research Lab and MontaVista Software.
The Sourceforge DPM Project
We hope to spark community interest to improve the dynamic
properties of Linux power management, as well as to investigate and
implement further power management features for embedded environments.
We also hope to begin discussion on how to integrate these ideas with
other power management technologies and community efforts such as the
Linux-2.6 PM and sysfs infrastructure, the cpufreq interfaces and
drivers for setting CPU frequencies, ACPI-based systems, and so forth.
Among the present and planned activities for DPM are:
Adding support for more platforms.
Integrating dynamic power management with standby/suspend/hibernate
low-power states, and extending ACPI-inspired standby support for
embedded devices that feature a variety of low-power "sleep" states.
- Power policy management for tightly integrated application
environments on consumer electronics devices, allowing the system
designer precise control over numerous platform power parameters.
- Automated power policy management that automatically
selects desired power parameters based on system state, such as CPU
- Reliably suspend and resume devices actively in use at
suspend time through staged calls into drivers to suspend and lockout
of new requests during a suspend period.
- Integrate management of platform power parameters with
device requirements, scaling device power parameters or powering off
devices in response to platform changes that affect operation of
devices. Possibly constrain power state transitions based on the needs
of devices actively in use.
- Very fast application restart on resume while slower,
hotplug-capable devices are rescanned.