Show Your Support: This site is primarily supported by advertisements. Ads are what have allowed this site to be maintained on a daily basis for the past 18+ years. We do our best to ensure only clean, relevant ads are shown, when any nasty ads are detected, we work to remove them ASAP. If you would like to view the site without ads while still supporting our work, please consider our ad-free Phoronix Premium.
How To Setup Radeon DPM On Ubuntu Linux
I have already delivered Radeon DPM preview benchmarks that show some of the impact of dynamic power management finally coming to the open-source Linux GPU driver. More benchmarks are now on the way from the latest Linux 3.11 Git code now that AMD's Alex Deucher has declared the DPM support in pretty good shape after several rounds of bug-fixes.
It's not too tricky to enable Radeon Dynamic Power Management support for the Linux driver at this point, but if you haven't been keeping up with all the Phoronix articles, here's the quick steps if you're an Ubuntu (or Ubuntu-based) Linux desktop user:
First of all, the Radeon DPM support is only for Radeon HD 2000 (R600) series graphics cards and newer. If you're using a really old ATI Radeon graphics card, the power management support is already tapped out on the open-source driver. The biggest areas where DPM will be of performance benefit is either using an AMD APU or a modern high-end graphics cards. For APUs and the latest high-end GPUs, their boot clock speeds can be rather low compared to their top-rated core/memory frequencies. Up to now the Radeon driver by default didn't set the hardware to run at these higher frequencies.
For other modern Radeon GPU users, dynamic power management will allow the GPU core and video memory (and their supplied voltages) to drop when the GPU is under minimal load, thereby conserving power and reducing heat output. This is especially good for Radeon laptop users or those simply aiming to reduce their PC's power consumption.
To use Radeon DPM you need the Linux 3.11 kernel or newer. For Ubuntu Linux users this requirement can be satisfied by simply using the Ubuntu mainline kernel PPA and fetching the latest daily Linux kernel image from this kernel.ubuntu.com directory for the very latest kernel to obtain all of the latest Radeon DRM fixes. When the Linux 3.11 kernel is stable, you can use that too.
Utilizing Radeon dynamic power management support requires updated firmware for the graphics card. The latest Radeon microcode/firmware can be downloaded from this directory. The new DPM firmware files needed are the *_smc.bin files from June. If you're unsure of your specific graphics card codename, you can generally find it from looking at the OpenGL renderer string with glxinfo or look at your dmesg for the missing firmware filename. You could also just download all of the firmware files too. The file(s) need to be placed within /lib/firmware/radeon. If you try to use Radeon DPM without the firmware, acceleration will end up being disabled for the GPU and there's a notice of the missing firmware in dmesg.
The Radeon DPM support is not enabled by default with Linux 3.11, so you must add radeon.dpm=1 to your Linux kernel configuration. For the steps to do so on Ubuntu, see the Ubuntu Wiki about the different ways.
With the Linux 3.11+ kernel, updated AMD microcode files, and the radeon.dpm kernel module parameter, you should be good to go. You can check on the Radeon DPM states via the new debugfs/sysfs entries.
While not required for Radeon DPM, at the same time you can also upgrade your Mesa stack for better Radeon Gallium3D performance. Easy ways to do that on Ubuntu-based distributions are through Oibaf's updated driver PPA.
Any question about the open-source Radeon Linux driver can be directed to our forums. Stay tuned for our extensive Radeon DPM open-source Linux graphics benchmarks.