radv: Poor performance in Ghostwire: Tokyo
Description
In certain scenes in Ghostwire: Tokyo there are large drops in performance on RADV by default, that are much less severe when setting RADV_DEBUG=nongg or when using AMDVLK.
Screenshots/video files
Steps to reproduce
Example:
- Install from steam and start the game once to create the save directories.
- Place this save file SaveGameSlot8.sav into
$steamlib/steamapps/compatdata/1475810/pfx/drive_c/users/steamuser/Saved Games/TangoGameworks/GhostWire Tokyo (STEAM)/Saved/SaveGames
. - Load the save file in chapter 3 with about 8h play time and observe the bad performance.
System information
- OS: Arch Linux
- GPU: RX 6700 XT
- Kernel version: 5.17.1
- Mesa version: latest main
- Desktop environment: Gnome/X11
- Wine/Proton version: proton experimental bleeding egde
Regression
Unknown.
API captures (if applicable, optional)
renderdoc capture: https://drive.google.com/file/d/1mFJZyvaDVjgg1huGADmxw9Om5syPbdn_/view?usp=sharing
The offending draw call is EID 12381.
Shaders of the relevant pipeline: slow-gs.zip
Further information (optional)
In-game graphics settings used were 1440p, everything on maximum, SSGI on, no upscaling.
RADV_DEBUG=llvm or RADV_DEBUG=nonggc don't improve performance. AMDVLK is exactly as fast as RADV with RADV_DEBUG=nongg. AMDGPU-PRO currently can't run the game due to GPU hangs. To run the game on AMDVLK as of v-2022.Q1.3, it is currently required to set VKD3D_DISABLE_EXTENSIONS=VK_KHR_fragment_shading_rate as launch option (this is already fixed in AMDVLK git and should be in the next release).
@Venemo for NGG