Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Odd Behavior in Overwatch 2 on AMDGPU's #3821

Open
ZeusThundr opened this issue Jan 28, 2024 · 0 comments
Open

Odd Behavior in Overwatch 2 on AMDGPU's #3821

ZeusThundr opened this issue Jan 28, 2024 · 0 comments

Comments

@ZeusThundr
Copy link

ZeusThundr commented Jan 28, 2024

Related issues: 3813 Valves Proton Repo issue.

Update March 21, 2024

The slow shader compilation is linked to using LatencyFlex when disabled compilation is much faster and fps is higher overall and when compiling shaders using GPL but mouse input latency is increased quite drastically from what I remember from my last test a few months ago. This does not happen when using async patched dxvk.

Update Feb 8, 2024

Since Switching to using ULWGL (commit: ff5d7c15) on lutris (commit: 777de5dd) and using Proton-GE-30 without DXVK_ASYNC=1 the time it takes to compile shaders is on par with DXVK Async 2.0. Also worth mentioning the issue mentioned before this update about GPU clock speeds, is now fixed by using lactd or corectrl and manually setting clock speeds on kver 6.7.1 patched with tkg's utility. Though it seems that most of the issues have been fixed DXVK Async 2.0 still outperforms DXVK 2.3 in terms of FPS.

My apologies for this issue feel free to close this issue though other users might be still be experiencing these issues since they might not be running the bleeding edge of the aforementioned pieces of software. Hence why I haven't closed it myself.

Misc: With this new setup a new issue has arisen when tabbing out and going to tab back in the game is still running as I hear the in game noises of a fight still going on but no input is received in game and the screen is black. I have to close out of the game and relaunch to be able to play again. I can't reproduce this reliably so do with this information what you will. This has happened over the years of playing with different setups on many different titles. This is probably not a DXVK issue just don't know who where to report this to. I'm hoping you can pass this on to where it belongs as you more likely than not know more than I do when it comes to these sort of issues than me.

Update Feb 10, 2024

The issue of long shader compilation and sporadic gpu freqs until its is done compiling seems to be fixed in Proton-GE-29 and Proton-GE-30 but still occurs on wine-ge-8-26 and below.

Update Feb 13, 2024

Same issue occurs as stated originally in Proton-GE-31 and Proton-GE-32 on lutris but not on Proton-GE-29 worth maybe noting that Latency Flex works on these version as if environment variables as set properly on Proton-GE-31 and Proton-GE-32 but no on Proton-GE-29. I'm really starting to think this is no longer a dxvk issue. Any advice on how to properly describe this behavior and who to report it to would be greatly appreciated.

Software information

Game: Overwatch 2 - Lutris
Graphic Settings: Low
Display Protocol: Xorg
DE: KDE 5.27.10
Distro: Arch

System information

  • GPU: AMD RX 6900 XT
  • Driver: Mesa 23.3.4
  • Wine version: Wine-GE-8-25, and GE-Proton-8-28
  • DXVK version: 2.3

Behavior

VK_EXT_graphics_pipeline_library is much slower than DXVK ASync 2.0 at compiling shaders when DXVK_ASYNC=1 is set.

When using GPL the first 20k graphic shaders in DXVK_HUD=pipelines take just a couple of seconds and the rest until 96k take about 4-5 minutes for it to compile even when using __GL_SHADER_DISK_CACHE_SKIP_CLEANUP=1. I read somewhere that env-var is only really useful for NVIDIA GPU's. Essentially the game unplayable for up to 5 minutes on each game launch, since your GPU clock speeds go from 30Mhz to a few hundred until it is all done compiling shaders; At which point the GPU will boost over 2 Ghz unlike when Using async the game is virtually immediately playable.

DXVK 2.3 also has the odd behavior of not detecting Overwatch as a game. If I ever decide to tab out for any reason I have to spam alt+enter while looking at MangoHud to see if my GPU clock speed is being set properly. Note I don't have this issue with DXVK async 2.0.

By not detecting as a game I mean it's running at lowest GPU clock speeds and or alternates between deciding if its a game or not by ramping up the GPU clocks slowly and ramping them back down again to lowest GPU clock going back and forth indefinitely even if I use corectrl or lactd for setting my clock speeds manually.

I'm lead to believe that it might be related to a window focus issue since this only happens once I tab out at any given moment to open another application. The GPU clock speeds are respected as long as I don't tab out. Though I can't get this behavior to happen with DXVK async 2.0. This issue isn't desktop environment specific as the same problem occurs in Gnome, DWM, and KDE.

Benchmarking

Overwatch Workshop benchmark gamecode: HEZHJ (Custom game -> Create -> Import code).

In benchmarks DXVK async out performs DXVK 2.3. Though I mainly focus on 0.1% lows

Here are some benchmarks I conducted to compare FPS. The best 0.1% lows were from the benchmarks named "2.0 LFX OFF RB OFF" and "2.3 LFX OFF RB OFF" respectively their is a character limit on how long names can be on https://flightlessmango.com so I had to abbreviate them using acronyms, defined in the description of the benchmark itself.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant