protonscr

[d3d11] Heavy Rain (Epic Games Store) performance regression with DXVK upper than 1.2.1

dxvkclosed game bug
doitsujin/dxvk#1575 · opened 2020-04-18 by Linskun · updated 2020-04-18 · 7 comments · github
1 matching comments, n / p to jump
LLinskun 2020-04-18 github

Heavy Rain work without problem with every Wine version (latest stable, staging, TKG, Lutris) & DXVK but the frametime remain stable and low only with DXVK library upper to 1.2.1 (official)
I've tried ALL DXVK version drom 1.2.1 to latest 1.6 and found this :

from v1.6 to v1.5 (including minor release)
Only 1 CPU core used at 100%
FPS lower to 20
Unplayable

from v1.4 to v1.2.2 (including minor release)
Better CPU core usage
FPS lowest to 18
Worst frametime
Unplayable

from v1.2.1 to every lower
Good CPU distributed usage
FPS 60
Stable frametime, only spike when compiling new shader
Perfectly playable

I've also tried :

  • different combinations of WINE & DXVK = The same
  • disabling Gnome and using simple Openbox without compositor = The same
  • enabling Feral gamemode = The same
  • Clear & change path of DXVK_STATE_CACHE = The same
  • Clear & change path of __GL_SHADER_DISK_CACHE = The same
  • Enabling WINEFSYNC = The same
  • Enabling __GL_SHADER_DISK_CACHE_SKIP_CLEANUP = The same
  • Using a kernel with FSYNC enabled = The same
  • Using a WINE version with ESYNC enabled or not = The same

I've made screenshots of htop && Heavy Rain with DXVK_HUD full
If you need i can provide logs, but apart performance regressions the game is perfect

Software information

OS: Arch Linux x86_64
Resolution: 1920x1080 && 1280x720
Settings: indifferently from HIGH to LOW, MSAA && SMAA Disabled or not
Dm/Wm: GNOME / Openbox

System information

  • Kernel: 5.6.4-arch1-1 && 5.5.13-arch2-1-fsync
  • CPU: AMD Ryzen 5 1600X (12) @ 3.600GHz
  • Memory: 16GB
  • GPU: NVIDIA GeForce GTX 1060 6GB
  • Driver: nvidia 440.82-3
  • Wine version: 5.5 staging, lutris 5.6 - 5.5.2 - 4.2.1
  • DXVK version: from 1.6 to 1.2.2

Screenshots file(s)

https://imgur.com/a/ZoA3wk9

Ddoitsujin maintainer 2020-04-18 github

This is a known issue and a game bug, since it uses the D3D11 API in an exceptionally stupid way. I do not plan to address the issue. DXVK 1.2.1 might be behaving incorrectly.

LLinskun 2020-04-18 github

Ok, thanks anyway
This implements of D3D11 API is the cause of both issue ?

  • Only a single CPU core used from 1.5.x
  • Performance FPS drop
Ddoitsujin maintainer 2020-04-18 github

DXVK does not affect how many cores the game uses, but yes, it is the reason why it runs slowly.

LLinskun 2020-04-18 github

Ok but from 1.5 to latest i have only 1 core of 12 logical used
Before 1.5 on the contrary multiple core was used (if you can see the screenshots linked, i've attached htop on overlay)
This only by changing DXVK version and nothing more

KK0bin maintainer 2020-04-18 github

We just fixed the issue. It should run as well as it did on 1.2.1. You shouldn't expect good performance with that game anyway because it does questionable stuff.

LLinskun 2020-04-18 github

Oh thanks ! I will try ASAP

LLinskun 2020-04-18 github

Ok compiled 1.6 with latest master commit, It's Alive !
Frametime with spikes on compiling shaders (normal) but FPS again at 60!

Thanks

Launch options