I’ve been getting stuttering on a few games and I’ve noticed that the CPU isn’t maxing out, RAM & VRAM have plenty of space (40-50% free) & the fans on the GPU never spin up past 30% so I thought maybe the GPU wasn’t being fully utilised. I’ve tried using game-performance (and manually setting it in Power Management) and that makes the problem worse. Anyone got any ideas how to go about diagnosing further? According to amdgpu_top my card is always in the bootup_default power profile and the commands I found online to change that throw up errors.
Mac Mini 2018 i7, eGPU RX6600XT connected via Thunderbolt 3. I’ve followed the eGPU guide at the Arch wiki to get it all working and have adjusted the pcie_gen_cap to the correct setting for the card.
I would try PROTON_ENABLE_WAYLAND=1 and see if that helps. It will cause problems in a few games and generally Steam overlay doesn’t work with Wayland, but it generally has much better frame pacing than X11 does. If it’s shader compliation stutter then that would improve over time as you play the game, or there’s some things you can do to force shader precompilation in Steam (although this will create it’s own annoyances). Unfortunately it may also just be your setup. You do make some sacrifices with eGPUs and put a lot of additional hardware between the GPU and the CPU.
It’s so hard to say what the problem is related to. All I can recommend is the following:
If you haven’t already done so: Install LACT to manage your AMD GPU. It offers many features (thermal and power management, as well as overclocking settings). You can also set performance levels there, either manually or automatically (default).
Thanks for replying. The games are Helldivers 2 and Nuclear Option and I get stuttering whenever things get past a certain level of busyness (more enemy units need to be rendered, larger maps being used, etc. My CPU and GPU will generally be running around 75%, still plenty of room in RAM (40%) and VRAM (50%), GPU fan barely ticking over (25-30%). When the stutters occur I get a small increases in CPU usage and dropouts in GPU usage at the same time. Changing graphics settings all the way down to the minimum makes no difference.
I’ve gone through ProtonDB and tried just about every option suggested there where an AMD GPU is being used. One thing I’ve noticed is that where game-performance or game priority variables are used the problem invariably gets worse, even stuttering in lobby areas where nothing complex is happening at all. Sometimes the stuttering gets triggered by alt-tabbing out of the game too.
Thanks for the tip, it hasn’t made a difference as of yet though - no better, no worse. I’ll keep it in the launch options and let you know if anything changes.
I know the eGPU is capable of playing the game at the display settings I’m using as it worked well enough on Windows 10, although the frame rate before stuttering occurs is about 20-25% higher in CachyOS when running the game normally.
Thanks for the tips! I’ve installed LACT and that allowed me to manually turn on the 3D_FULL_SCREEN power profile. Unfortunately it’s makes no difference. I’ve tried a lot of the variables mentioned in the CachyOS gaming guide but so far I’ve not been able to find out a way of sorting this stubborn issue…
“although the frame rate before stuttering occurs is about 20-25% higher in CachyOS when running the game normally.”
Have you tried limiting the framerate to see if that clears it up? Using something like Goverlay to set a hard limit well below just for testing.
Otherwise, what you’re describing sounds to me like a CPU bottleneck (doesn’t have to report 100% utilization for that to be true). Some reasons for that:
The GPU utilization drops when the stuttering occurs. That often means the CPU can’t feed the GPU data fast enough.
It occurs during times when the CPU is being called upon to work harder
iirc, Helldivers 2 was known for being CPU intensive
If you monitor the CPU cores instead of the overall CPU utilization, you may find a couple cores pegged at 99-100%.