dxvk icon indicating copy to clipboard operation
dxvk copied to clipboard

Any game that needs DXVK almost instantly freezes and eventually crashes

Open seacat17 opened this issue 1 year ago • 75 comments

Software information

Any game with any settings.

System information

  • GPU: NVIDIA GeForce RTX 3050 Mobile
  • Driver: 565.57.01
  • Wine version: Proton 9.0-3
  • DXVK version: 1.7

Apitrace file(s)

NONE

Log files

borealAlyph_dxgi.log borealAlyph_d3d9.log steam-812370.log

...

Basically any game that needs DXVK to run either instantly freezes completely on startup or freezes a few minutes after the startup. Any game on any engine is unplayable on my system if it needs DXVK to work.

If using native OpenGL or Vulkan - there is no crashes. If using Valve's ToGL - there's no crashes. If using WineD3D - there is no crashes. The problem is with DXVK only.

seacat17 avatar Nov 30 '24 17:11 seacat17

Do the games you have tried have anything in common like engine or bitness? Also does this happen with older drivers?

Blisto91 avatar Nov 30 '24 17:11 Blisto91

If you're using Nvidia PRIME I'd recommend trying:

  • switching to Nvidia (Performance Mode)
  • launching games with DXVK_FILTER_DEVICE_NAME="NVIDIA GeForce" when using dxvk
  • avoid using HDMI outputs entirely if possible due to driver jank around these kinds of setups (DisplayPort will generally be fine)

WinterSnowfall avatar Nov 30 '24 17:11 WinterSnowfall

Do the games you have tried have anything in common like engine or bitness? Also does this happen with older drivers?

No, they do not have anything in common. Any games on any engine be it Source, Unity or Unreal 4 or 5, be it 32-bit or 64-bit game - it will crash.

If you're using Nvidia PRIME I'd recommend trying:

* switching to Nvidia (Performance Mode)

* launching games with `DXVK_FILTER_DEVICE_NAME="NVIDIA GeForce"` when using dxvk

* avoid using HDMI outputs entirely if possible due to driver jank around these kinds of setups (DisplayPort will generally be fine)

I use Nvidia only when playing games.

I did this right now. The result is the same.

I don't use HDMI outputs, the only output I have is the built-in laptop screen.

EDIT: newer logs.

borealAlyph_dxgi.log borealAlyph_d3d9.log steam-812370.log

seacat17 avatar Nov 30 '24 17:11 seacat17

I don't use HDMI outputs, the only output I have is the built-in laptop screen.

Alright, that should be fairly straight forward then. I'm on a NVIDIA GeForce RTX 4060 Mobile, but can't reproduce the behavior you're describing, everything is stable here. I've just played The Witcher 3 for about 3 hours or so, FWIW.

WinterSnowfall avatar Nov 30 '24 17:11 WinterSnowfall

Does anything appear in dmesg or journal when a game crashes?

Blisto91 avatar Nov 30 '24 17:11 Blisto91

Does anything appear in dmesg or journal when a game crashes?

No. Literally nothing.

seacat17 avatar Nov 30 '24 17:11 seacat17

Just noticed you are using dxvk 1.7 for some reason... how about upgrading to 2.5.1, since nobody tests ancient versions on new drivers? And please use all the dlls from a given version, don't mix and match. Your dxgi reports dxvk version 2.4, while d3d9 reports dxvk 1.7. That is not normal.

WinterSnowfall avatar Nov 30 '24 17:11 WinterSnowfall

Just noticed you are using dxvk 1.7 for some reason... how about upgrading to 2.5.1, since nobody tests ancient versions on new drivers?

How do I do this on Steam Proton?

seacat17 avatar Nov 30 '24 17:11 seacat17

You seem to have a d3d9.dll in the game folder so that is being used instead of the one Proton ships

Blisto91 avatar Nov 30 '24 17:11 Blisto91

You seem to have a d3d9.dll in the game folder so that is being used instead of the one Proton ships

O h . . .

Let me resolve that really quick.

seacat17 avatar Nov 30 '24 17:11 seacat17

DXVK v2.5.1:

borealAlyph_dxgi.log steam-812370.log borealAlyph_d3d9.log

ONE NOTE THO: capping FPS down to 60 increased the time before the game crashes. If uncapped, the game usually crashes almost instantly. If capped - I can play for a few minutes before it will crash.

seacat17 avatar Nov 30 '24 18:11 seacat17

I don't see anything relevant in the logs sadly, so it's very unlikely anything odd happens inside dxvk code.

ONE NOTE THO: capping FPS down to 60 increased the time before the game crashes. If uncapped, the game usually crashes almost instantly. If capped - I can play for a few minutes before it will crash.

That sounds like some sort of system instability or overheating perhaps? Not much we can help with here I'm afraid.

WinterSnowfall avatar Nov 30 '24 18:11 WinterSnowfall

I don't see anything relevant in the logs sadly, so it's very unlikely anything odd happens inside dxvk code.

ONE NOTE THO: capping FPS down to 60 increased the time before the game crashes. If uncapped, the game usually crashes almost instantly. If capped - I can play for a few minutes before it will crash.

That sounds like some sort of system instability or overheating perhaps? Not much we can help with here I'm afraid.

What's weird is that if there's no DXVK - everything works just fine. I played CS2 on Vulkan for 4 hours straight and I played Minecraft on OpenGL for 2 hours straight with no crashes like that and I completed FEAR on WineD3D with no crashes.

seacat17 avatar Nov 30 '24 18:11 seacat17

You don't perhaps have any overlays or such running? Might also be worth trying to disable steam overlay. Does it also happen on say the 535 drivers?

Blisto91 avatar Nov 30 '24 18:11 Blisto91

You don't perhaps have any overlays or such running? Might also be worth trying to disable steam overlay. Does it also happen on say the 535 drivers?

I have tried 530 drivers - it happened there.

No overlays are running.

seacat17 avatar Nov 30 '24 18:11 seacat17

Don't have any good ideas then sorry

Blisto91 avatar Nov 30 '24 18:11 Blisto91

Don't have any good ideas then sorry

Any ideas on how to softwarely increase stability?

seacat17 avatar Nov 30 '24 19:11 seacat17

FPS limits or power caps can improve stability on some setups. For the former you can just use the dxvk fps limiter. The later i haven't really messed with so not familiar with what software to use.

Blisto91 avatar Nov 30 '24 19:11 Blisto91

Don't have any good ideas then sorry

Any ideas on how to softwarely increase stability?

Possibly disabling power saving functionality (GPU, CPU, PCI-e, etc.)

netborg-afps avatar Dec 03 '24 10:12 netborg-afps

HAs anyone tried to make this work with War 3 Reforged and Diablo 2 Ressurrected? DX11 in those games is more of an issue than help.

I was thinking of making a thread about this but this one pretty much asks the same question as i since the game crash before it loads

Bittermens avatar Dec 05 '24 22:12 Bittermens

Diablo 2 Resurrected does not support D3D11. VKD3D-Proton can run the game just fine though.

K0bin avatar Dec 05 '24 22:12 K0bin

Diablo 2 Resurrected does not support D3D11. VKD3D-Proton can run the game just fine though.

War 3 reforged crashes when trying to load the game

Bittermens avatar Dec 05 '24 22:12 Bittermens

I'm also seeing this issue, and I think the not a bug label ought to be removed pending further investigation. I can consistently reproduce this across multiple versions of DXVK (including 2.5.2 just released), with multiple different versions of Wine (8.26, 9.22, 9.22-staging, 9.22-tkg). The issue only appears under DXVK. If the game is using VKD3D, the issue disappears.

The game will play fine for some amount of time, typically a few minutes, before freezing. It does not hard crash. I cannot locate anything in the logs that corresponds to the moment of freezing.

I do have a PRIME setup, and I think that's related. I have not seen this issue on any non-PRIME machines in an otherwise similar setup (same distro, same Wine build, same game/version).

Occurs on Nvidia drivers 550.135, and 565.77.

It's not load related. I have tried setting Nvidia to performance profile. I have ensured the dedicated charger is plugged in to ensure the GPU has sufficient current. I have monitored the GPU usage. The game in question is WoW Classic, which is not hitting the GPU very hard (RTA 5000 Ada). Issue occurs even on minimum settings and resolution.

I have tried loading the machine with Linux native games from Steam. None of them exhibit the issue, even at very high GPU load.

aeadio avatar Dec 21 '24 18:12 aeadio

I do have a PRIME setup, and I think that's related. I have not seen this issue on any non-PRIME machines in an otherwise similar setup (same distro, same Wine build, same game/version).

If it's PRIME related, just follow these steps and it should be sorted: https://github.com/doitsujin/dxvk/issues/4503#issuecomment-2509084021.

I was having regular freezes that I can only attribute to Vulkan device order changes (device lost type errors), but the issue hasn't reoccurred after setting a dxvk device filter for the card you intend to use with games (typically Nvidia) and avoiding to use HDMI altogether. Using HDMI over a DP-to-HDMI adapter will work.

The lockups when using HDMI outputs directly are common to all Vulkan applications and are in fact caused by the Intel driver stack when using the "On Demand" PRIME mode.

WinterSnowfall avatar Dec 21 '24 18:12 WinterSnowfall

If it's PRIME related, just follow these steps and it should be sorted: #4503 (comment).

Already doing all of these.

aeadio avatar Dec 21 '24 19:12 aeadio

It's not load related. I have tried setting Nvidia to performance profile. I have ensured the dedicated charger is plugged in to ensure the GPU has sufficient current. I have monitored the GPU usage. The game in question is WoW Classic, which is not hitting the GPU very hard (RTA 5000 Ada). Issue occurs even on minimum settings and resolution.

Just to clarify, did you try to limit the framerate? In my case, limiting the framerate extended the time before freezing.

seacat17 avatar Dec 22 '24 03:12 seacat17

Just to clarify, did you try to limit the framerate? In my case, limiting the framerate extended the time before freezing.

I've been using vsync and the framerate has been a steady 60 FPS. Limiting it below that isn't an acceptable solution, especially if it still freezes eventually. Might as well fall back to VKD3D, but the performance with WoW is nowhere near as good as DXVK.

Edit: I've been able to confirm that disabling vsync / frame cap makes the game freeze much sooner. But this is not an indication that it's load related, because monitoring doesn't suggest the GPU is highly loaded, and I cannot reproduce in any non-DXVK scenario, even with dedicated Vulkan benchmarks.

To me it suggests something like a counter overflowing, but I have no idea to begin where to look to debug this.

aeadio avatar Dec 22 '24 06:12 aeadio

To me it suggests something like a counter overflowing, but I have no idea to begin where to look to debug this.

In my case limiting the framerate down to 35 lets me play the game for a good while.

Seems like some kind of... Memory leak or overflow, yeah.

seacat17 avatar Dec 23 '24 05:12 seacat17

DXVK v2.5.1:

borealAlyph_dxgi.log steam-812370.log borealAlyph_d3d9.log

ONE NOTE THO: capping FPS down to 60 increased the time before the game crashes. If uncapped, the game usually crashes almost instantly. If capped - I can play for a few minutes before it will crash.

Interesting. I have the same issue on windows with dgvoodoo 2's DirectX12 Output and only at 4k

De-M-oN avatar Jan 01 '25 16:01 De-M-oN

Interesting. I have the same issue on windows with dgvoodoo 2's DirectX12 Output and only at 4k

Um... What does this have to do with DXVK acting up?

seacat17 avatar Jan 02 '25 17:01 seacat17