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. NVIDIA GeForce GTX 970 Offers Great Linux Performance
  2. CompuLab Intense-PC2: An Excellent, Fanless, Mini PC Powered By Intel's i7 Haswell
  3. From The Atom 330 To Haswell ULT: Intel Linux Performance Benchmarks
  4. AMD Radeon R9 285 Tonga Performance On Linux
Latest Linux Articles
  1. AMD Moves Forward With Unified Linux Driver Strategy, New Kernel Driver
  2. MSI: Update Your BIOS From The Linux Desktop
  3. NVIDIA vs. AMD 2D Linux Drivers: Catalyst Is Getting Quite Good At 2D
  4. 15-Way GPU Comparison With Mesa 10.3 + Linux 3.17
Latest Linux News
  1. Debian Now Defaults To Xfce On Non-x86 Desktops
  2. Phoenix Is Trying To Be An Open Version Of Apple's Swift
  3. Linux 3.19 To Have Skylake Graphics, PPGTT Enablement
  4. Ubuntu 16.04 Might Be The Distribution's Last 32-Bit Release
  5. Imagination Releases Full ISA Documentation For PowerVR Rogue GPUs
  6. Features GNOME Developers Want In The Linux Kernel
  7. GTK+ Gains Experimental Overlay Scrollbars
  8. Phoronix Test Suite 5.4 M3 Is Another Hearty Update
  9. GParted 0.20 Improves Btrfs Support
  10. EXT4 In Linux 3.18 Has Clean-ups, Bug Fixes
Latest Forum Discussions
  1. Users/Developers Threatening Fork Of Debian GNU/Linux
  2. Proof that strlcpy is un-needed
  3. xbox one tv tuner
  4. HOPE: The Ease Of Python With The Speed Of C++
  5. Bye bye BSD, Hello Linux: A Sys Admin's Story
  6. Updated and Optimized Ubuntu Free Graphics Drivers
  7. NVIDIA Presents Its Driver Plans To Support Mir/Wayland & KMS On Linux
  8. AMD Is Restructuring Again, Losing 7% Of Employees