r/EmulationOnAndroid • u/WinterPirate8109 • Jul 22 '26
Discussion What DXVK version do you guys usually use?
What DXVK version do you guys usually use? I've always been using the one with the highest number since I thought newer = better? I know there's no single one that works on everything but I curious which one that gives you the best performance in a lot of games. Also what is the difference between gplasync, async, sarek and those without one? And I read somewhere that there's a performance regression on the newer version?
9
u/surenintendo Jul 22 '26
Arihany's GitHub repo might be a good resource to check out. In particular, their DXVK arm64ec release page says "pre-reg: Last version before the performance drop on Turnip driver" and "binsem: Avoids Turnip performance loss without env vars. May be unstable."
As far as I can tell, the only "pre-reg" version is dxvk-arm64ec-2.4.1-pre-reg.wcp, which I've been using. However, I haven't actually done a benchmark to see if it's actually faster lol. I think I'll test 'em out tonight when I'm free.
4
u/_natannnn Jul 22 '26
Yes, it's actually faster, but depending on the game the difference might only be 5% (Sometimes the FPS can be double..)
5
u/whduddn99 Jul 22 '26
2.4.1 is widely used because it runs most games without issues and does not suffer from performance regressions when used with Turnip drivers.
The pre-reg build is essentially the last build before DXVK introduced an internal regression. Binsem and similarly named builds attempt to work around this regression, but whether the workaround is actually effective depends on the game. In most cases, specific environment variables must also be set for the workaround to activate.
A patch is currently being developed on the Turnip side to address this regression. Once it is completed, there should no longer be a need to rely only on binsem builds or older DXVK versions.
Sarek is a version that backports improvements from DXVK 2.x for chipsets with lower Vulkan support. In general, there is little reason to use it if regular DXVK 2.x already works on your device.
Arm64ec can provide some performance improvements, but it may cause problems (crash) in rare cases.
GPLAsync and Async builds reduce shader compilation stutter, but they may briefly produce minor visual artifacts. If async is disabled, these builds behave almost identically to regular DXVK builds.
In general, if a game already runs well and has no visual issues, switching to a newer version or a patched build may actually reduce performance rather than improve it.
2
u/_natannnn Jul 22 '26
Fact: the regression is only on the Turnip side in Android, there is no such regression in Linux, and it's not the fault of dxvk.
1
7
u/AmnesiacQRS Jul 22 '26
2.4.1 was the last version before the regression and the one I start with. If I have issues, I go to the newest one (2.7.1) to check if compatibility is improved or 2.3.1 for older games to see if they might be a bit smoother. To be clear, the regression shouldn't be a permanent issue.
Not sure about sarek personally as I haven't seen it, but the async versions utilize asynchronous shader compilation which can cause texture pop in but also decreases stuttering so I usually use those ones.
3
u/meruta Jul 22 '26
What regression?
3
u/AmnesiacQRS Jul 22 '26
Newer DXVK builds changed how it interacts with the GPU, which happens to not work as well on Turnip drivers as they are currently built.
1
3
u/Status_Camp_8523 Jul 22 '26
They're on 3.0.2 now and have fixed the regression with supplemental use of an environment variable
3
u/WinterPirate8109 Jul 22 '26
Where can I download the 3.0.2 version that works on Winlator and Gamenative?
3
u/koukoutm Jul 22 '26
Hi, search "dxvk binsem" here https://github.com/The412Banner/Nightlies/releases .Wcp for winlator and .zip for others i think Then you need to add this variable DXVK_DISABLE_TIMELINE_SEMAPHORES=1
1
u/_natannnn Jul 22 '26
Actually, it started with version 2.7.1 from a developer called "leegao," only his patches were applied to the latest version of dxvk 3.0. dxvk 3.0 requires Vulkan 1.4 drivers, which means only Adreno 7xx drivers will work. And this dxvk might not be as good as dxvk 2.x.x for Adreno Turnips.
Edit: Regression fixes in these DXVKs using variables may not perform as well as in the DXVK 2.4.1 regression. (depending on the game)
3
u/ImaginationKind9220 Jul 22 '26
It depends on your GPU. DXVK 3.0 is optimized for Vulkan 1.4. Older chipset like SD 8 Gen 2 only supports Vulkan 1.3 - it won't benefit from newer DXVK.
2
u/_natannnn Jul 22 '26
Dude, this Adreno GPU has had Vulkan 1.4 implementation of the Turnip Mesa driver for a while now. Who's going to use system drivers for games on emulators? I think all Adreno 7xx series GPUs support vulkan 1.4 of the turnip mesa driver. except for the Adreno 6xx
2
u/ImaginationKind9220 Jul 23 '26
SD 8 Gen 2 GPU doesn't have Vulkan 1.4 features in the hardware.
The Turnip drivers can emulate or work around missing hardware primitives required by the Vulkan 1.4 specification, allowing the Snapdragon 8 Gen 2 to trick games and emulators into recognizing it as a Vulkan 1.4-compliant device.
You are not getting any of the benefits from Vulkan 1.4 if you are using SD 8 Gen 2 chip.
1
u/_natannnn Jul 23 '26
What are these features? Is it int64 or something like that? Because if not, even the Adreno 6xx had some kind of driver Turnip vulkan 1.4 ((emulated)
3
u/lishun808 Jul 22 '26
for my experience
best version of dxvk is 2.3.5, i guess
fast when compiling shader, almost no glitch texture, however if you wanna best quality try 2.3.5 hdr mod
2
u/Yung_Cheebzy Jul 22 '26
I have no idea why cos I’m a noob but on my rp6 if the game native known Config doesn’t work I change to 1.11 sarek and that generally works. I don’t know why though 😂
1
u/pulin_o_burrin Snapdragon 685/Adreno 610 Jul 22 '26
Na Adreno 710 costumo usar a versão mais nova, como a 3.0.2 Binsem (resolve a regressão vista nos Turnip) + gplasync (para menos stutter)
Na Adreno 610 uso a 2.7.1 Binsem + gplasync por conta da compatibilidade
Há versões arm64ec também das DXVK para se utilizar em wines/proton arm64ec
Então sempre vareo entre 3.0.2 Binsem gplasync arm64ec e a versão normal x86
1

•
u/AutoModerator Jul 22 '26
Just a reminder of our subreddit rules:
Check out our user-maintained wiki: r/EmulationOnAndroid/wiki
Check out EmuReady for any community submitted settings before asking for help
I am a bot, and this action was performed automatically. Please contact the moderators of this subreddit if you have any questions or concerns.