protonscr

GTA V terrible performance, Vulkan Shaders do not pre-cache.

steamclosed
ValveSoftware/steam-for-linux#7610 · opened 2021-01-17 by Proliferant · updated 2021-01-17 · 1 comments · github
PProliferant 2021-01-17 github

Please Note: This is not a complaint about vulkan shaders taking a long time to process. They don't take any time at all, literally, but it seems they don't process at all. Performance is terrible.

Your system information

  • Steam client version (build number or date): Built Jan 14, 2021
  • Distribution (e.g. Ubuntu): Linux Mint
  • Opted into Steam client beta?: Yes
  • Have you checked for system updates?: Yes: full update run today including latest Linux Kernel, latest Nvidia drivers, all other available updates. Also downloaded the latest Proton GE (5.21) to try with that. Issue persists. I also uninstalled and reinstalled dxvk in synaptic (I have 3 packages including the 32-bit and 64-bit developer ones)

Please describe your issue in as much detail as possible:

I've been trying to play GTA V, which I had running very well on this machine perhaps 6-8 months ago. I had issues with the launcher which i couldn't then address, even after doing a clean OS install. Recently I retried and managed to get the game to load.

The game loads, but the vulkan shaders do not process beforehand, even after updating the video drivers and trying a newer Proton GE. This seems to be a red flag!

Once in the game, the experience is extremely stuttery. Framerates are less than 10 fps, typically 4-6 fps. In addition there's a massive brightness issue, worse during daylight and bright places in the game, even with the game's brightness setting at its lowest. As you can see from the screenshot most colours are completely overblown.

Screenshot from 2021-01-17 00-35-17

My video card is a GeForce GTX 850M, driver version is 460.32.03 (issue was there with the past couple going back to 440 as well).

I set the Proton log config option and got an 88Mb file out of it. (this was for loading and exiting with a few seconds of gameplay) Having a quick scan through it for obvious (to me) errors a few stand out:

Early on a few like this come up:
ERROR: ld.so: object '/home/richard/.local/share/Steam/ubuntu12_32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.
ERROR: ld.so: object '/home/richard/.local/share/Steam/ubuntu12_64/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS64): ignored.

This one's repeated a lot about 15% of the way in, and again towards the end:
11456.245:0268:026c:fixme:dxgi:d3d11_swapchain_Present1 Ignored present parameters 0x21d830.

About 20% of the way I get these, with the numbers in the square brackets going from 2 to 31.
11463.121:03b8:0434:fixme:d3d_shader:print_glsl_info_log 0(23) : warning C7050: "vs_out[14]" might be used before being initialized

Then I get these two lines repeated roughly a gazillion times. Most of the 88Mb log is these two lines on repeat:
11463.504:03b8:0430:fixme:keyboard:X11DRV_ActivateKeyboardLayout flags 40000000 not supported
11463.505:03b8:0430:fixme:keyboard:X11DRV_ActivateKeyboardLayout 0x8090809, 40000000: semi-stub!

occasionally they are interpersed with lines like this:
11482.673:03b8:0430:fixme:d3d11:d3d11_immediate_context_IAGetVertexBuffers Failed to get vertex buffer 31.
11482.673:03b8:0430:fixme:d3d11:d3d11_immediate_context_VSSetShader Dynamic linking is not implemented yet.
11482.673:03b8:0430:fixme:d3d11:d3d11_immediate_context_PSSetShader Dynamic linking is not implemented yet.
11482.673:03b8:0430:fixme:d3d11:d3d11_immediate_context_GSSetShader Dynamic linking is not implemented yet.

This one repeats a fair bit towards the end with two variants (objects 840 and 19):
11555.011:03b8:0434:fixme:d3d:wined3d_debug_callback 0x4b7c4880: "Program undefined behavior warning: The current GL state uses a sampler (32) that has depth comparisons enabled, with a texture object (840) with a non-depth format, by a shader that samples it with a shadow sampler. This will result in undefined behavior.".

Steps for reproducing this issue:

  1. Be me.
  2. Try to run GTA V.
  3. Go into Story Mode or Online.

Any help and advice is much appreciated!

Kkisak-valve maintainer 2021-01-17 github

Hello @Proliferant, per "Disabled shader processing on NVIDIA while driver issues are being looked into" in the 2020-12-21 Steam client update, this is the expected current behavior for shader pre-caching on nVidia systems until https://github.com/ValveSoftware/Fossilize/issues/84 can be addressed. Beyond that, we're tracking issues with games run with Proton in the Proton issue tracker, and one issue per unofficially supported game title, so I've gone ahead and transferred this issue report to https://github.com/ValveSoftware/Proton/issues/37#issuecomment-761705042.

Upstream links