Show Your Support: Did you know that you can get Phoronix Premium for under $4 per month? Try it today to view our site ad-free, multi-page articles on a single page, and more while the proceeds allow us to write more Linux hardware reviews. At the very least, please disable your ad-blocker.
Dynamic GPU Power-Off Support For DRM Drivers
X.Org and the major open-source graphics drivers (Intel / Radeon / Nouveau) can now support PRIME DRI2 buffer sharing between drivers for laptops/computers with two GPUs (e.g. NVIDIA Optimus laptops) but with this support at present, even when sending the work to the other GPU, both GPUs remain powered up. So there really isn't any point to the current Optimus support when both GPUs end up being powered regardless of whether they're being utilized.
Fortunately, David Airlie posted patches for the DRM drivers to allow dynamic power off support. This dynamic power off support is targeting NVIDIA Optimus and AMD PowerXpress systems that can handle the secondary GPU being explicitly powered off. Airlie says, "Now that I've added X server support for secondary GPUs, it makes sense to start powering them down more often if we can. I've tested this code on two laptops, one intel/nouveau one intel/radeon It works, powertop says I use 5-6W less power."
This start of Linux GPU dynamic power off support is being implemented at present for the Radeon and Nouveau DRM drivers. Changes for providing this support are also needed within the Linux kernel's VGA switcheroo component.
The patches have received some criticism so far for basically re-inventing the existing Linux dynamic power management layer within the kernel. Airlie's reasoning for doing this is that there's three specific ACPI calls to power off the graphics processor slot for NVIDIA, Radeon, and Apple hardware rather than something completely generic. Plus he wanted to have some simple code for demo purposes.
The patches can currently be found on dri-devel and will hopefully be merged into the Linux 3.7 kernel.