protonscr

[Linux/Xenia Canary] Huge overhead in dx12 -> vk conversion for need for speed most wanted 2005 and carbon.

vkd3dopen
HansKristian-Work/vkd3d-proton#2354 · opened 2025-02-22 by Fabxx · updated 2025-03-31 · 6 comments · github
FFabxx 2025-02-22 github

Under windows the games hit stable 30 FPS, Under linux the performance can drop to 15fps, with 90% GPU usage and above. Here's a video to show how it plays:

https://cdn.discordapp.com/attachments/701111856600711208/1175512526402895994/nfsmw.mp4?ex=67bac91a&is=67b9779a&hm=8dc51370f2827a8be063793ce0d3746f61ffac9314c2ccaa68b070bd0fe1e489&

Software information

Need For Speed Most Wanted

Xenia-Canary fbacd3c

System information

  • GPU: NVIDIA RTX 3060 Dual 12gb
  • Driver: 550.144.03
  • Wine version: 10.0
  • VKD3D-Proton version: 2.14.1

Log files

game.log

Sshelterx 2025-02-26 github

Why don't you use a native Linux build of the emulator instead of running it under proton?
I'm guessing you're seeing bad performance because Nvidia generally doesn't do very well with the DX12->Vulkan translation for reasons unknown.

FFabxx 2025-02-26 github

Why don't you use a native Linux build of the emulator instead of running it under proton? I'm guessing you're seeing bad performance because Nvidia generally doesn't do very well with the DX12->Vulkan translation for reasons unknown.

Because, while there is a native linux build, its vulkan implementation it's not complete and it hasn't been optimized, meaning that it lags a lot and uses 100% GPU all the time.

You can see the current state of the API in this thread:

https://github.com/xenia-project/xenia/issues/2028

Ddoitsujin maintainer 2025-02-27 github

Probably going to need some sort of d3d12 gfxreconstruct capture to see what's going on, running 20-year old xbox 360 games in ways that aren't highly questionable isn't exactly the easiest thing in the world.

FFabxx 2025-02-28 github

Probably going to need some sort of d3d12 gfxreconstruct capture to see what's going on, running 20-year old xbox 360 games in ways that aren't highly questionable isn't exactly the easiest thing in the world.

i'm compiling gfxreconstruct, i'll try to get a capture asap

SSSUPII 2025-03-02 github

Probably going to need some sort of d3d12 gfxreconstruct capture to see what's going on, running 20-year old xbox 360 games in ways that aren't highly questionable isn't exactly the easiest thing in the world.

Maybe I am missing something with the usage of the tool but while capture is in progress the emulator doesn't render anything anymore, being completely black.

But I was still able in this game to use audio cues to go into Explore mode, and generate this report (from while Explore mode was loading, to a bit after driving around)

https://mega.nz/file/d0oi2KZC

Key: HPpG70ttATzjhrGfbPDpY3Bxth0rApKHmH3hr4iwnyU

Is the report is invalid and something else is needed, please let me know!

FFabxx 2025-03-31 github

Any updates on the reliability of the capture?

Nothing extracted yet.