no between default dxvk/vkd3d and dxvk/vkd3d with these patches GitHub - jp7677/dxvk-nvapi at rtxmg-ser + GitHub - Saancreed/vkd3d-proton at nvapi-rtxmg-ser
Amazing. Do you see impact on other games? I remember BMW was an outlier, even for a DX12 game.
Out of curiosity: that branch on vkd3d contains 40 patches. Do you know which one(s) boosted performance? Are you the developer?
I hope these patches will be merged in the main dxvk/vkd3d repo.
@Bobovi88 How close we’re from a Windows version in terms of performance, any idea?
I’m also wondering: these patches don’t affect the DX12 issues, so what happens if these patches + a DX12 fix is provided… It will be fantastic.
Probably yes, it seems that could be related to this test: tracy/alloc_test.cpp at master · gilvbp/tracy · GitHub, and using the Tracy software.
Like I already said, I’d recommend doing a test using Tracy with a game using vkd3d-proton and see how it goes.
You’re welcome.
EDITED.
On a scale of 1 to 10 how back are we bros?
Wait, so you are telling US that VKD3D issues are RESOLVED? At least in games? How can I test this as I’m noob in lib replacing or whatever this requires
Apparently only RT and only in some games.

No. Thats just a feature. Getting Started with OMM SDK | NVIDIA Developer
“Opacity Micro-Maps are used to accelerate ray tracing of high detail geometry by efficiently encoding the opacity states of micro-triangles and micro meshes. Traditionally high detail opacity information is constructed via alpha textures, however, for ray tracing this normally involves costly alpha evaluation in shaders to generate the desired result.”
OK, so the perf issue is compounded: memory management, card features (like OMM) in need of being implemented, etc. As suspected there is no one cause for this, although some are quite important, such as the memory sub-system issue pointed out by @gilvbp.
so basically:
1 - the cause of the DX12 regression with Nvidia on Linux has been discovered.
2 - there are some patches that boost performance with ray tracing for Nvidia gpus on Linux, and if they get merged the regression of performance with ray tracing on Linux will be fixed for Nvidia?
Is this correct? I’m confused so much has happened so fast
-
Probably yes. Although, only nvidia can cofirm.
-
That’s not a regression or a bug; it’s a feature enhancement. FYI, only a few games DX12 support OMM and SER..
EDIT.
Thank you very much for explaining :)
But please allow me to still be sceptical about few things.
First, as I had mentioned this does not explain the performance regression that exists on Windows11 w/ DX12 vs. Windows11 w/ VKD3D. This could only explain the (very slight) difference between W11 + VKD3D and Linux + VKD3D.
Secondly, even if we ignored that, GPU allocation isn’t a constant operation. This issue should not manifest itself 100% of the time and should not be measurable by looking at the average FPS counter, but rather at the 1%/10% counter. Shouldn’t it?
Why do you say it doesn’t explain the perf regression on Windows 11? The internal driver architecture is heavily shared between Windows and Linux, and so we should expect the Vulkan memory allocation path to be extremely similar on both.
My assumption is that Windows’ WDDM driver handles GPU memory allocations asynchronously in user-space, so VKD3D on Windows incurs only a small overhead, whereas on Linux, NVIDIA still routes every vkAllocateMemory call through a blocking ioctl into the kernel.
Seems like potentially good news for the future? 😊
that’s unrelated to this discussion
Yes, absolutely clear. I’m just afraid that the VKD3D overhead on Windows is not small, from what we could see it’s almost as big as on Linux.
As I mentioned earlier, the best way to verify that is by running a test with Tracy under those scenarios
I hope we’ll see some improvements with the 580 driver
Hope so, cause this is the only major roadblock now.
