I hate opening superficial threads but at this point, I think it's better than spanning this over several related topics where this is slightly off-topic. So, after I compared the performance between the DX12 and DX11 versions of The Witcher 3 (DX11 is ~50% faster with the same settings but that's not the interesting point here), I decided to give DXVK (v2.1) a quick try. I did this simply out of curiosity because I already experimented with DXVK in the past (including the async shader compilation version) not that long ago (maybe 6 months ago, or so) and found ~0 performance improvements (but worse shader compilation stutter in general while the shader cache was cold). This time around, I gained ~17% fps in The Witcher 3 with no visible image quality difference. This was unexpected. hence I decided to test some more games and found some cases where the fps is ~50% higher with DXVK. This huge difference happens in a game/scene where the poor native performance is seemingly an anomaly (my computer should handle that game/scene with ease, running at my fps cap with <99% utilization). Since I can't use DXVK with all games (some won't even load with it, etc) I decided to try and find the root cause of poor native DX11 performance instead of relying on a "sort-of-workaround" that is DXVK on Windows. But I am pretty much out of ideas about what the problem might be. I already tried a "refresh install" of Windows (an update to the same version with an installer that is pre-processed with the latest CU/SSU packages) followed by SFC/DISM checks, a DDU-aided "clean install" of the nVidia driver, looked over the Windows Power Profile settings, etc. I don't really "tweak" anything in general (no crazy fiddling around in the Win registry or Services except for some very specific cases for isolated issues, I don't use game mods, I don't knock myself out with undocumented keys in Inspector or anything... no "tweak utilities" are installed except some really minor ones like ISLC to fix the timer resolution at 0.5 ms [which is also set by some games / official loaders anyway]). Here are some examples (with the latest 531.41 driver and Win11 .1413 but the issue started weeks if not a few months ago while I was continuously updating both Win11 and the driver as new versions were released). I was already a bit wary about the performance but I kept blaming the games and/or their patches because not everything seemed to run slower (of course some games run at my fps cap anyway, and some games I played were DX12-only). Mass Effect 3 Legendary (EA App / Play version, so fully updated): DX11 native: https://ibb.co/Zczz5CF - 67 fps (dips to ~60 while the camera is moving) DX11 DXVK: https://ibb.co/vsrHX28 - 117 fps (limited to 117 with the nV driver's V3 limiter in NVCP) The Witcher 3 "next gen" (Steam version, so fully updated): DX11 native: https://ibb.co/ZzWp37X -- 80 fps DX11 DXVK: https://ibb.co/gdqkZWp -- 93 fps DX12 native: https://ibb.co/yBmSbR5 - 42 fps (RT off, Reflex Off, same settings as DX11) I don't actually play with TW3, I am just testing it after every patch since the "next gen" update. But I am actually playing through the ME trilogy since early February and ME1 produced similar fps dips (but I simply blamed the game). That was several Win11 sub-versions and driver versions ago, so I can't pin-point things better than "sometimes between 2022/10 and 2023/02". DXVK shouldn't improve the fps numbers at this scale (if at all) with this CPU (which doesn't seem to be a bottleneck according to the RTSS readings), especially with nVidia's DX11 drivers (which are claimed to be superior). But since games do run significantly better (2x better in some cases) with DXVK it shouldn't be a general issue at the hardware or firmware level. Let's say my VGA card was stuck at PCI-E v1.1 1x speed or my CPU didn't really run at boost clocks due to some UEFI firmware bug. Or there was a crypto-miner virus running in the background. These should all affect Vulkan the same way as it affects native DX11. And DX12 seems to be unaffected since 3DMark's FireStrike gives me similar results as other similar systems get (even with much much older nVidia drivers and Windows 10). So, I am out of ideas what's going on with the DX11 performance. (I didn't test games which run at 300+ fps with V-Sync and fps-cap disabled because that's irrelevant for me. I don't run games like that. And thus I also excluded games that hit my cap easily and steadily anyways.) Any ideas? Could somebody with a similar system try to reproduce these tests above (try ME3L or TW3 with DXVK), please? Edit: I found a game (I just remembered it runs slow and has a DX11 mode) that behaves as expected (meaning: it runs slightly worse rather than significantly better with DXVK). Control (Ultimate edition): DX11 native: https://ibb.co/PGm6HQw - 62 fps DX11 DXVK: https://ibb.co/8PKbgbH --- 61 fps DX12 native: https://ibb.co/60dMJjF ---- 65 fps (for reference) So, I am even less sure about the cause because DX11 isn't universally slower in all games.. Edit2: I also found this video where somebody with an nV RTX3050 VGA and an AMD 5600X CPU (so same architectures but lower performance tiers there compared to my machine) had a minimal performance difference between DX11 and DX12. . Thus, I am even more confused because whatever this is, it also seems to affect DX12 performance in certain games. But again, not in all DX12 games (TW3 is horrible, Control is fine -> well, unless that game should run much faster in DX12 than in DX11 but I doubt that). TW3 was like this for me (~50% difference between DX11 and DX12 at the same settings) from the beginning (the day I first tried the very first "next-gen" v4.0.0 version). So whatever bogs my system down is there from at least as early as 2022/12. Trimmed DxDiag log: ------------------ System Information ------------------ Time of this report: 3/22/2023, 18:51:46 Machine name: TFJ-DESKTOP Machine Id: {7E3D0C18-5616-407B-8883-313DFEF33652} Operating System: Windows 11 Enterprise 64-bit (10.0, Build 22621) (22621.ni_release.220506-1250) Language: Hungarian (Regional Setting: Hungarian) System Manufacturer: ASUS System Model: System Product Name BIOS: 3002 (type: UEFI) Processor: AMD Ryzen 7 5800X 8-Core Processor (16 CPUs), ~3.8GHz Memory: 32768MB RAM Available OS Memory: 32682MB RAM Page File: 12506MB used, 30415MB available Windows Dir: C:\WINDOWS DirectX Version: DirectX 12 DX Setup Parameters: Not found User DPI Setting: 96 DPI (100 percent) System DPI Setting: 288 DPI (300 percent) DWM DPI Scaling: Disabled Miracast: Available, no HDCP Microsoft Graphics Hybrid: Not Supported DirectX Database Version: 1.4.5 DxDiag Version: 10.00.22621.0001 64bit Unicode ------------ DxDiag Notes ------------ Display Tab 1: No problems found. Display Tab 2: No problems found. Sound Tab 1: No problems found. Input Tab: No problems found.
I got simular results with OG Mass Effect (DX9) - double the framerate with DXVK. So Legendary Edition didn't improve things much.
Though that's not new, DXVK has been helping CPU bound performance in UE3 games already since Windows 10.
I have a new set of TW3 measurements here with different Screen Space Reflection settings: https://forums.guru3d.com/threads/the-witcher-3.407946/page-111#post-6114602 It's interesting that DXVK seems to increase the fps in a seemingly GPU-limited scenario (GPU utilization is 100% and TDP is running very close to the 350W cap in both scenarios). This holds true with both Low and High SPR settings (High should be really CPU limited is even Low shows as such and the fps difference is significant). Well, it's probably an extremely minimalistic DX9->DX11 port and thus the same rules apply to both game versions. Yet, I still wouldn't expect such a poor performance with the native drivers (regardless of the game version, be it either DX9 or lazy DX11). But on nVidia cards as well? Even the maintaners of DXVK stated that native nVidia DX drivers should be superior to these kinds of wrappers. And even ignoring that, DXVK should only help CPU-limited cases (whereas it shows improvements on my system in seemingly GPU-limited scenarios as well).
When that wiki page was written, DXVK didn't yet include D3D9 support. And it's a limitation/regression of Windows, not of the D3D9 API itself.
Vulkan could strip non-API reference, performance counter and what else is hooking from useless postmortem vendor crash (see aftermath, optix ETC) log-loop as in generic implementation. -- Also, for reference in the Witcher 3 (4.02) I'm getting around 120 FPS on that spot with DLSS on the 2080TI at 1080P with 472.12 in DX12 Graphics: ULTRA - RT OFF HairWorks Geralt Spoiler Might be the time of the day or the resolution change but mine screen doesn't look anything like your.