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
I killed Firefox and waited a while, and now I’m seeing 17-19W.
huh, I generally expect Vega10 based GPUs to idle at ~3W TGP (not inclusive of other board power losses like VRM). Can you tell us what you display setup is? Can you get a reading of your idle mclk using something like CoreCtrl?
Display setup is 3x 1440p 100Hz.
I can’t give you any new readings because I just took the computer apart to do upgrades. This one is getting a 9070 XT, and the Vega is getting handed down to my home server for (hopefully, if it’s capable of it) Jellyfin transcoding and local LLM duty.
That means I’ll still be very interested in making sure it idles properly since it’ll be doing so almost 24/7, but it’ll have to wait a minute because getting it installed isn’t my priority.
(The desktop upgrade is complicated because the new card is too wide to fit in my old case, which sent me down a rabbit hole of picking out a new SFF case and replacing supporting components like the PSU and CPU cooler…)
These older (maybe also current) amd gpus for some reason defaults to higher vram speeds when a monitor has mor than 60hz. The fix requires generating a custom edid file, which is a great pain in the ass to get to work