1. Computers
  2. Display Drivers
  3. Graphics Cards
  4. Memory
  5. Motherboards
  6. Processors
  7. Software
  8. Storage
  9. Operating Systems


Facebook RSS Twitter Twitter Google Plus


Phoronix Test Suite

OpenBenchmarking.org

The Current State Of Radeon Power Management

Michael Larabel

Published on 7 December 2011
Written by Michael Larabel
Page 1 of 10 - 11 Comments

It's been a while since last looking at the state of power management for Radeon GPUs, but here's an updated look at the various options surrounding power management for modern ATI/AMD graphics processors and their effectiveness. Various drivers, graphics cards, and tuning options are compared.

On the Linux open-source side for the Radeon driver, the support is generally better than on the NVIDIA side with the community-developed Nouveau driver (there's still missing re-clocking support for Fermi, etc) but it's not generally as good as the proprietary Catalyst driver under Linux. The open-source Radeon driver does not engage in any dynamic power management by default, but it must be manually controlled. What makes matters worse is that these options must be controlled by writing to sysfs nodes, which isn't exactly great for making the Linux desktop very friendly compared to just firing up the AMD Catalyst Control Center and toggling a few options from a polished user-interface. The default behavior for the open-source Radeon KMS driver is to just run the graphics card at its default clocks without changing the power state. Regardless of whether the system is under load or idling, the same core and memory clocks are used and at the same voltage stepping.

The dynamic power management of the open-source Radeon driver comes via writing dynpm to the /sys/class/drm/card0/device/power_method interface. The "DynPM" option results in the clocks / voltage states being dynamically adjusted based upon the GPU load (the number of pending fences is used to calculate this), which allows most Radeon GPUs to run with lower clock speeds and voltages when the GPU is idling. Partly why this option is not used by default is that the support is not perfect and can produce some visual deficiencies. Clock speeds need to be adjusted during vertical blanks when nothing is being scanned out from video memory, but this doesn't always happen, so at times there can be a screen flicker when stepping between states. This option also only works in single-display configurations.

The Radeon driver can also use a profile-based power management method. This is done by writing profile to the /sys/class/drm/card0/device/power_method interface and then writing a value of default, auto, low, mid, or high to the /sys/class/drm/card0/device/power_profile interface. The default value is the same as what is the default when the graphics card boots up and the Radeon DRM driver loaded. The automatic mode attempts to switch between mid and high power states when the mobile system switches between battery states, so that you're running with reduced speed and power when on battery power but can switch to better performance when on AC power.

The low power profile obviously forces the graphics card to operate in its lowest power state at all times regardless of GPU load. The mid power profile puts the GPU into its middle power state constantly, but not all graphics cards tested could support this mode. The high power profile then forces the graphics card to run in its highest power/performance states. The only time these static profiles are changed is when all displays are in a DPMS off state, in which case the GPU automatically is lowered to its low-power state. These options are talked about on the X.Org Wiki.

The Catalyst Linux driver meanwhile fully supports PowerPlay and other power savings features as found in the Windows Catalyst driver. This power management can be seamless and manually toggled via AMD's utilities. The Catalyst driver also supports OverDrive for pushing the graphics card further, but I digress. None of these options is new to Linux, but just a recap before running the new Radeon power tests.

<< Previous Page
1
Latest Linux Hardware Reviews
  1. Even With Re-Clocking, Nouveau Remains Behind NVIDIA's Proprietary Linux Driver
  2. The Power Consumption & Efficiency Of Open-Source GPU Drivers
  3. AMD R600g/RadeonSI Performance On Linux 3.16 With Mesa 10.3-devel
  4. Intel Pentium G3258 On Linux
Latest Linux Articles
  1. AMD Catalyst 14.6 Does Slightly Better With APITest OpenGL Tests
  2. Updated Source Engine Benchmarks On The Latest AMD/NVIDIA Linux Drivers
  3. Nouveau vs. Radeon vs. Intel Tests On Linux 3.16, Mesa 10.3-devel
  4. KVM Benchmarks On Ubuntu 14.10
Latest Linux News
  1. Belkin's WRT54G Router Successor Is Crap On The Software Front So Far
  2. QEMU 2.1 Officially Released
  3. XBMC Is Being Renamed To "Kodi"
  4. SteamOS Beta 126 Better Handles XBMC
  5. Ubuntu 14.10 Alpha 2 Released
  6. KDE 4.14 Release Candidate Ships
  7. Drivers & Drama Dominated Linux Talk In July
  8. Fedora Assembles A Security Team
  9. AMD Launches The A10-7800, The 65 Watt Kaveri
  10. Builder: A New Development IDE Being Built For GNOME
Latest Forum Discussions
  1. Grand Theft Auto Running On Direct3D Natively On Linux Shows Gallium3D Potential
  2. Updated and Optimized Ubuntu Free Graphics Drivers
  3. Linus Torvalds On GCC 4.9: Pure & Utter Crap
  4. Updated graphics drivers for Ubuntu 12.04 Precise LTS
  5. Debian + radeonsi
  6. AMD Publishes Open-Source Linux HSA Kernel Driver
  7. Open-source drivers on ATI R7 260X
  8. AMD Athlon 5350 APU On Linux