dxvk
dxvk copied to clipboard
[d3d9] Much lower performance in Halo PC when run purely with DXVK compared to running dgVoodoo2+DXVK on the same system
Halo PC (2003) runs about ~50% slower on DXVK alone compared with using the d3d9 wrapper dgVoodoo2 to translate the game to d3d11, and then DXVK to translate that d3d11 to Vulkan. (also applies to the demo)
There must be a major bottleneck in the d3d9 code as using two wrappers and going through another API should not be faster than only one translation.
Software information
Halo PC, max settings with unlocked framerate. Chimera mod to fix a whole bunch of game issues, this has no effect on the performance difference.
System information
- GPU: AMD RX 580
- Driver:Mesa/radv 20.1.2
- Wine version: wine-staging 5.11
- DXVK version: v1.7-2e37825
Log files
-- no log as there is nothing to log --
Still applies to c4f37d3981e027fcb8d759a92293d6ddbc80fdc3
Are you CPU-bound or GPU-bound? What settings? Apitrace?
-- no log as there is nothing to log --
wtf?
Please provide an apitrace.
This game has issues with apitrace. It can only be traced if you use the fall back fixed function video mode, one that hides this issue somewhat. This video mode is also completely broken.
I know that's extremely unhelpful but the only reliable way to reproduce this game is to run the demo version.
This is still an issue. According to the DXVK HUD, pure DXVK does not max out the GPU.
Pure DXVK:
DXVK with dgVoodoo2 d3d9>d3d11 translation stacked on top:
Please provide an apitrace so someone actually has the ability to look into this.
Unfortunately apitrace does not work properly with this game.
Here is a working trace. This was made on Windows with an nvidia GPU however. Hopefully this helps. http://vaporeon.io/hosted/halo/misc/halo_trace.7z
Game doesn't even work with dgvoodoo here:
I also can't repro any performance issues. I get like 1000+ fps everywhere in this game.
This build seems to perform worse than the 1.7.3 release.
As for dgvoodoo, my Halo install is using the 1.10 update with the chimera mod, I have not tried it in any other configuration.
I'll try with that mod.
@Vaporeon Friendly ping. Could i get you to retest this with latest dxvk? :slightly_smiling_face:
Not sure why I've pinged Vaporeon here 🤔
@Aerocatia Are you able to retest this?
Yeah I did a cheeky username switcharoo. I will retest this very soon, I have the correct Linux setup again to do this.
I have retested this on the exact same hardware however using whatever the current Mesa on Arch is and the latest release of DXVK.
Performance is the same, wine3d is performing much faster than DXVK on this setup. I can't get dgVoodoo to work on WINE anymore, but retesting both on Windows shows dgVoodoo is running much faster.
DXVK d3d9 seems to be held up by something.
Dang. Well thank you very much for the retest 👍
I tried the game and performance matches what I get on Windows. Both run at 800-1200 fps at 4k max settings.
So I have noticed a game setting directly related to this issue.
It is related to the setting DisableBuffering
(described as "Forces a video card to render each scene - used to prevent mouse lag")
This setting is more of less free on native d3d9 drivers, however it completely murders performance on DXVK, especially on AMD. I forgot I had this setting on when making the original report.
This may possibly be related to https://github.com/doitsujin/dxvk/issues/3906