You are not logged in.

#1 2025-01-12 12:57:05

insanex3
Member
Registered: 2024-09-03
Posts: 7

[SOLVED] amdgpu: GPU in low power mode until I run CoreCtrl

Hello,

I have an issue with my RX7900XTX. Whenever I start a game (WoW, Assassins Creed, Minecraft) I get very unstable and low FPS. This issue arose someday, but I don't know, if I might by accident have installed some package, which could cause such an issue.

After I fiddled around a bit, I figured out, that when I run CoreCtrl, but leave everything to automatic, everything magically has normal performance again and the FPS are stable.

I checked the power profile of the card before and after running CoreCtrl but none of those values change, they all stay the same, but still the GPU gets its full power back.

I also tried using lact, but that doesnt give the same effect that CoreCtrl does.

Does anyone have an idea?

cat /sys/class/drm/card1/device/pp_power_profile_mode
PROFILE_INDEX(NAME) CLOCK_TYPE(NAME) FPS MinActiveFreqType MinActiveFreq BoosterFreqType BoosterFreq PD_Data_limit_c PD_Data_error_coeff PD_Data_error_rate_coeff
 0 BOOTUP_DEFAULT :
                    0(       GFXCLK)       0       1       0       4     800 4587520  -65536       0
                    1(         FCLK)       0       3       0       1       0 3276800  -65536   -6553
 1 3D_FULL_SCREEN*:
                    0(       GFXCLK)       0       0    1200       4     650 5242880   -3276  -65536
                    1(         FCLK)       0       3       0       3       0 1310720   -6553   -6553
 2   POWER_SAVING :
                    0(       GFXCLK)       0       1       0       3       0 5898240  -65536       0
                    1(         FCLK)       0       1       0       1       0 3407872  -65536   -6553
 3          VIDEO :
                    0(       GFXCLK)       0       1       0       4     500 4587520  -65536       0
                    1(         FCLK)       0       3       0       3       0 3473408  -65536   -6553
 4             VR :
                    0(       GFXCLK)       0       2    1000       1       0 3276800       0       0
                    1(         FCLK)       0       3       0       3       0 1310720   -6553   -6553
 5        COMPUTE :
                    0(       GFXCLK)       0       2    1000       1       0 3932160       0       0
                    1(         FCLK)       0       3       0       3       0 1310720   -6553   -6553
 6         CUSTOM :
                    0(       GFXCLK)       0       0    1200       4       0  655360   -3276  -65536
                    1(         FCLK)       0       3       0       3       0 1310720   -6553   -6553
 7      WINDOW_3D :
                    0(       GFXCLK)       0       0    1200       4     650 5242880   -3276  -65536
                    1(         FCLK)       0       3       0       3       0 1310720   -6553   -6553
cat /sys/class/drm/card1/device/power_dpm_force_performance_level
auto
cat /sys/class/drm/card1/device/power_dpm_state
performance
cat /sys/class/drm/card1/device/power_state
D0
uname -r
6.12.7-arch1-1

EDIT:
I just found the issue.
In my Plasma power management settings, I had "Switch power profile to" set to "Power save". After I changed that to "Balanced" everything was fine again. To me this seemed like this setting would only kick in, if I am inactive.
xND1frW.png

Last edited by insanex3 (2025-01-12 16:00:11)

Offline

#2 2025-01-12 13:50:56

Xephon
Member
Registered: 2024-12-22
Posts: 181

Re: [SOLVED] amdgpu: GPU in low power mode until I run CoreCtrl

Seems like you have a hybrid graphics system where games predominately use iGPU while dGPU is being powered down/disabled. Running CoreCtrl reactivates your dGPU.

Some links that might be relevant:
https://wiki.archlinux.org/title/PRIME# … rs_-_PRIME
https://wiki.archlinux.org/title/AMDGPU#Troubleshooting paragraphs 6.10; 6.12

Offline

#3 2025-01-12 14:04:24

insanex3
Member
Registered: 2024-09-03
Posts: 7

Re: [SOLVED] amdgpu: GPU in low power mode until I run CoreCtrl

Thanks for your answer.

It's a desktop PC with a 13600K. I dont (atleast not intended) use the iGPU of the CPU.

Also, when I am having the low power issue, I see that the GPU is indeed doing something, so I think it is not running on the iGPU.

Also, in WoW when I open the graphics card dropdown, it shows my RX7900XTX but it says in parentheses (Low Power).

Edit: I also have been using the kernel parameter amd.runpm=0, when the issue started appearing and removed it later on in hopes to fixing this.

Last edited by insanex3 (2025-01-12 14:11:29)

Offline

#4 2025-01-12 14:33:59

cryptearth
Member
Registered: 2024-02-03
Posts: 1,684

Re: [SOLVED] amdgpu: GPU in low power mode until I run CoreCtrl

I'm not sure about a possible driver regression of amdgpu in the kernel but without any explicit action amd cards should come up in full automatic self control for power management and fancontrol
do you run any service that interact with the system during boot like some rgb or liquid cooling control?

as for wow: the cpu should be powerful enough to render that in software mode without any gpu at all - pretty much as with doom, half-life or crysis one can run wow on pretty much any potato so if for some reason the igpu would be used it should get you better performance than your 7900 in standby

Last edited by cryptearth (2025-01-12 14:36:40)

Offline

#5 2025-01-12 14:42:22

insanex3
Member
Registered: 2024-09-03
Posts: 7

Re: [SOLVED] amdgpu: GPU in low power mode until I run CoreCtrl

Thanks for your reply. I just checked my systemd startup processes:

UNIT FILE                           STATE   PRESET
avahi-daemon.service                enabled disabled
bluetooth.service                   enabled disabled
fancontrol.service                  enabled disabled
getty@.service                      enabled enabled
lactd.service                       enabled disabled
lm_sensors.service                  enabled disabled
mullvad-daemon.service              enabled disabled
mullvad-early-boot-blocking.service enabled disabled
NetworkManager-dispatcher.service   enabled disabled
NetworkManager-wait-online.service  enabled disabled
NetworkManager.service              enabled disabled
sddm.service                        enabled disabled
systemd-timesyncd.service           enabled enabled
vmware-networks.service             enabled disabled
vmware-usbarbitrator.service        enabled disabled
avahi-daemon.socket                 enabled disabled
systemd-userdbd.socket              enabled enabled
remote-fs.target                    enabled enabled

18 unit files listed.
systemctl list-unit-files --user --state=enabled
UNIT FILE                    STATE   PRESET
go-hass-agent.service        enabled enabled
openrazer-daemon.service     enabled enabled
pipewire-pulse.service       enabled enabled
wireplumber.service          enabled enabled
xdg-user-dirs-update.service enabled enabled
p11-kit-server.socket        enabled enabled
pipewire-pulse.socket        enabled enabled
pipewire.socket              enabled enabled

8 unit files listed.

Only thing here sticking out to me, is the "fancontrol.service", but I know, that this was installed, after I already had that issue for a while. Anything else that may stick out to you?

I agree with you. It renders fine and I am getting 100-200FPS, but the fps will drop to 40-50 every 3-5 seconds, which makes it very unusable. After CoreCtrl is launched, i have 300-400 FPS and no drops anymore.

Btw, nowadays, the retail WoW needs at least some juice to run properly, you wont be able to play it properly otherwise. My laptop with a mobile RTX3060 struggles pretty hard with the current WoW. Especially in zones where lots of characters are.

Offline

#6 2025-01-12 14:43:03

Xephon
Member
Registered: 2024-12-22
Posts: 181

Re: [SOLVED] amdgpu: GPU in low power mode until I run CoreCtrl

insanex3 wrote:

...I see that the GPU is indeed doing something...

What app do you use to see that? Does it show power consumption of your GPU?

The easiest way to establish that your dGPU is not being utilized properly is to turn off Intel iGPU in UEFI  and check FPS after that.

Did you try DRI_PRIME=1?

Offline

#7 2025-01-12 14:46:26

insanex3
Member
Registered: 2024-09-03
Posts: 7

Re: [SOLVED] amdgpu: GPU in low power mode until I run CoreCtrl

Xephon wrote:
insanex3 wrote:

...I see that the GPU is indeed doing something...

What app do you use to see that? Does it show power consumption of your GPU?

The easiest way to establish that your dGPU is not being utilized properly is to turn off Intel iGPU in UEFI  and check FPS after that.

Did you try DRI_PRIME=1?

I use "Mission Center" to monitor the GPU. I see utilization and power usage going up.

Okay, thanks. I will try turning it off in UEFI, if it isn't already.

lspci | grep VGA
03:00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Navi 31 [Radeon RX 7900 XT/7900 XTX/7900 GRE/7900M] (rev c8)

Nope, didn't try that yet. I ran

glxinfo | grep "OpenGL renderer"
OpenGL renderer string: AMD Radeon RX 7900 XTX (radeonsi, navi31, LLVM 18.1.8, DRM 3.59, 6.12.7-arch1-1)

and thought, if that already runs on the correct GPU, i don't need that anyways.
Pls correct me if I'm wrong.


EDIT: I just checked my BIOS, the iGPU already has been disabled.

Last edited by insanex3 (2025-01-12 15:01:59)

Offline

#8 2025-01-12 15:04:15

Xephon
Member
Registered: 2024-12-22
Posts: 181

Re: [SOLVED] amdgpu: GPU in low power mode until I run CoreCtrl

You have lactd.service running which might have been used to set power cap for your GPU

Try monitoring power output in nvtop instead of Mission Center. It shows current power/max power in W

Last edited by Xephon (2025-01-12 15:04:51)

Offline

#9 2025-01-12 15:07:30

insanex3
Member
Registered: 2024-09-03
Posts: 7

Re: [SOLVED] amdgpu: GPU in low power mode until I run CoreCtrl

Thanks for the reply. I can try disabling "lact" again. Although I just installed lact today, while I was testing this stuff. I have this issue for a few months now.

I think you mean "amdgpu_top", since nvtop is only for Nvidia GPUs, right?

Offline

#10 2025-01-12 15:17:56

Xephon
Member
Registered: 2024-12-22
Posts: 181

Re: [SOLVED] amdgpu: GPU in low power mode until I run CoreCtrl

nvtop stands for neat videocard top, it has nothing to do with Nvidia

Offline

#11 2025-01-12 15:50:17

insanex3
Member
Registered: 2024-09-03
Posts: 7

Re: [SOLVED] amdgpu: GPU in low power mode until I run CoreCtrl

Oh sorry, my bad big_smile
Here i played the game without CoreCtrl running. The power draw never exceeded 95W.
NnmmIHp.png

Here i played the game with CoreCtrl running (i started it when the graphs spiked up). Here the power draw goes up to 300W
Eghu697.png

I also noticed, the performance continues to stay good, even after i quit CoreCtrl, so I must be setting something, which causes the card to perform normally.

Offline

#12 2025-01-12 15:57:56

insanex3
Member
Registered: 2024-09-03
Posts: 7

Re: [SOLVED] amdgpu: GPU in low power mode until I run CoreCtrl

I just found the issue.
In my Plasma power management settings, I had "Switch power profile to" set to "Power save". After I changed that to "Balanced" everything was fine again. To me this seemed like this setting would only kick in, if I am inactive.
xND1frW.png

Last edited by insanex3 (2025-01-12 15:58:17)

Offline

#13 2025-01-12 16:13:03

cryptearth
Member
Registered: 2024-02-03
Posts: 1,684

Re: [SOLVED] amdgpu: GPU in low power mode until I run CoreCtrl

I might be wrong - but this setting seem to be related for mobile devices and is usually split between "on ac" and "on battery" - so my possible wrong guess is: the context is missing that this setting is meant for switching between powerprofiles when plugging in a laptop to automatically go from power saving to full blast - and vice-versa throttle back when AC is lost/unplugged
about the "when inactive" - hm, not sure - but it seems it doesn't do what one would assume it does

fun fact: when I try to open power management I just get a "service not running" error screen

Offline

Board footer

Powered by FluxBB