protonscr

Stutter & sawtooth framerate in Hades 2 on AMD iGPU

vkd3dopen
HansKristian-Work/vkd3d-proton#2401 · opened 2025-03-15 by peniblec · updated 2026-04-07 · 4 comments · github
Ppeniblec 2025-03-15 github

Framerate alternates between "solid 60 FPS" and "sawtooth 40±10 FPS", depending on which area the player character is moving around in.

(

In game lingo:
In the Crossroads (one single loaded area), some parts like the hot springs and Nemesis's corner maintain a steady 60; moving anywhere, e.g. next to the cauldron, the framerate starts oscillating and movement becomes stuttery.

Briefly attempted a run; also getting sawtooth framerate & stutter there during movement & combat.

)

This is on openSUSE Tumbleweed (kernel 6.13.6, Plasma 6.3.3, Wayland) with an AMD iGPU. Game ran fine with no stutter until November 2024; at that point I re-installed my system after an SSD failure and have been unable to get acceptable performance again.

(

Recap of things I've looked at:

  • in-game settings: graphics high↘low, resolution↘, vsync on→off, full→windowed
  • Proton:
    • any version
    • tried VKD3D_CONFIG=skip_driver_workarounds %command% after seeing the d3d12_device_init_workarounds: AMDGPU broken kernel detected message
  • Steam: LD_PRELOAD="" (often reported by folks impacted by Steam's game recording update)
  • desktop environment:
    • Wayland→X11, Plasma→XFCE
    • VRR: N/A (unsupported by display)
  • kernel:
    • various sysfs knobs from drm/amd#1500
    • some amdgpu command-line parameters
  • BIOS:
    • updated mobo firmware
    • bumped VRAM
  • new SATA SSD: unplugged; re-installed on secondary NVMe

Already filed a report on ValveSoftware/Proton#8424.

)

Filing a report here in case some of the PROTON_LOG messages contain a clue I've missed; they do contain

  • d3d12_device_create_vkd3d_queues: Could not allocate an out of band queue for queue family (0|1|5). All out of band work will happen on the in band queue.
  • vkd3d-proton:d3d12_device_init_workarounds: AMDGPU broken kernel detected. Enabling manual memory clearing path.
  • vkd3d-proton:vkd3d_memory_info_upload_hvv_memory_properties: Topology: largest device local heap is too small (7004733440 bytes) for effective ReBAR.
  • a worrying amount of "unwind info" (90% of the 4 MB logs; the game session lasted 40 seconds)

but unsure what to make of this.

Image

Software information

  • game: Hades II (App ID: 1145350)
  • settings: "any" (full/windowed, native 1920×1080 or lower, low/high graphics)
    • disabling vsync changes the sawtooth pattern but stutter remains

System information

  • GPU: AMD Radeon Graphics (RADV RENOIR) (integrated GPU)

    • CPU: AMD Ryzen 5 PRO 4650G
  • Driver: wasn't 100% sure what to say here so:

    • from Steam's "Runtime System Information":

        {
          "name" : "AMD Radeon Graphics (RADV RENOIR)",
          "api-version" : "1.4.305",
          "vulkan-driver-id" : 3,
          "driver-name" : "radv",
          "driver-version" : "Mesa 25.0.1",
          "vendor-id" : "0x1002",
          "device-id" : "0x1636",
          "type" : "integrated-gpu"
        }
      
    • from inxi -G:

        Graphics:
          Device-1: Advanced Micro Devices [AMD/ATI] Renoir [Radeon Vega Series /
            Radeon Mobile Series] driver: amdgpu v: kernel
          Display: wayland server: X.org v: 1.21.1.15 with: Xwayland v: 24.1.6
            compositor: kwin_wayland driver: X: loaded: modesetting unloaded: vesa
            dri: radeonsi gpu: amdgpu resolution: 1920x1080~60Hz
          API: EGL v: 1.5 drivers: kms_swrast,radeonsi,swrast
            platforms: gbm,wayland,x11,surfaceless,device
          API: OpenGL v: 4.6 compat-v: 4.5 vendor: amd mesa v: 25.0.1 renderer: AMD
            Radeon Graphics (radeonsi renoir ACO DRM 3.61 6.13.6-1-default)
          API: Vulkan v: 1.4.304 drivers: N/A surfaces: xcb,xlib,wayland
          Info: Tools: api: eglinfo, glxinfo, vulkaninfo
            de: kscreen-console,kscreen-doctor wl: wayland-info
            x11: xdpyinfo, xprop, xrandr
      
  • Wine version: from ~/.local/share/Steam/steamapps/common/Proton Hotfix/files/bin/wine64 --version: wine-9.0

  • VKD3D-Proton version: from ~/.local/share/Steam/steamapps/common/Proton Hotfix/files/lib(64)/wine/vkd3d-proton/version: adc6ec1c135d510a8a599bf764d446909db9af3a vkd3d-proton (vkd3d-1.1-4486-gadc6ec1c)

(Found Wine & VKD3D-Proton versions by rummaging through the Steam folders, looking for the Proton Hotfix versions; hopefully accurate?)

Log files

steam-1145350.log
Hades II.log

Thanks for your time.

Rrayserit 2025-09-29 github

I have the same problem, and it seems the same as this user on ProtonDB, hope someone find a solution, On windows the game absolutely run at smooth 60 fps if locked and over 100 fps if unlocked so there is definitely an issue and i don't know what it could be

Image
Ppeniblec 2025-09-30 github

FTR:

  • cross-referencing mesa/mesa#11300 where I tried to look at the Mesa side of things;
  • one finding was that playing on Debian then-stable (bookworm, kernel 6.1, Mesa 22.3) yielded better results than the more recent Tumbleweed config I posted in the OP;
  • have not booted 1.0 yet, on the even-more-recent Tumbleweed.
Jjelebruh 2025-10-05 github
  • have not booted 1.0 yet, on the even-more-recent Tumbleweed.

5700U (Vega 8, Arch, Mesa 25.2.4 (Renoir), kernel 6.16.8) still stutters. Also played on Debian 13 (Trixie, can't say mesa ver) before distrohop and it also worked poorly.

And yes on windows it works like a charm.

Rrayserit 2026-04-07 github

No one has still found a solution even we are sure there is some sort of problem, i guess we are stuck

Proton versions

Launch options

Launch lines