ValveSoftware / Proton

Compatibility tool for Steam Play based on Wine and additional components
Other
24.61k stars 1.07k forks source link

Starfield (1716740) #7064

Open vercingetorx opened 1 year ago

vercingetorx commented 1 year ago

Compatibility Report

System Information

I confirm:

todo ## Symptoms

The game starts up and seems okay but when starting a new game the game freezes during first load. Experimental freezes and 8.0 crashes.

WarBaby2 commented 1 year ago

Ok, I downgraded to 525.89 (6.1.50.1 lts kernel) and it's playable... though choppy (20-30 fps) on high settings, with random 5 second hangs now and then, but those could be due to background stuff like the steam client itself. Also: Using 8-13 proton GE and gamemode, but I doubt that has actually any impact.

Ah, processor: i7 6700k

jcgit1 commented 1 year ago

On Mesa desktop, please ensure that: You're running kernels 5.15.121+, 6.1.40+ or 6.4.5+ to fix a kernel regression that affected Starfield. Without it, GPU will hang randomly. You're running mesa from git to get VK_NV_device_generated_commands_compute for optimal performance. * Proton Experimental

I tried to look around a bit at the Ubuntu stock kernels, and it appears that none of that distro's stock kernels include https://lists.freedesktop.org/archives/amd-gfx/2023-June/094648.html which was noted in https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24774 and should be the mentioned kernel regression. That would be something for an Ubuntu kernel package maintainer to either rebase their kernel on a newer patch release or backport the kernel fix.

@kisak-valve - Unsure if this is even relevant, but I just upgraded to 6.2.16 from https://kernel.ubuntu.com/~kernel-ppa/mainline/ and it doesn't seem to have made a difference. The reverted code could still be in there, I'm not sure.

Alex-MacLean commented 1 year ago

This has likely already been stated by now, but this is most definitely an issue with Nvidia's Linux driver. I am running the latest version of nvidia-open 535.104.05-3, mesa-git 23.3.0_devel.177121.ade44ad82e4.d41d8cd-1 with the lib32 version also installed, I am running Arch Linux with zen kernel 6.5.0-zen1-1-zen. I have tried with and without the steam client beta and with and without the bleeding edge branch of proton experimental. I have enabled the testing pacman repos and fully updated my system so everything is at its very latest version and I am getting these notable errors and warnings in my log when the game freezes at the loading screen:

vkd3d-proton:d3d12_device_QueryInterface: {0742a90b-c387-483f-b946-30a7e4e61458} not implemented, returning E_NOINTERFACE.

vkd3d-proton:vkd3d_view_map_create_view: Intense view map pressure! Got 1024 views in hash map 000000017c94a398.

vkd3d-proton:d3d12_command_queue_execute: Failed to submit queue(s), vr -4.

dxgi_vk_swap_chain_present_signal_blit_semaphore: Failed to submit present discard, vr = -4.

vkd3d-proton:d3d12_command_queue_signal: Failed to submit signal operation, vr -4.

warn:threadname:NtSetInformationThread Thread renamed to L"wine_threadpool_worker"

I have also attached a full log incase I missed anything or if it is helpful. From my limited graphical programming knowledge it looks like there are issues with the viewmap, threaded operations, and device queries, but I could be way off Edit: I tried to use the nvidia 525 kernel module, but doing so broke arch for me so I chrooted into my system and reinstalled 535 steam-1716740.log

Katherine1 commented 1 year ago

@Alex-MacLean Yes. It is the driver. The 525.xx drivers work with Starfield. Something broke in 535.xx. Even in 525, though, there is a compute issue that leaves the game CPU-bound and running poorly as a result. (I get 20-30fps, so technically playable!)

Alex-MacLean commented 1 year ago

@Katherine1 I did try 525 but that broke my install of arch by making it not load the graphical interface so I had to reinstall 535. Hopefully either Nvidia gets their drivers fixed or a workaround can be found Edit: This makes me want to go AMD for my next video card lol :)

kisak-valve commented 1 year ago

Replying to https://github.com/ValveSoftware/Proton/issues/7064#issuecomment-1702921814

The Linux 6.2.16 kernel was released on 2023-05-17, this is older than the linked kernel fix. You'd need to rebuild that kernel with the fix added if you want to use it with this game and AMD graphics.

falsechicken commented 1 year ago

If everything worked as expected on the older drivers perhaps this would seem likely, but that doesn't sound like it's the case. It could be a vkd3d issue and there are precious few people who are deeply familiar with its internals, and it doesn't really sound like any of us here in this thread are them.

At this point it seems like we don't have much choice other than to wait for the experts, either on the driver side or the vkd3d side, to do the hard work of analyzing and resolving the issue.

Seems like that might be part of my issue with my poor RX 570. I can get the game to start but there are rendering issues. Missing floors, eyes on characters, etc. Other than not rendering stuff its running fine and changing versions of dxvk/vkd3d around seems to cause different stuff to render/not.

ExpandingMan commented 1 year ago

Seems like that might be part of my issue with my poor RX 570. I can get the game to start but there are rendering issues. Missing floors, eyes on characters, etc. Other than not rendering stuff its running fine and changing versions of dxvk/vkd3d around seems to cause different stuff to render/not.

Please ignore my previous comment, I said it before realizing that the vkd3d maintainer said on the other thread in no uncertain terms that there is a driver bug. So, I guess we'll have to wait for a driver update, hopefully it can still get fixed on the 535 branch.

kisak-valve commented 1 year ago

Hello @falsechicken, please add PROTON_LOG=1 %command% to the game's launch options and attach the generated $HOME/steam-$APPID.log to this issue report as a file. (Proton logs compress well if needed.) Also, please share a screenshot of the misrendering and copy the contents of Steam Runtime Diagnostics from Steam (Steam -> Help -> Steam Runtime Diagnostics) and put it in a gist, then include a link to the gist in this issue report.

sheb-gregor commented 1 year ago

Hello @kisak-valve I have the same problem. Starfield crashes when I press New Game. The game was launched using Proton 8.0-3.

My machine info

OS: Manjaro Linux x86_64 Host: Z370 HD3 Kernel: 5.15.128-1-MANJARO Resolution: 3840x2160 DE: GNOME 44.4 WM: Mutter CPU: Intel i7-9700K (8) @ 4.900GHz GPU: NVIDIA GeForce RTX 3070 Lite Hash Rate Memory: 5209MiB / 64255MiB

Logs & Steam Runtime Diagnostics

https://gist.github.com/sheb-gregor/6e9295fffa81a18f59439c3e04ffb9fa

Mashaaaaaaaaaaa commented 1 year ago

I have the same issue as @falsechicken on an RTX 3070 MaxQ in addition to the usual Nvidia issues, @kisak-valve Steam Runtime Diagnostics gist: https://gist.github.com/Mashaaaaaaaaaaa/59ff42dfd10dbd063e1e481803e65f7b image Proton log (for some reason, github fails when I try to attach it to this post): https://drive.google.com/file/d/12iGAlY0Q3pkqITF5Ay24pXYyHqNyDAx5/view?usp=sharing

falsechicken commented 1 year ago

Replying to https://github.com/ValveSoftware/Proton/issues/7064#issuecomment-1703031217

Yeah that looks exactly like my issue.

giantplaceholder commented 1 year ago

Replying to https://github.com/ValveSoftware/Proton/issues/7064#issuecomment-1703037138

You're running 535.104.05 as well, as I understand?

Katherine1 commented 1 year ago

@Mashaaaaaaaaaaa @falsechicken What distro are you using, and what kernel version?

falsechicken commented 1 year ago

Replying to https://github.com/ValveSoftware/Proton/issues/7064#issuecomment-1703043942

No I am on AMD. RX 570 running Garuda Linux. So it seems to affect both Nvidia and AMD it looks like?

falsechicken commented 1 year ago

@Mashaaaaaaaaaaa @falsechicken What distro are you using, and what kernel version?

Garuda Linux (Sway), 6.4.12-zen1-1-zen, RX 570

EDIT: Runtime info https://gist.github.com/falsechicken/80a62504feb41c8c1cb2197dd5dadeb7

kisak-valve commented 1 year ago

Hello @Mashaaaaaaaaaaa, looking at your system information, it looks like your system is configured to only have mesa/RADV available for 64 bit Vulkan and only AMDVLK for 32 bit Vulkan. For whatever reason, the game doesn't have access to your NVIDIA 530.41.03 driver install, and the screenshot you shared should be with the game rendering with mesa 23.1.6 on your Renoir chipset.

LiamDawe commented 1 year ago

On Steam Deck the Start / Select buttons work backwards with Proton Experimental. In case it wasn't already mentioned.

You can swap them in Steam Input so it matches up again, but annoying nonetheless.

stubkan commented 1 year ago

Performance on NV currently is known to be extremely poor due to being completely CPU bound. This is caused by lack of us enabling NV_device_generated_compute on NV due to a driver bug. #1639 for details. When the beta driver updates, it should start running much better.

On Mesa desktop, please ensure that: You're running kernels 5.15.121+, 6.1.40+ or 6.4.5+ to fix a kernel regression that affected Starfield. Without it, GPU will hang randomly. You're running mesa from git to get VK_NV_device_generated_commands_compute for optimal performance. * Proton Experimental

I tried to look around a bit at the Ubuntu stock kernels, and it appears that none of that distro's stock kernels include https://lists.freedesktop.org/archives/amd-gfx/2023-June/094648.html which was noted in https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24774 and should be the mentioned kernel regression. That would be something for an Ubuntu kernel package maintainer to either rebase their kernel on a newer patch release or backport the kernel fix.

I have a few questions, as am trying to make sense of that information.

That suggests that the beta carries the device generated compute fix which was merged into vkd3d a week ago. Proton experimental vkd3d was updated 2 days ago so should carry this fix already, yet we are presumably not seeing that?

Does this mean we also require our kernel to be updated, even though the next paragraph says on mesa desktops (which those running the recommended proprietry nvidia drivers dont use) - we still need to have the correct kernel ?

I am unsure how to interpret the kernel requirement, does 5.15.121+ mean all kernel versions above 5.15.121 (including 5.16, 5.17, 6.0.0 etc or only up to 5.15.9999999?) Or does it mean 5.15.121.?? exactly?

Also the kernel regression was an AMD specific patch, but this seems to be a Nvidia issue - why is that linked patch the one containing the regression?

Mashaaaaaaaaaaa commented 1 year ago

@Katherine1 Arch, 6.4.12-arch1-1

Mashaaaaaaaaaaa commented 1 year ago

@kisak-valve that configuration might be misleading as I run Steam on my iGPU and then prime-run games.

kisak-valve commented 1 year ago

Hello @stubkan, there's independent feedback in that comment for both NVIDIA users and AMD users.

NVIDIA users: 1) The NVIDIA 535 series driver has a show stopping driver bug. 2) NVIDIA all driver series currently has NV_device_generated_compute turned off due to a separate driver bug which leads to CPU bottlenecking.

AMD users: There was an AMDGPU kernel module bug which was fixed around June, and this fix has reached various LTS kernels maintained by kernel devs. The point releases where the backport happened were noted there. Non-LTS kernels get their support discontinued much sooner, and would not have gotten the fix after maintenance stopped. (I added an extra link to mesa to cite my source.)

Hello @Mashaaaaaaaaaaa, your proton log is fairly clear that at least DXVK is using the Renoir chipset.

Mashaaaaaaaaaaa commented 1 year ago

@kisak-valve that sounds really weird, since installing nvidia-535 makes the game not launch, while nvidia-530 and nvidia-525 have the same performance issues that others described. How could this possibly be the case?

stubkan commented 1 year ago

Thanks, so...

I am attempting to ensure my system follows the criteria of having correct kernel / fixed drivers - could you clarify a question for me...

I have kernel 5.17.0-1035-oem - which is higher than stated required 5.15.121+ so should contain the fix already, yes?

To avoid the driver bugs, I could use nouveau/mesa drivers instead of nvidia all which have fixes in them? I'll ty that after I confirm the kernel is correct - I am unsure how to interpret the version requirement since I dont understand kernel versions

kisak-valve commented 1 year ago

sighs

I'd rather not long form explain this, but here goes.

Google search for 5.17.0-1035-oem took me to https://launchpad.net/ubuntu/+source/linux-oem-5.17/5.17.0-1035.36, where I found the actual package is called linux-image-unsigned-5.17.0-1035-oem. From there, a package search https://packages.ubuntu.com/search?keywords=linux-image-unsigned-5.17.0-1035-oem took me to the usable changelog https://changelogs.ubuntu.com/changelogs/pool/main/l/linux-oem-5.17/linux-oem-5.17_5.17.0-1035.36/changelog.

In that we search for the patch we want to know about and what upstream point release the distro modifications are based on... No match to drm/amdgpu: fix clearing mappings for BOs that are always valid in VM in the changelog and the newest rebase looks like: * Jammy update: v5.17.15 upstream stable release (LP: #1980389)

The release date for 5.17.15 is 2022-06-14, a full year too old to have picked up a backport from the upstream kernel devs. So, no, this kernel release does not have the kernel fix.

Doing a proper kernel check on a distro-modified kernel release is a pain in the rear.

This is compared to the 5.15.121 kernel which was released in 2023-07-23.

Regarding mesa/nouveau. The brand new open source NVIDIA driver, mesa/NVK, just landed in upstream mesa git main, is not yet capable of running DXVK or VKD3D-Proton, and requires linux 6.6 or newer.

The AMDGPU kernel fix is not relevant to NVIDIA users at all.

aak0 commented 1 year ago

Another example of missing textures on AMD (16GB Radeon VII). Otherwise, the game runs and does not crash. Ubuntu LTS with a 6.2 "hardware enablement" HWE kernel.

Screenshot from 2023-09-01 20-30-00 Screenshot from 2023-09-01 20-30-10 Screenshot from 2023-09-01 20-30-28 Screenshot from 2023-09-01 20-35-41 Screenshot from 2023-09-01 20-35-18 Screenshot from 2023-09-01 20-34-12 Screenshot from 2023-09-01 20-33-47 Screenshot from 2023-09-01 20-33-25

Stress relief: Screenshot from 2023-09-01 08-33-21

falsechicken commented 1 year ago

Replying to https://github.com/ValveSoftware/Proton/issues/7064#issuecomment-1703134767

Thanks for the info. I have been trying different versions of proton/dxvk/vkd3d to see if I can spot a change but I get either a crash when starting a new game or render problems just like this.

RPINerd commented 1 year ago

Is anyone on an AMD card and have it not working?

3700X and 6900XT, once I switched from proton 8.x to experimental I've had 1 crash in 5 hours of gameplay. Thats a record for a bethesda game even on windows in my book lol. I'd be hard pressed to tell that I'm not running a native app.

stubkan commented 1 year ago

Two people on protondb with nvidia gpu reported no problems and smooth gameplay with driver 525 - both were using kernel 5.15.0-79-generic and 5.15.0-82-generic

Going to try switching kernel with https://linux.how2shout.com/how-to-change-default-kernel-in-ubuntu-22-04-20-04-lts/ script to 5.15.0

Mashaaaaaaaaaaa commented 1 year ago

@kisak-valve I tried running other games just now and it seems like downgrading to 530 and 525 broke my prime-run configuration, so now everything runs at low FPS. I guess this explains part of the problem to me, so I'll upgrade back to 535 and just sort out the prime issues until an update to 535 fixes the Starfield problems.

vercingetorx commented 1 year ago

Do we know if Nvidia are aware of these driver issues? If not then hopefully someone will make a bug report.

solarisfire commented 1 year ago

NVIDIA are aware, they don't care... https://forums.developer.nvidia.com/t/multiple-cuda-rtx-vulkan-application-crashing-with-xid-13-109-errors/235459/162

ntropy83 commented 1 year ago

Nvidia 525, Laptop GPU runs at 80 W, tho it could boost to 150 W. About 20% fps loss due to the recording in the cpu bound scenario (detail setting is high at 2k res). First hour of the game on youtube:

Linux - Starfield - Nvidia

dylanmtaylor commented 1 year ago

following this as I'm seeing the same thing on Nvidia driver 535.104.05 and proton experimental

WarBaby2 commented 1 year ago

Proton GE 8-14 just dropped - no explicit fixes mentioned, but worth a shot, I guess.

benbot commented 1 year ago

NVIDIA are aware, they don't care... https://forums.developer.nvidia.com/t/multiple-cuda-rtx-vulkan-application-crashing-with-xid-13-109-errors/235459/162

Pretty sure that's a different issue, or is just a very generic error message.

This thread goes back to the 525 driver version, which runs the game.

dylanmtaylor commented 1 year ago

Related? https://github.com/HansKristian-Work/vkd3d-proton/issues/1678

tugytur commented 1 year ago

Proton GE 8-14 just dropped - no explicit fixes mentioned, but worth a shot, I guess.

GE 8-14 + the following launch options work with 535

PROTON_HIDE_NVIDIA_GPU=0 PROTON_ENABLE_NAVPI=1 %command% --skip-launcher

SelfRef commented 1 year ago

I was getting some crashes now and then when using Proton Experimental on Radeon 7900 XTX but after disabling dynamic resolution in settings it seems stable.

Mashaaaaaaaaaaa commented 1 year ago

@tugytur does not work for me - the game still freezes during the loading screen that happens when I press new game.

DiegoSof2 commented 1 year ago

anyone with this same problem?

image

ExpandingMan commented 1 year ago

@tugytur does not work for me - the game still freezes during the loading screen that happens when I press new game.

Confirmed, I cannot get GE-Proton-14 working either on RTX 4090, 535, linux 6.5.

Aberrance commented 1 year ago

Proton GE 8-14 just dropped - no explicit fixes mentioned, but worth a shot, I guess.

GE 8-14 + the following launch options work with 535

PROTON_HIDE_NVIDIA_GPU=0 PROTON_ENABLE_NAVPI=1 %command% --skip-launcher

Does not work for me either, the game still freezes

OS: Manjaro Linux KERNEL: 6.5.0-1-MANJARO CPU: Intel Core i9-10900F @ 2.80GHz GPU: NVIDIA GeForce RTX 3080 Ti GPU DRIVER: NVIDIA 535.104.05 RAM: 32 GB

zixaphir commented 1 year ago

Replying to https://github.com/ValveSoftware/Proton/issues/7064#issuecomment-1703263274

I have this same issue with my 1080 ti.

spawnedc commented 1 year ago

Replying to https://github.com/ValveSoftware/Proton/issues/7064#issuecomment-1703270854

Same here with 1080 Ti:

Endeavour OS
Kernel: Linux 6.4.12-arch1-1
Nvidia driver: 535.104.5
GPU: 1080 Ti
CPU: Intel Core i5-9600K
WarBaby2 commented 1 year ago

Ok, with 530 and GE 8-14, the fps get better the lower the graphics are set... the CPU load is also down compared to GE 8-13 and experimental.

Trying 525 again next...

Aberrance commented 1 year ago

@tugytur if this work for you on 535, did you also changed some graphics settings in Starfield?

Mastergatto commented 1 year ago

For anyone using Archlinux (or any Arch-based distro) and a GPU AMD, and is having some issues with the game: If I understand correctly, sadly it seems that the aforementioned fix (https://github.com/archlinux/linux/commit/ea2c3c08554601b051d91403a241266e1cf490a5 ) is available only on Linux 6.5 that still hasn't released out on Archlinux.

So it seems that at this point one could do:

kattjevfel commented 1 year ago

@Mastergatto I'm on 6.5 (linux-zen) via testing repos and the game still keeps crashing here. RX6600XT.

good ol' {}CRASH (ACCESS VIOLATION (inaccessible read at 0x0000000000000001):)Monitored process exited.

polluxau commented 1 year ago

For anyone using Archlinux (or any Arch-based distro) and a GPU AMD, and is having some issues with the game: If I understand correctly, sadly it seems that the aforementioned fix (https://github.com/archlinux/linux/commit/ea2c3c08554601b051d91403a241266e1cf490a5 ) is available only on Linux 6.5 that still hasn't released out on Archlinux.

So it seems that at this point one could do:

  • Install linux-mainline from AUR, but beware that it may be a long process, as it involves downloading the kernel's source code and building it.
  • Or wait that Linux 6.5 comes out on Archlinux.

Surely it comes out today or tomorrow, since it's been in testing for 3 days now