Page 17 of 23
Re: [DX9 > DX12 PROXY] Further Performance Boosting
Posted: Thu Mar 31, 2022 9:17 pm
by Tuxedomoon
Hi, no need for batchfile anymore, forget this post
Dynamene
Edit: Xpander got the real workaround below, no need for a batchfile anymore

Re: [DX9 > DX12 PROXY] Further Performance Boosting
Posted: Thu Mar 31, 2022 11:34 pm
by Scottx125
Played a fair amount more with the DXVK proxy. Slight stuttering is still present when moving the camera. But overall once a zone loads in, it's much smoother. Even with 200-300 players in a zone.
Re: [DX9 > DX12 PROXY] Further Performance Boosting
Posted: Fri Apr 01, 2022 12:03 am
by Tesq
Scottx125 wrote: Thu Mar 31, 2022 11:34 pm
Played a fair amount more with the DXVK proxy. Slight stuttering is still present when moving the camera. But overall once a zone loads in, it's much smoother. Even with 200-300 players in a zone.
Experienced the same thing as you,
as i wrote some page earlier, it seems vulkan stuff need to catch shaders for few mins you log into a zone, once it has catch all the shaders that you use around you, it go smooth.
Re: [DX9 > DX12 PROXY] Further Performance Boosting
Posted: Fri Apr 01, 2022 10:56 am
by tvbrowntown
https://github.com/Sporif/dxvk-async
Haven't tried this yet but looks promising. I won't be able to test it until Monday but thought others might like to give it a try and see what happens. You can just download a copy of the patched d3d9.dll from the releases section instead of patching it yourself.
An attempt to improve the dxvk async patch at
https://github.com/jomihaka/dxvk-poe-hack
Improvements
Compatible with dxvk v1.4.3 - v1.10.1
Async pipelines are written to the state cache. The original patch doesn't since it was made before dxvk introduced the state cache. Previously you would end up with near empty state caches when using dxvk-async, now you can have the best of both worlds.
A lot less stutterring (nearly none at all in some games) by not blocking the main thread when compiling async pipelines. The downside is that the shader cache is around 5-10% larger (I guess due to duplicate shaders?). But the state cache is roughly the same size as a non-async produced state cache.
A new option dxvk.numAsyncThreads to specify the number of async pipeline compiler threads. Previously half the cpu thread count was used by default, now it's the same logic as the state cache.
Instructions
Patch dxvk with dxvk-async.patch
Set the environment variable DXVK_ASYNC=1 or use dxvk.enableAsync = true in dxvk.conf
To compare with stock dxvk, rename or delete your state and shader caches
Use DXVK_HUD=pipelines to see the pipeline count go up (hopefully) without stutter
Re: [DX9 > DX12 PROXY] Further Performance Boosting
Posted: Fri Apr 01, 2022 12:40 pm
by xpander
Can anyone on windows also test the launcher workaround by creating
dxvk.conf file into the RoR folder with contents:
Code: Select all
[RoRLauncher.exe]
d3d9.shaderModel = 1
Seems to make the launcher render perfectly here on Linux and game Launches nicely with DXVK also.
credit goes to dnblank123 on DXVK github to suggest this.
Re: [DX9 > DX12 PROXY] Further Performance Boosting
Posted: Fri Apr 01, 2022 12:41 pm
by Kenshiken
tvbrowntown wrote: Fri Apr 01, 2022 10:56 am
https://github.com/Sporif/dxvk-async
Haven't tried this yet but looks promising. I won't be able to test it until Monday but thought others might like to give it a try and see what happens. You can just download a copy of the patched d3d9.dll from the releases section instead of patching it yourself.
An attempt to improve the dxvk async patch at
https://github.com/jomihaka/dxvk-poe-hack
Improvements
Compatible with dxvk v1.4.3 - v1.10.1
Async pipelines are written to the state cache. The original patch doesn't since it was made before dxvk introduced the state cache. Previously you would end up with near empty state caches when using dxvk-async, now you can have the best of both worlds.
A lot less stutterring (nearly none at all in some games) by not blocking the main thread when compiling async pipelines. The downside is that the shader cache is around 5-10% larger (I guess due to duplicate shaders?). But the state cache is roughly the same size as a non-async produced state cache.
A new option dxvk.numAsyncThreads to specify the number of async pipeline compiler threads. Previously half the cpu thread count was used by default, now it's the same logic as the state cache.
Instructions
Patch dxvk with dxvk-async.patch
Set the environment variable DXVK_ASYNC=1 or use dxvk.enableAsync = true in dxvk.conf
To compare with stock dxvk, rename or delete your state and shader caches
Use DXVK_HUD=pipelines to see the pipeline count go up (hopefully) without stutter
Can you elaborate how to properly set up config file? or this .dll already patched and I didn't need to do anything on top?
xpander wrote: Fri Apr 01, 2022 12:40 pm
Can anyone on windows also test the launcher workaround by creating
dxvk.conf file into the RoR folder with contents:
Code: Select all
[RoRLauncher.exe]
d3d9.shaderModel = 1
Seems to make the launcher render perfectly here on Linux and game Launches nicely with DXVK also.
credit goes to dnblank123 on DXVK github to suggest this.
Yes, it works for windows too. At least for me. No need to .bat and replace .dll anymore.
Re: [DX9 > DX12 PROXY] Further Performance Boosting
Posted: Fri Apr 01, 2022 1:06 pm
by Scottx125
From what I've tested ShaderModel 1 doesn't work with the game client, 2 and 3 do though. You can test that as the dxvk.hud doesn't appear with shader 1. And when you explicitly state it to apply to the WAR-64.exe, it will then throw an error stating you don't meet the minimum spec.
edit. sorry i edited your post by accident... Xpander

Re: [DX9 > DX12 PROXY] Further Performance Boosting
Posted: Fri Apr 01, 2022 1:22 pm
by Fenris78
Tried the v1.10 with and without async, for war.exe and war-64. exe, it wont load with Reshade 4.9.1, will try with latest version, but launcher is now working fine without the .bat needed, that's a progress ! :p
Re: [DX9 > DX12 PROXY] Further Performance Boosting
Posted: Fri Apr 01, 2022 1:37 pm
by xpander
Scottx125 wrote: Fri Apr 01, 2022 1:06 pm
From what I've tested ShaderModel 1 doesn't work with the game client, 2 and 3 do though. You can test that as the dxvk.hud doesn't appear with shader 1. And when you explicitly state it to apply to the WAR-64.exe, it will then throw an error stating you don't meet the minimum spec.
If you apply Shader Model globally, then yes it doesn't work. it needs to be applied to Launcher only.
The other stuff is optional and yeah i do use other things also but i dont need to specify ShaderModel 3 for a game client manually.
i also edited your post by accident, thinking i was quoting you... sorry

Re: [DX9 > DX12 PROXY] Further Performance Boosting
Posted: Fri Apr 01, 2022 1:44 pm
by Scottx125
xpander wrote: Fri Apr 01, 2022 1:37 pm
Scottx125 wrote: Fri Apr 01, 2022 1:06 pm
From what I've tested ShaderModel 1 doesn't work with the game client, 2 and 3 do though. You can test that as the dxvk.hud doesn't appear with shader 1. And when you explicitly state it to apply to the WAR-64.exe, it will then throw an error stating you don't meet the minimum spec.
If you apply Shader Model globally, then yes it doesn't work. it needs to be applied to Launcher only.
The other stuff is optional and yeah i do use other things also but i dont need to specify ShaderModel 3 for a game client manually.
i also edited your post by accident, thinking i was quoting you... sorry
No problem ^^.