dxvk icon indicating copy to clipboard operation
dxvk copied to clipboard

Apps/games with DXVK freeze after a few seconds

Open eclipse-909 opened this issue 2 months ago • 17 comments

Please describe your issue as accurately as possible. Include screenshots or videos when relevant.

Every game I try will start and work for maybe a few seconds, but then the frame rate tanks and the game freezes. I'm running my games with Steam and Lutris. If I enable DXVK, it freezes, but it runs if it's disabled. I am able to run native Vulkan games like vkcube with no problem. If I force the game to use my Intel iGPU, it doesn't seem to ever freeze.

Screen recording of running Cube.exe via Lutris with and without DXVK:

https://github.com/user-attachments/assets/656280bb-21eb-4d71-b643-5be07d4448e1

Software information

Name of the game, settings used etc. If using mods or addons, list them aswell.

  • Risk: Global Domination - freezes with DXVK at splash screen. Works fine without
  • Lego Star Wars: The Skywalker Saga - freezes with DXVK usually at main menu. Black screen + UI without
  • Guild Wars 2 - freezes with DXVK at character selection. Works without DXVK, but bad performance and I'm hoping it would perform better with DXVK
  • Cube.exe - simple test DX11 program which renders a cube you can drag around - freezes with DXVK. Works without, but I get some weird black flickers and small visual glitches

There have been some instances where I get into actual gameplay with frequent frame rate drops, and eventual freezing. Where/when the freeze exactly occurs doesn't seem to be deterministic, although some environment variable settings allowed the game to freeze during gameplay rather than at the splash screen or main menu. __GL_THREADED_OPTIMIZATIONS and DXVK_ASYNC may have done something, but it's really hard to tell since it always freezes.

System information

  • GPU: NVIDIA GeForce RTX 2070 with Max-Q Design
  • Driver: 580.95.05
  • Wine version: 10.17 (also tried wine staging)
  • DXVK version: 2.7.1 (also tried 2.6.2, 2.5.3, 2.4.1, and 1.10.3)

Computer Information: Manufacturer: Razer Model: CH530 Form Factor: Laptop No Touch Input Detected Processor Information: CPU Vendor: GenuineIntel CPU Brand: Intel(R) Core(TM) i7-9750H CPU @ 2.60GHz CPU Family: 0x6 CPU Model: 0x9e CPU Stepping: 0xa CPU Type: 0x0 Speed: 2600 MHz 12 logical processors 6 physical processors Hyper-threading: Supported FCMOV: Supported SSE2: Supported SSE3: Supported SSSE3: Supported SSE4a: Unsupported SSE41: Supported SSE42: Supported AES: Supported AVX: Supported AVX2: Supported AVX512F: Unsupported AVX512PF: Unsupported AVX512ER: Unsupported AVX512CD: Unsupported AVX512VNNI: Unsupported SHA: Unsupported CMPXCHG16B: Supported LAHF/SAHF: Supported PrefetchW: Unsupported BMI1: Supported BMI2: Supported F16C: Supported FMA: Supported Operating System: "openSUSE Tumbleweed" (64 bit) Kernel Name: Linux Kernel Version: 6.17.4-1-default X Server Vendor: The X.Org Foundation X Server Release: 12101015 X Window Manager: KWin Steam Runtime Version: steam-runtime_1.0.20250723.149234 Client Information: Version: 1759461205 Browser GPU Acceleration Status: Disabled Browser Canvas: Unavailable Browser Canvas out-of-process rasterization: Disabled Browser Direct Rendering Display Compositor: Disabled Browser Compositing: Disabled Browser Multiple Raster Threads: Enabled Browser OpenGL: Disabled Browser Rasterization: Disabled Browser Raw Draw: Disabled Browser Skia Graphite: Disabled Browser Video Decode: Disabled Browser Video Encode: Disabled Browser Vulkan: Disabled Browser WebGL: Unavailable Browser WebGL2: Unavailable Browser WebGPU: Disabled Browser WebNN: Disabled Video Card: Driver: NVIDIA Corporation NVIDIA GeForce RTX 2070 with Max-Q Design/PCIe/SSE2 Driver Version: 4.6.0 NVIDIA 580.95.05 Desktop Color Depth: 24 bits per pixel Monitor Refresh Rate: 120 Hz VendorID: 0x10de DeviceID: 0x1f10 Revision Not Detected Number of Monitors: 3 Number of Logical Video Cards: 2 Primary Display Resolution: 1920 x 1080 Desktop Resolution: 3840 x 2160 Primary Display Size: 13.54" x 7.64" (15.51" diag), 34.4cm x 19.4cm (39.4cm diag) Primary VRAM: 8192 MB Sound card: Audio device: Realtek ALC298 Memory: RAM: 15885 Mb VR Hardware: VR Headset: None detected No VR configuration with trackers detected Most number of trackers in a session: 0 Miscellaneous: UI Language: English LANG: en_US.UTF-8 Total Hard Disk Space Available: 471475 MB Largest Free Hard Disk Block: 309220 MB Storage: Number of SSDs: 1 SSD sizes: 512G Number of HDDs: 0 Number of removable drives: 0

Apitrace file(s)

Google Drive Folder

This folder has 2 traces.

  • Cube-wined3d.trace was made with DXVK disabled
  • Cube-dxvk.trace was made with DXVK enabled

In both runs, the process terminated before the window opened so I don't know if the problem was replicated. Both were compressed with apitrace repack --brotli=2 Cube.trace <output>.trace.

Log files

Log from running Cube.exe with Lutris and DXVK enabled (I stopped the game after it froze):

game.log

Cube_d3d11.log

Cube_dxgi.log

eclipse-909 avatar Nov 03 '25 20:11 eclipse-909

This isn't really something that's debuggable remotely, the only thing I can really say here is that PRIME setups involving Nvidia have been working more or less fine for me for the past 5½ years (less for Wayland, but that is also fine now at least on my desktop) and I can't reproduce this.

Would be good to know if other Vulkan apps work on the NV card (i.e. D3D12 games, VK games, wined3d with vulkan, etc), but I don't really see any way to troubleshoot this without a way to reproduce.

doitsujin avatar Nov 03 '25 22:11 doitsujin

I'm not on a PRIME laptop setup any longer (thankfully), however I used to have these sort of issues for a while. Using DXVK_FILTER_DEVICE_NAME= to explicitly point to the GPU that I wanted to use with dxvk solved most of them. From what I could tell, some cursed power management routines can mess with the order/availability of GPUs that's being reported by the driver (and also with hardware MUX switching), potentially causing hickups, VK_ERROR_DEVICE_LOST hangs, PCIe "device has fallen off the bus" GPU resets and other lovely things. Setting the dGPU on "performance mode" can also help, but "balanced" should also be fine with the above trick.

WinterSnowfall avatar Nov 04 '25 07:11 WinterSnowfall

This also has been happening to me since yesterday, I tried with both Left 4 Dead 2 and GTA IV.

I use v2.4.1 for both games. The games were working fine until yesterday. I don't know what caused this change but there weren't any update from Windows or Nvidia. I tried with v2.7.1 for Left 4 Dead 2 and it seems to be working fine now, but for GTA IV is a pain in the ass because that game suffers from a performance regression since 2.4.1 and higher.

EDIT: Nope, even if the freeze doesn't happen with Left 4 Dead 2 with the latest version now, the same performance issues keeps happening. The game works fine with dx9 but not anymore with Vulkan, and I don't know why, it doesn't make sense at all that this happen from one day to another without touching anything.

Stickend avatar Nov 04 '25 15:11 Stickend

I think I figured it out. I just had to do this and my games seem to be running just fine. I'm getting 45-65 fps in GW2 with DXVK enabled, as opposed to 10 fps without it. I could have sworn I already tried doing that, but I guess not. I always leave my system in hybrid mode: use the Intel GPU for everything and use the Nvidia GPU when I need it. It's gonna be kind of annoying to have to remember to restart if I want to switch between playing games and unplugging my laptop and keeping the power consumption down.

eclipse-909 avatar Nov 04 '25 19:11 eclipse-909

DXVK_FILTER_DEVICE_NAME=2070 might also be a possible option as mention above

@Stickend Make sure you have Resizable Bar enabled in regards to performance

Blisto91 avatar Nov 04 '25 20:11 Blisto91

@Blisto91 yeah but I've never had to need Resizable Bar enabled before, why would this change in performance/freezing happened in the first place out of nowhere?

Also, you mention DXVK_FILTER_DEVICE_NAME=2070 as a possible solution (I have a 3080 though), but how do I do that in Windows?

Stickend avatar Nov 04 '25 20:11 Stickend

DXVK_FILTER_DEVICE_NAME=2070 might also be a possible option as mention above

I was actually already doing DXVK_FILTER_DEVICE_NAME="NVIDIA GeForce RTX 2070 with Max-Q Design" which didn't help. It looked like it was finding the GPU ok based on the logs:

...
info:  Found device: NVIDIA GeForce RTX 2070 with Max-Q Design (NVIDIA 580.95.5)
...
info:  NVIDIA GeForce RTX 2070 with Max-Q Design:
info:    Driver   : NVIDIA 580.95.5
...

eclipse-909 avatar Nov 04 '25 20:11 eclipse-909

@Stickend You mean even with same dxvk versions? Dxvk have always benefited from rebar at least and some newer changes might have pushed some borderlines stuff in to bad territory without. See https://github.com/doitsujin/dxvk/issues/5216#issuecomment-3337232426 and https://github.com/doitsujin/dxvk/issues/5216#issuecomment-3339794853 as examples.

The DXVK_FILTER_DEVICE_NAME=2070 part was a response for @eclipse-909.

Blisto91 avatar Nov 04 '25 20:11 Blisto91

@Blisto91 yes, what happened basically is that I've been using dxvk for both GTA IV and Left 4 Dead 2 for years and everything was good until yesterday, which out of nothing they starting stuttering and even freezing, meaning now I can't even use dxvk anymore, and that's what I'm trying to understand, specially when no update from Microsoft, Nvidia or even dxvk happened in the first place.

Stickend avatar Nov 04 '25 20:11 Stickend

Not sure, sorry.

@eclipse-909 Do you consider this issue solved?

Blisto91 avatar Nov 04 '25 20:11 Blisto91

@Blisto91 I'd like to try the solution the OP did, but I'm not sure how to do it.

Stickend avatar Nov 04 '25 20:11 Stickend

@Blisto91 I'd say I found a workaround. The weird thing is that native Vulkan apps worked fine in hybrid mode. I ran vkcube with no problem for example. The thing that makes it freeze is DXVK in hybrid mode. I don't know if this is a bug in DXVK or if it's an Optimus/Nvidia limitation that affects DXVK but not Vulkan.

eclipse-909 avatar Nov 04 '25 20:11 eclipse-909

@Stickend just click the link from my comment and follow those steps. Here are some relevant Arch Wiki pages.

eclipse-909 avatar Nov 04 '25 20:11 eclipse-909

@Stickend This issue is unrelated to your performance problem and is also about some Linux specific things that wont apply to Windows. For your perf issue then also make sure the GPU playing the games is also the one driving the display btw

Blisto91 avatar Nov 04 '25 20:11 Blisto91

@eclipse-909 We can keep the issue open if you want then.

Blisto91 avatar Nov 04 '25 20:11 Blisto91

@Blisto91 I'm fine with you closing it if you want to since I found a workaround. I don't know how DXVK works under the hood so I don't know where the root cause of the bug is. If it is a DXVK bug, then it would probably make sense to leave it open to investigate it later. It's up to you.

eclipse-909 avatar Nov 04 '25 20:11 eclipse-909

rather than at the splash screen or main menu. __GL_THREADED_OPTIMIZATIONS and DXVK_ASYNC may have done something, but it's really hard to tell since it always freezes.

pls don’t set __GL_THREADED_OPTIMIZATIONS=1, it may cause some games to crash and fail to run. That’s why nvidia sets its default value to 0. Also, don’t use dxvk-async, it can break rendering, and i don’t think it improves performance in any case

Zebra2711 avatar Nov 04 '25 20:11 Zebra2711