protonscr

FarCry Primal low perfomance Win 10 x64 Nvidia DX11

dxvkclosed
doitsujin/dxvk#3848 · opened 2024-02-09 by 7AllenWalker7 · updated 2024-02-09 · 6 comments · github
77AllenWalker7 2024-02-09 github

Hello, is there a way to get similar performance from Vulkan to Windows 10 as DX 11 native?

Software information

FarCry Primal, max settings, 3440x1440 144 hz

System information

Apitrace file(s)

https://mega.nz/file/9GgwxByJ#SHompHfJfHS-fQOGThVREP5J9iK2731iXDwynB-xoMQ

Log files

photo_5345943732203148169_w
photo_5345943732203148162_w

BBlisto91 2024-02-09 github

Is it the same FPS compared to 2.3 stable?

77AllenWalker7 2024-02-09 github

it s native dx11 vs vulkan dxvk

BBlisto91 2024-02-09 github

How does latest master dxvk compare to dxvk 2.3 i mean

77AllenWalker7 2024-02-09 github

2.3 have more fps.
Here log and screen

FCPrimal_d3d11.log
FCPrimal_dxgi.log
photo_5345943732203148428_w

BBlisto91 2024-02-09 github

I think this game doesn't like not having a working Nvapi library when running on Nvidia, which will be the case on Windows. E.g. it might be aggressively trying to load the Nvapi library a lot all the time when it sees a Nvidia GPU.

I assume when using master dxvk if you make a file called dxvk.conf next to the exe and insert dxgi.hideNvidiaGpu = True the performance should improve.

Normally Nvidia GPUs are hidden and shown as AMD by default in d3d10 and d3d11 to work around these issues, but some of the Far Cry games have internal logic that differs depending on GPU vendor. These differences can cause visual issues in some areas in the game if there is a mismatch between what the game expects from a vendor and what the driver does.

So the tldr is this is one of the games where we don't hide the fact we are running on Nvidia to work around visual issues, but the game will then have a performance drop if Nvapi isn't working. There isn't a dxvk compatible Nvapi implementation on Windows.

The visual issues caused by the above in this game are not as bad as some of the other Far Cry games because it mostly presents itself on buildings afaik which this game doesn't have alot of.
Later in the game if you notice dark or bright squares on buildings or objects in your village you could try to spoof the vendor to being Intel with dxgi.customVendorId = 8086. I don't know if this helps though.

77AllenWalker7 2024-02-09 github

Thanks, I try this.

Nothing extracted yet.