DXVK [GitHub], which provides a Vulkan-based D3D11 and D3D10 implementation for use in Wine has a new build out. The pace of development on this continues to absolutely mesmerise me, with each release bringing something really interesting. Reminder: See my interview with the creator of DXVK here.
New feature highlights in 0.80:
Improvements
- Added State Cache
- Direct3D Feature Level 11_1 is now supported.
- Minor overall reduction of CPU overhead.
Bug fixes
- Fixed crashes on some APU systems without dedicated video memory (#640)
- Assetto Corsa: Fixed crashes and artifacts when reflections are disabled (#648)
- Project Cars 2: Fixed crash upon loading the game (#375, #641)
About the new State Cache feature, they said this:
In order to reduce stutter on subsequent runs of an application, DXVK now caches pipeline state, which allows it to compile shaders earlier than it currently does, even if the driver's shader cache got invalidated after an update. This may temporarily cause very high CPU load.
By default, this feature is enabled, and cache files are typically created in the same directory where the game executable is located. Refer to the README for further details.
We don't know when this will be pulled into Proton for Valve's Steam Play, which is now a few versions behind. If you wish to test DXVK with Wine directly, I've no doubt Lutris will have a build up sometime soon.
I tested it with The Witcher 3, and somehow witcher3.dxvk-cache that was generated is just 12 bytes.The game is silly and
a) creates multiple D3D11 devices
b) changes its current working directory multiple times.
The actual cache file you're looking for is in the /bin subdir, not in /bin/x64.
Also, Witcher 3 does not compile its shaders ahead of time, so you will still encounter stutters in this game (although it should be less annoying because it can now use multiple threads to do it in parallel).
Last edited by YoRHa-2B on 23 Sep 2018 at 6:31 pm UTC
Direct3D Feature Level 11_1 is now supported.So I take it that DXVK is now DX11 feature complete, this is incredible news!
Direct3D Feature Level 11_1 is now supported.So I take it that DXVK is now DX11 feature complete, this is incredible news!
I wonder when they'll bump the release version to 1.0 -- when they reach D3D10/10_1, maybe? The wiki page isn't very explicit.
So I take it that DXVK is now DX11 feature complete, this is incredible news!Not quite, Stream Output is still a big feature that's missing.
I hope this DXVK version is soon integrated into Proton
Last edited by leillo1975 on 23 Sep 2018 at 7:29 pm UTC
Direct3D Feature Level 11_1 is now supported.So I take it that DXVK is now DX11 feature complete, this is incredible news!
I wonder when they'll bump the release version to 1.0 -- when they reach D3D10/10_1, maybe? The wiki page isn't very explicit.
There is no need for seeking meaning in numbers.
Just enjoy it , that's what i do.
GPU:%
CPU:%
FPS:XX.XX
min:XX.XX Max:XX.XX
The Performance meters idk what they call it
But i want to test my Lib and Make some DXVK vs Windows Vidoes
How do i enable it on Lutris.
Can some one tell me how to enable
GPU:%
CPU:%
FPS:XX.XX
min:XX.XX Max:XX.XX
The Performance meters idk what they call it
But i want to test my Lib and Make some DXVK vs Windows Vidoes
How do i enable it on Lutris.
https://github.com/doitsujin/dxvk/blob/master/README.md#hud
The game is silly and
a) creates multiple D3D11 devices
b) changes its current working directory multiple times.
The actual cache file you're looking for is in the /bin subdir, not in /bin/x64.
Also, Witcher 3 does not compile its shaders ahead of time, so you will still encounter stutters in this game (although it should be less annoying because it can now use multiple threads to do it in parallel).
Good to know, thanks. I see the one in bin, and it's around 1 MB after a brief test.
I noticed that general stutter is lower now. A lot of Ryzen cores help (DXVK reports using 12 threads for compilation):
info: DXVK: Read 627 valid state cache entries
info: DXVK: Using 12 compiler threads
Last edited by Shmerl on 23 Sep 2018 at 7:54 pm UTC
The game is silly and
a) creates multiple D3D11 devices
b) changes its current working directory multiple times.
The actual cache file you're looking for is in the /bin subdir, not in /bin/x64.
Also, Witcher 3 does not compile its shaders ahead of time, so you will still encounter stutters in this game (although it should be less annoying because it can now use multiple threads to do it in parallel).
Good to know, thanks. I see the one in bin, and it's around 1 MB after a brief test.
I noticed that general stutter is lower now. A lot of Ryzen cores help (DXVK reports using 12 threads for compilation):
info: DXVK: Read 627 valid state cache entries
info: DXVK: Using 12 compiler threads
Yes.
If you have 8 cores ( 4c / 8t included ) and greater , it uses 3/4 of cores for that.
If you have less than 8 cores it uses half of them.
There is no need for seeking meaning in numbers.
Just enjoy it , that's what i do.
That might be true in this case; though in general (including anything mission critical), you do have to think twice, or take precautions, before using zero-point software.
I tested it with The Witcher 3, and somehow witcher3.dxvk-cache that was generated is just 12 bytes.The game is silly and
a) creates multiple D3D11 devices
b) changes its current working directory multiple times.
The actual cache file you're looking for is in the /bin subdir, not in /bin/x64.
Also, Witcher 3 does not compile its shaders ahead of time, so you will still encounter stutters in this game (although it should be less annoying because it can now use multiple threads to do it in parallel).
Fantastic update, this has eliminated a lot of the stutter in Witcher 3 :-)
I have but one question - How does the new shader cache work with Nvidia? The games now seem to store shader cache in both the *.dxvk-cache file and Nvidia's own method (I'm using the __GL_SHADER_DISK_CACHE_PATH envvar). Do they work together or I can disable the Nvidia built in one?
Thanks for your work.
I have but one question - How does the new shader cache work with Nvidia? The games now seem to store shader cache in both the *.dxvk-cache file and Nvidia's own method (I'm using the __GL_SHADER_DISK_CACHE_PATH envvar). Do they work together or I can disable the Nvidia built in one?The new DXVK cache stores pipeline state, while Nvidia's cache stores compiled shaders. There's no actual overlap.
I have but one question - How does the new shader cache work with Nvidia? The games now seem to store shader cache in both the *.dxvk-cache file and Nvidia's own method (I'm using the __GL_SHADER_DISK_CACHE_PATH envvar). Do they work together or I can disable the Nvidia built in one?The new DXVK cache stores pipeline state, while Nvidia's cache stores compiled shaders. There's no actual overlap.
That clears it, thanks :-)
So I take it that DXVK is now DX11 feature complete, this is incredible news!Not quite, Stream Output is still a big feature that's missing.
Ok so that is not part of the feature level then I suppose? (Or the Wikipedia page is wrong on 11_1 being the highest feature level for DX11).
Anyway, you are far to humble ;)
Last edited by F.Ultra on 24 Sep 2018 at 5:04 pm UTC
Ok so that is not part of the feature level then I suppose?It's part of 10_0 and above, but DXVK currently just ignores that and pretends that everything is fine.
And, well, that works in games that don't need the feature, but some do need it.
Last edited by YoRHa-2B on 24 Sep 2018 at 5:07 pm UTC
See more from me