Performance issues going from nvidia -> AMD in Arch

So I’ve been running EndeavourOS for a few months now (Arch based) with no (performance) issues at all. I had a GTX 3080 and 5900x.
Then I swapped to a Radeon GPU, RX 6800 and I’m getting serious stuttering in Wine games.

It’s not all the time, only usually when a bunch of effects happen on the screen. I’ve tried dropping my settings down to minimum with no change.
I’ve removed all the old nvidia tools and software, and installed the RADV driver but still get issues.

A few things to note:
I’m using a PCI-E riser that only supports Gen 3.0, so I’ve hard set that in my BIOS.
The GPU performance charts look normal, hitting around 30% on minimum settings (while still having the issues).

Any ideas where to start looking?

Here’s my vulkaninfo summary:

VULKANINFO

Vulkan Instance Version: 1.3.226

Instance Extensions: count = 20

VK_EXT_acquire_drm_display : extension revision 1
VK_EXT_acquire_xlib_display : extension revision 1
VK_EXT_debug_report : extension revision 10
VK_EXT_debug_utils : extension revision 2
VK_EXT_direct_mode_display : extension revision 1
VK_EXT_display_surface_counter : extension revision 1
VK_KHR_device_group_creation : extension revision 1
VK_KHR_display : extension revision 23
VK_KHR_external_fence_capabilities : extension revision 1
VK_KHR_external_memory_capabilities : extension revision 1
VK_KHR_external_semaphore_capabilities : extension revision 1
VK_KHR_get_display_properties2 : extension revision 1
VK_KHR_get_physical_device_properties2 : extension revision 2
VK_KHR_get_surface_capabilities2 : extension revision 1
VK_KHR_portability_enumeration : extension revision 1
VK_KHR_surface : extension revision 25
VK_KHR_surface_protected_capabilities : extension revision 1
VK_KHR_wayland_surface : extension revision 6
VK_KHR_xcb_surface : extension revision 6
VK_KHR_xlib_surface : extension revision 6

Instance Layers: count = 5

VK_LAYER_AMD_switchable_graphics_32 AMD switchable graphics layer 1.3.225 version 1
VK_LAYER_VALVE_steam_fossilize_32 Steam Pipeline Caching Layer 1.3.207 version 1
VK_LAYER_VALVE_steam_fossilize_64 Steam Pipeline Caching Layer 1.3.207 version 1
VK_LAYER_VALVE_steam_overlay_32 Steam Overlay Layer 1.3.207 version 1
VK_LAYER_VALVE_steam_overlay_64 Steam Overlay Layer 1.3.207 version 1

Devices:

GPU0:
apiVersion = 4206803 (1.3.211)
driverVersion = 92278791 (0x5801007)
vendorID = 0x1002
deviceID = 0x73bf
deviceType = PHYSICAL_DEVICE_TYPE_DISCRETE_GPU
deviceName = AMD RADV SIENNA_CICHLID
driverID = DRIVER_ID_MESA_RADV
driverName = radv
driverInfo = Mesa 22.1.7
conformanceVersion = 1.3.0.0
deviceUUID = 00000000-0b00-0000-0000-000000000000
driverUUID = 414d442d-4d45-5341-2d44-525600000000

First step, test without the riser. It’s the most likely suspect here.

Second I’d try installing another distro (Fedora/Ubuntu) on a temporary disk and seeing how that goes. That will allow you to rule out hardware issues.

Third what kind of power supply are you using?

I did a sanity check on Windows, and games run fine so it’s not a hardware issue.

From what I can tell it seems to be a shader issue on the RX 6800. I tried running a custom patched DXVK with async, I tried the xanmods kernel, all of the performance optimization tips from the arch wiki (including gamemoded, all the experimental vulkan and mesa config, among some other things).

The only thing I could thing of that’s left to try is the AMDGPU_PRO drivers but they’re only packaged for Ubuntu and I’m not really sure that’d make a difference.

Maybe I’ll try a more performance oriented Arch based distro and see if I can get a set of good drivers.

Do you have the same problems when you run the same game via Steam’s proton?

I had a good experience with Manjaro on my 6900XT, just moved over to Arch Arch, I was using kernel 5.19 and 6.0rc on Manjaro and currently 5.19 on Arch, tried the zen kernel but didn’t seem to be any noticeable difference performance wise.

For the most part i stuck with MESA/RADV, I’d maybe recommend checking your GPU clocks while in game, it may be stuck at a lower pstate and not boosting up to the game clocks.

I gave up on that game, but I have noticed that other wine games run better with the wine-ge-custom aur package, compared to the lutris integrated wine, and wine-staging.
Linux-xen made a noticeable difference on my RTX 3080, but I can’t tell on the 6800.
I’m running Mesa 22.1.7 right now and it’s not perfect, I might also go back to the git version which I think was a bit faster.

I think I might switch from endeavour to manjaro or arch at some point just to get a clean start.