Bug 206347

Summary: amdgpu.dc=1 breaks power management on RX480 and others
Product: Drivers Reporter: Victor Mataré (matare)
Component: Video(DRI - non Intel)Assignee: drivers_video-dri
Status: RESOLVED ANSWERED    
Severity: normal CC: alexdeucher, chb
Priority: P1    
Hardware: x86-64   
OS: Linux   
Kernel Version: 5.4.14 Subsystem:
Regression: No Bisected commit-id:
Attachments: dmesg
Xorg.0.log

Description Victor Mataré 2020-01-29 19:53:27 UTC
I've been using an AMD RX480 with amdgpu ever since it was supported (i.e. since ~4.8 I think). Somehow I almost got used to the fact that, when idling, it uses 15-20 Watt more than in Windows. Recently I investigated again and found that it simply never reduces the GPU clock below 1278Mhz.

I found this related bug report on freedesktop.org:
https://gitlab.freedesktop.org/drm/amd/issues/817

And this comment on Phoronix...
https://www.phoronix.com/forums/forum/linux-graphics-x-org-drivers/open-source-amd-linux/1046724-rx-580-idles-at-1300mhz-core-clock?p=1047617#post1047617

... which gave the crucial hint of setting amdgpu.dc=0

It is only with this setting that my GPU clock will be reduced to 300 MHz on idle as it should. My system runs perfectly fine, performance is good, and system idle power consumption is down to ~70W from the ~90W I had before. So I don't understand why we're wasting 20W by default on all those chips. Maybe there is something that should be fixed or it should default to off?
Comment 1 Alex Deucher 2020-01-30 00:16:37 UTC
Most boards clock down when idle.  What displays are you using?  Please attach your dmesg output and xorg log (if using X).
Comment 2 Alex Deucher 2020-01-30 00:18:15 UTC
dc is enabled by default because it supports a lot more display features and the non-DC code (audio, DP MST, advanced HDMI features, etc.).  On most boards it also clocks down fine.
Comment 3 Victor Mataré 2020-01-30 00:24:47 UTC
Created attachment 287029 [details]
dmesg

dmesg from a longer session with at least one suspend/resume cycle. Those GPU faults at the end were triggered by playing Civilization 6, but I noticed nothing of them. The game runs fine, i.e. no crashes, glitches or stutters.
Comment 4 Victor Mataré 2020-01-30 00:25:19 UTC
Created attachment 287031 [details]
Xorg.0.log
Comment 5 Victor Mataré 2020-01-30 00:27:20 UTC
I'm using a single 60Hz 4K display, connected via DisplayPort. KDE Desktop with OpenGL backend.
Comment 6 Artem S. Tashkinov 2023-09-27 12:58:33 UTC
Is this reproducible with 6.5.5 or 6.1.55?

If it is, please report here: https://gitlab.freedesktop.org/drm/amd/-/issues