I am using a AMD RX 7800 XT and noticed that my idle power consumption has went up recently from ~5-10W to ~30W. After some investigation I found out it was caused by the change to the default power profiles from BOOTUP_DEFAULT
to 3D_FULLSCREEN
in 6.13. When in 3D_FULLSCREEN
profile, the GPU memory clock won’t transition to the lowest clock speed and consuming extra ~20W (!!) of power.
To fix this, I have to manually change the power profile using following commands (as root):
echo 'manual' > /sys/class/drm/card1/device/power_dpm_force_performance_level
# check the available power profiles to get the index
cat /sys/class/drm/card1/device/pp_power_profile_mode
# normally 0 = BOOTUP_DEFAULT
echo 0 > /sys/class/drm/card1/device/pp_power_profile_mode
(you may need to change card1
to card0
depends on your system)
Note that the configuration is not persisted across reboot and you may encounter shuttering during gaming with BOOTUP_DEFAULT
.
I recommend to use tools like LACT to automatically apply the power profile on startup and also automatically switch the profile to 3D_FULLSCREEN
when running games.
Edit: you should check you current GPU idle power consumption first (with nvtop
or lm_sensors
) before applying the change, the issue may not affect all AMD GPU
Huh interesting. Are these displays all the exact same model?
There’s a relatively new feature in the amd gfx display abstraction layer called freesync power optimisation. This feature leverages panel VRR to help mclk idle low. This was introduced for single display use with RDNA 2, and expanded to dual display along with RDNA3s MALL advancements. I’m not sure if this is expanded further with RDNA 4 but I can try to find out.
Yep. I like me some symmetry.
Thanks very much; I would love to have all three displays freesyncing!