GPU Utilization/Power Drops with Inputs

At around 55 minutes after booting up a game, the utilization and power of the GPU will drop significantly in response to moving the mouse or inputing keys.

I am using Goverlay/Mangohud to monitor this performance issue in game and proton experimental for game compatibility.

The Problem: The GPU performance is running at 2562mhz, drawing 301w at 100% utilization around 71c. And from 55 minutes more or less exactly into starting a game, moving the mouse or inputing any keys will drop the GPU performance to between 23mhz and 1400mhz, dropping power draw to 107w or lower and dropping usage down to around 64%.

The effect on performance is a drop from around 114fps down to 37fps with the frametime showing it is rapidly going between 6.5ms and 69.1ms while an input is held.

Rebooting the game brings performance back to normal, the issue starts again after another 55 minutes.

Not moving the mouse or holding any keys the game will run normal.

Moving the mouse outside the game when tabbed or in other programs doesnt cause stuttering or any power/utilization drops after this 55 minute window.

This issue affects all games in my steam libary.

Inputting say, W to walk forward will begin the aforementioned performance drop, but if another key is pressed and released while the W is still held, performance will normalise despite the input. But if W is released and reinputted it will begin dropping performance again.

The timer of 55 minutes I consistently timed on a stopwatch from the moment the game opened a window until inputs dropped performance.

I could not really figure this next part out fully, I found being tabbed out for 55 minutes and coming back to the game to do more tests on the issue, I found the game would still be performing normally. I believe the game window has to be in focus for around 55 minutes for the performance to drop. I could not confirm the full extent of this behaviour.

My linux power settings are set to performance and I do not run any overlays in game normally outside testing this current issue. Do not have much technical experience with linux or troubleshooting in general, any help appreciated.

System:
Kernel: 6.12.10-zen1-1-zen arch: x86_64 bits: 64 compiler: gcc v: 14.2.1
clocksource: tsc avail: hpet,acpi_pm
parameters: BOOT_IMAGE=/@/boot/vmlinuz-linux-zen
root=UUID=b3976b77-94c4-4857-b98a-9f42ea516c54 rw rootflags=subvol=@
quiet quiet rd.udev.log_priority=3 vt.global_cursor_default=0 loglevel=3
ibt=off
Desktop: KDE Plasma v: 6.2.5 tk: Qt v: N/A info: frameworks v: 6.10.0
wm: kwin_wayland vt: 1 dm: SDDM Distro: Garuda base: Arch Linux
Machine:
Type: Desktop Mobo: Gigabyte model: X670 GAMING X AX v: x.x
serial: <superuser required> uuid: <superuser required> UEFI: American
Megatrends LLC. v: F30 date: 05/22/2024
CPU:
Info: model: AMD Ryzen 7 7800X3D bits: 64 type: MT MCP arch: Zen 4 gen: 4
level: v4 note: check built: 2022+ process: TSMC n5 (5nm) family: 0x19 (25)
model-id: 0x61 (97) stepping: 2 microcode: 0xA601209
Topology: cpus: 1x dies: 1 clusters: 1 cores: 8 threads: 16 tpc: 2
smt: enabled cache: L1: 512 KiB desc: d-8x32 KiB; i-8x32 KiB L2: 8 MiB
desc: 8x1024 KiB L3: 96 MiB desc: 1x96 MiB
Speed (MHz): avg: 4939 min/max: 545/5050 boost: enabled scaling:
driver: amd-pstate-epp governor: performance cores: 1: 4939 2: 4939 3: 4939
4: 4939 5: 4939 6: 4939 7: 4939 8: 4939 9: 4939 10: 4939 11: 4939 12: 4939
13: 4939 14: 4939 15: 4939 16: 4939 bogomips: 134140
Flags: avx avx2 ht lm nx pae sse sse2 sse3 sse4_1 sse4_2 sse4a ssse3 svm
Vulnerabilities: <filter>
Graphics:
Device-1: Advanced Micro Devices [AMD/ATI] Navi 31 [Radeon RX 7900 XT/7900
XTX/7900 GRE/7900M] vendor: Sapphire PULSE driver: amdgpu v: kernel
arch: RDNA-3 code: Navi-3x process: TSMC n5 (5nm) built: 2022+ pcie:
gen: 4 speed: 16 GT/s lanes: 16 ports: active: DP-2 empty: DP-1,
HDMI-A-1, HDMI-A-2, Writeback-1 bus-ID: 03:00.0 chip-ID: 1002:744c
class-ID: 0300
Device-2: Realtek Streamplify CAM driver: snd-usb-audio,uvcvideo type: USB
rev: 2.0 speed: 480 Mb/s lanes: 1 mode: 2.0 bus-ID: 9-1.3:3
chip-ID: 0bda:0567 class-ID: 0102 serial: <filter>
Display: wayland server: X.org v: 1.21.1.15 with: Xwayland v: 24.1.4
compositor: kwin_wayland driver: X: loaded: amdgpu
unloaded: modesetting,radeon alternate: fbdev,vesa dri: radeonsi
gpu: amdgpu display-ID: 0
Monitor-1: DP-2 model: Dell AW3423DWF serial: <filter> built: 2022 res:
mode: 3440x1440 hz: 165 scale: 100% (1) dpi: 109 gamma: 1.2
size: 800x337mm (31.5x13.27") diag: 868mm (34.2") modes: max: 3440x1440
min: 720x400
API: EGL v: 1.5 hw: drv: amd radeonsi platforms: device: 0 drv: radeonsi
device: 1 drv: swrast gbm: drv: kms_swrast surfaceless: drv: radeonsi
wayland: drv: radeonsi x11: drv: radeonsi
API: OpenGL v: 4.6 compat-v: 4.5 vendor: amd mesa v: 24.3.4-arch1.1
glx-v: 1.4 direct-render: yes renderer: AMD Radeon RX 7900 XTX (radeonsi
navi31 LLVM 19.1.7 DRM 3.59 6.12.10-zen1-1-zen) device-ID: 1002:744c
memory: 23.44 GiB unified: no display-ID: :1.0
API: Vulkan v: 1.4.303 layers: 15 device: 0 type: discrete-gpu name: AMD
Radeon RX 7900 XTX (RADV NAVI31) driver: N/A device-ID: 1002:744c
surfaces: xcb,xlib,wayland device: 1 type: cpu name: llvmpipe (LLVM
19.1.7 256 bits) driver: N/A device-ID: 10005:0000
surfaces: xcb,xlib,wayland
Info: Tools: api: clinfo, eglinfo, glxinfo, vulkaninfo
de: kscreen-console,kscreen-doctor gpu: corectrl wl: wayland-info
x11: xdpyinfo, xprop, xrandr
Audio:
Device-1: Advanced Micro Devices [AMD/ATI] Navi 31 HDMI/DP Audio
driver: snd_hda_intel v: kernel pcie: gen: 4 speed: 16 GT/s lanes: 16
bus-ID: 03:00.1 chip-ID: 1002:ab30 class-ID: 0403
Device-2: Advanced Micro Devices [AMD] Family 17h/19h/1ah HD Audio
vendor: Gigabyte driver: snd_hda_intel v: kernel pcie: gen: 4 speed: 16 GT/s
lanes: 16 bus-ID: 18:00.6 chip-ID: 1022:15e3 class-ID: 0403
Device-3: RODE Microphones NT-USB driver: hid-generic,snd-usb-audio,usbhid
type: USB rev: 1.1 speed: 12 Mb/s lanes: 1 mode: 1.1 bus-ID: 1-3:2
chip-ID: 19f7:0003 class-ID: 0300
Device-4: Realtek Streamplify CAM driver: snd-usb-audio,uvcvideo type: USB
rev: 2.0 speed: 480 Mb/s lanes: 1 mode: 2.0 bus-ID: 9-1.3:3
chip-ID: 0bda:0567 class-ID: 0102 serial: <filter>
API: ALSA v: k6.12.10-zen1-1-zen status: kernel-api with: aoss
type: oss-emulator tools: N/A
Server-1: PipeWire v: 1.2.7 status: active with: 1: pipewire-pulse
status: active 2: wireplumber status: active 3: pipewire-alsa type: plugin
4: pw-jack type: plugin tools: pactl,pw-cat,pw-cli,wpctl
Network:
Device-1: Realtek RTL8125 2.5GbE vendor: Gigabyte driver: r8169 v: kernel
pcie: gen: 2 speed: 5 GT/s lanes: 1 port: e000 bus-ID: 10:00.0
chip-ID: 10ec:8125 class-ID: 0200
IF: enp16s0 state: up speed: 1000 Mbps duplex: full mac: <filter>
Device-2: MEDIATEK MT7922 802.11ax PCI Express Wireless Network Adapter
driver: mt7921e v: kernel pcie: gen: 2 speed: 5 GT/s lanes: 1
bus-ID: 11:00.0 chip-ID: 14c3:0616 class-ID: 0280
IF: wlp17s0 state: down mac: <filter>
Device-3: Microsoft Xbox Wireless Adapter for Windows driver: N/A
type: USB rev: 2.0 speed: 480 Mb/s lanes: 1 mode: 2.0 bus-ID: 1-5:3
chip-ID: 045e:02fe class-ID: 0000 serial: <filter>
Info: services: NetworkManager, systemd-timesyncd, wpa_supplicant
Bluetooth:
Device-1: MediaTek Wireless_Device driver: btusb v: 0.8 type: USB rev: 2.1
speed: 480 Mb/s lanes: 1 mode: 2.0 bus-ID: 3-7:4 chip-ID: 0e8d:0616
class-ID: e001 serial: <filter>
Report: btmgmt ID: hci0 rfk-id: 0 state: up address: <filter> bt-v: 5.2
lmp-v: 11 status: discoverable: no pairing: no class-ID: 6c0104
Drives:
Local Storage: total: 5 TiB used: 1.19 TiB (23.8%)
SMART Message: Unable to run smartctl. Root privileges required.
ID-1: /dev/nvme0n1 maj-min: 259:0 vendor: Samsung model: SSD 970 EVO 500GB
size: 465.76 GiB block-size: physical: 512 B logical: 512 B speed: 31.6 Gb/s
lanes: 4 tech: SSD serial: <filter> fw-rev: 2B2QEXE7 temp: 38.9 C
scheme: GPT
ID-2: /dev/nvme1n1 maj-min: 259:3 vendor: TeamGroup
model: T-CREATE TM8FPM002T size: 1.82 TiB block-size: physical: 512 B
logical: 512 B speed: 63.2 Gb/s lanes: 4 tech: SSD serial: <filter>
fw-rev: ELFMB0.6 temp: 42.9 C scheme: GPT
ID-3: /dev/nvme2n1 maj-min: 259:6 vendor: TeamGroup
model: T-CREATE TM8FPM002T size: 1.82 TiB block-size: physical: 512 B
logical: 512 B speed: 63.2 Gb/s lanes: 4 tech: SSD serial: <filter>
fw-rev: ELFMB0.6 temp: 43.9 C scheme: GPT
ID-4: /dev/sda maj-min: 8:0 vendor: Samsung model: SSD 870 EVO 1TB
size: 931.51 GiB block-size: physical: 512 B logical: 512 B speed: 6.0 Gb/s
tech: SSD serial: <filter> fw-rev: 1B6Q scheme: GPT
Partition:
ID-1: / raw-size: 465.46 GiB size: 465.46 GiB (100.00%)
used: 338.6 GiB (72.7%) fs: btrfs dev: /dev/nvme0n1p2 maj-min: 259:2
ID-2: /boot/efi raw-size: 300 MiB size: 299.4 MiB (99.80%)
used: 26.2 MiB (8.8%) fs: vfat dev: /dev/nvme0n1p1 maj-min: 259:1
ID-3: /home raw-size: 465.46 GiB size: 465.46 GiB (100.00%)
used: 338.6 GiB (72.7%) fs: btrfs dev: /dev/nvme0n1p2 maj-min: 259:2
ID-4: /var/log raw-size: 465.46 GiB size: 465.46 GiB (100.00%)
used: 338.6 GiB (72.7%) fs: btrfs dev: /dev/nvme0n1p2 maj-min: 259:2
ID-5: /var/tmp raw-size: 465.46 GiB size: 465.46 GiB (100.00%)
used: 338.6 GiB (72.7%) fs: btrfs dev: /dev/nvme0n1p2 maj-min: 259:2
Swap:
Kernel: swappiness: 133 (default 60) cache-pressure: 100 (default) zswap: no
ID-1: swap-1 type: zram size: 30.8 GiB used: 1.03 GiB (3.4%) priority: 100
comp: zstd avail: lzo-rle,lzo,lz4,lz4hc,deflate,842 max-streams: 16
dev: /dev/zram0
Sensors:
System Temperatures: cpu: 58.5 C mobo: 32.0 C gpu: amdgpu temp: 48.0 C
mem: 63.0 C
Fan Speeds (rpm): N/A gpu: amdgpu fan: 0
Info:
Memory: total: 32 GiB note: est. available: 30.8 GiB used: 8.14 GiB (26.4%)
Processes: 421 Power: uptime: 2h 53m states: freeze,mem,disk suspend: deep
avail: s2idle wakeups: 0 hibernate: platform avail: shutdown, reboot,
suspend, test_resume image: 12.3 GiB services: org_kde_powerdevil,
power-profiles-daemon, upowerd Init: systemd v: 257 default: graphical
tool: systemctl
Packages: pm: pacman pkgs: 1836 libs: 532 tools: octopi,paru Compilers:
gcc: 14.2.1 Shell: garuda-inxi default: Bash v: 5.2.37 running-in: konsole
inxi: 3.3.37
Garuda (2.6.26-1.1):
System install date:     2023-06-17
Last full system update: 2025-02-04 ↻
Is partially upgraded:   No
Relevant software:       snapper NetworkManager dracut
Windows dual boot:       Probably (Run as root to verify)
Failed units:

maybe you try with X11 .
After logout you can chose on Display Session: Plasma (Wayland) to
X11 and login again and test your game.If not you can try with other kernels.But you have to install first over Garuda Assistant Setup Kernels and reboot and choose by Grub boot optional boot .

1 Like

Thanks for the comment, I gave X11 a shot and no luck, swapped back to wayland and tried a new kernel out, “linux-amd” from “linux-zen” since my build is all amd so this made sense to me?
I had some luck with this test, ran the game for 1h 13m without issue… until I noticed the game I ran with the new kernel was running vulkan over DX11/DX12 which is unlike the games I previously tested and now I’m considering if this is a factor in the problem.
Every change and test takes an hour so since I’m a little busy today and tomorrow I’ll update on the weekend if this kernel change has indeed solved something or if DX11/DX12 games are a factor in this.

Thanks again for the comment.

After trying a few kernels as suggested and testing vulkan and DX11 differences, I can unfortunately report that I found no improvements. Linux-amd kernel seemed more unstable with complete freezes occurring quite often when I was using it.

Ran “garuda-update remote fullfix” in the console for a reinstall of OS files with no changes to mention. Thought about wiping the drive and to fresh install from a usb, had some error from the ventoy program with my usb no longer being detected on dolphin or file explorer on windows, so that idea Ill can scrap for now.

For now I will watch over this post, awaiting any further suggestions.
Cheers

I would read this entry in the Arch Wiki:

https://wiki.archlinux.org/title/Power_management

You may want to test an alternate power manager such as TLP. There is a GUI frontend for TLP if the terminal isn’t your thing.

2 Likes

it seems to be a steam bug after their updates. you can try
These are the 2 most common workarounds in this thread, I would avoid replying with “this worked for me” as these are known workarounds that seem to work for most people who have this issue:

  • Either add LD_PRELOAD="" %COMMAND% to your launch options
  • Or ENABLE the steam overlay. Yes, the fix is unexpected, but you have to enable to fix it.

There are some other workarounds, if you want to adventure yourself, like chowning and chmodding the 64-bit gameoverlayrenderer.so, like here: #11446 (comment)

As pointed out on #11446 (comment), the actual fix probably needs to be done by valve, as the issue is in the steam client libraries.

found here:

5 Likes

Thank you for finding this and sharing, I’ll give these work arounds a go.

Will mark this post as complete soon as I can confirm one of these work for me, thanks to tbg aswell for their post.

This Steam post goes back to November, If this is on valve’s end hopefully they fix it sooner than later.

Cheers.

2 Likes

:wave: :smiley: Welcome to the Garuda forum BTW @MallowGumDrops , always nice to see newcomers getting quality assistance for their issues.

4 Likes

This topic was automatically closed 2 days after the last reply. New replies are no longer allowed.