protonscr

Presentation issues on Wayland since DXVK version 1.9.2 - heavy stuttering despite stable frame times + adaptive sync issues

dxvkclosed can't reproduce
doitsujin/dxvk#3251 · opened 2023-02-14 by fililip · updated 2023-02-21 · 4 comments · github
Ffililip 2023-02-14 github

All DX9 & DX11 (possibly DX10 too) games suffer from heavy stuttering despite stable frame times on Wayland (tested on both KDE Plasma and GNOME) since DXVK 1.9.2.

Adaptive sync does not help - anything above 60 fps forces the refresh rate to the maximum available one (165hz in my case). 60 fps seems to work just fine with adaptive sync - the refresh rate is set.

Enabling/disabling vsync, fiddling with frame rate limiting (above 60 fps) and similar solutions do not change the status quo, even with adaptive sync.

Software information

Any game rendered via DXVK (DX11 Unity games, DX9 games like Black Mesa, etc.)

System information

  • GPU: AMD Radeon RX 6600 XT
  • Driver: amdgpu, Mesa RADV 22.3.4
  • Wine version: any (tested on Lutris' 6.22, Proton 7.0, as well as Proton Experimental)
  • DXVK version: >=1.9.2, 1.9.1 and below work fine

Apitrace file(s)

Log files

No log files seem to be generated.

Ddoitsujin maintainer 2023-02-16 github

Been running KDE Wayland on a single monitor setup (144Hz with VRR) for well over a year now and can't confirm this.

Ffililip 2023-02-16 github

After further testing I've concluded that this seems to happen in select games, not all are susceptible to this.
Black Mesa (DX9) and some Unity games (DX11) on DXVK >=1.9.2 have this issue, while Ghostrunner (DX11), BeamNG.drive (DX11) do not.

Is there anything that changed the presentation framework in DXVK after 1.9.1?

Ddoitsujin maintainer 2023-02-16 github

I've tested Black Mesa and Ori (which is Unity engine) a fair bit and both were fine here too.

Not sure what we changed but I don't think there's any real bug on our end.

Ffililip 2023-02-21 github

Alright, I think I've figured it out - using the ondemand CPU governor fixes the issue. I have no idea why, but it does.
(schedutil, the default one, does not)

Edit after further testing: another culprit seems to be the BOOTUP_DEFAULT amdgpu power profile - switching to 3D_FULL_SCREEN, VR or COMPUTE solves the issue.

Proton versions