Intel Introduces PowerClamp Driver For Linux

Posted by Michael Larabel on November 15, 2012

Linux kernel developers have created an Intel PowerClamp driver, which is an experiment with idle injection for Intel hardware to take advantage of power-efficient package-level C-states for power capping and passive thermal control. Separately, Intel RAPL (Running Average Power Limit) support is now exposed through TurboStat.

The kernel documentation for the Intel PowerClamp driver describes its use as:
Consider the situation where a systemâs power consumption must be reduced at runtime, due to power budget, thermal constraint, or noise level, and where active cooling is not preferred. Software managed passive power reduction must be performed to prevent the hardware actions that are designed for catastrophic scenarios.

Currently, P-states, T-states (clock modulation), and CPU offlining are used for CPU throttling.

On Intel CPUs, C-states provide effective power reduction, but so far they're only used opportunistically, based on workload. With the development of intel_powerclamp driver, the method of synchronizing idle injection across all online CPU threads was introduced. The goal is to achieve forced and controllable C-state residency.

Test/Analysis has been made in the areas of power, performance, scalability, and user experience. In many cases, clear advantage is shown over taking the CPU offline or modulating the CPU clock.
For Intel "Nehalem" CPUs and later, there is package-level C-state residency available through model-specific registers (MSRs) and other features to make this all work out. This Intel Linux kernel driver is principally authored by Arjan van de Ven and Jacob Pan.

The patches implementing this PowerClamp support can be found on the Linux kernel list and will potentially be merged for the Linux 3.8 kernel.

On a related note, there's also new Intel TurboStat patches on the kernel list that are queued for Linux 3.8 as well. The new feature here is that the turbostat utility can print the power consumption in Watts as reported by hardware RAPL counters. RAPL is the Running Average Power Limit, a new feature to modern Intel CPUs to enforce power consumption limits and to read the power consumption of different components.

Discuss this article in our forums, IRC channel, or email the author. You can also follow our content via RSS and on social networks like Facebook, Identi.ca, and Twitter (@Phoronix and @MichaelLarabel). Subscribe to Phoronix Premium to view our content without advertisements, view entire articles on a single page, and experience other benefits.
Latest Hardware Reviews
  1. Sumo Lounge Emperor
  2. Gallium3D Continues Improving OpenGL For Older Radeon GPUs
  3. 15-Way Open vs. Closed Source NVIDIA/AMD Linux GPU Comparison
  4. Nouveau vs. NVIDIA Linux Comparison Shows Shortcomings
Latest Software Articles
  1. Btrfs vs. EXT4 vs. XFS vs. F2FS On Linux 3.10
  2. AMD Radeon R600 GPU LLVM 3.3 Back-End Testing
  3. F2FS File-System Shows Regressions On Linux 3.10
  4. Previewing The Radeon Gallium3D Shader Optimizations
Latest Linux News
  1. Mageia 3 Released, Still Using Legacy GRUB
  2. NetBSD 6.1 Brings In More Features
  3. Using Six Monitors With AMD's Open-Source Linux Driver
  4. Benchmarking The Intel P-State, CPUfreq Changes
  5. FreeBSD Still Working On Next-Gen Package Manager
  6. DNF Still Advancing As Experimental Yum For Fedora
  7. Logitech Begins Supporting Linux Users
  8. Modern Intel Gallium3D Driver Still Being Toyed With
  9. Linux 3.10 Kernel Benchmarks On A Core i7 Laptop
  10. GCC 4.8.1 Compiler Due To Be Out Next Week
  11. Linux 3.10 Kernel Benchmarks For Intel Ivy Bridge
Latest Forum Talk
  1. Using Six Monitors With AMD's Open-Source Linux...
  2. Mageia 3 Released, Still Using Legacy GRUB
  3. Sumo Lounge Emperor
  4. BHyVe: A New Hypervisor Coming To FreeBSD 10.0
  5. Benchmarking The Intel P-State, CPUfreq Changes
  6. DRM Moves Ahead With HTML5 Specification
  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