ValveSoftware / Proton

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

Icarus (1149460) #5465

Open ruineka opened 2 years ago

ruineka commented 2 years ago

Compatibility Report

System Information

I confirm:

steam-1149460.log

Symptoms

Game is unplayable due to horrible performance, using an AMD 6700 XT the game is at least able to hit 60fps. Its 5fps no matter what on Nvidia GPUs. The game also has horrible crackling audio during the intro.

Reproduction

Play the game.

cirospaciari commented 2 years ago

I got now between 32fps and 50fps

Changed to Full Screen 1080p, All Medium, FOD at 4, FOV at 120, Texture pool size to 2000, Max Shadow Cascades at 1, Tesselation Off, FSR Ultra Quality, 0.4 sharpness

Is poor performance, VRAM at 8GB in medium settings, 30 to 50 fps, is really slow for 1080p medium with FSR Ultra Quality, alot of tweaks in configuration are need for an playable FPS, even in low without FSR i got 7fps, but turning on FSR and changing FOV, FOD, texture pollsize and tesselation, the game becomes playable.

Custom Proton: GE-Proton7-14 Distro: Debian GNU/Linux bookworm/sid Kernel: 5.16.0-5-amd64 RAM: 32 GB GPU Driver: NVIDIA 470.103.01 GPU: NVIDIA GeForce GTX 1070 CPU: Intel Core i7-7700HQ @ 2.80GHz

Blisto91 commented 2 years ago

Does the performance change if you make a file called dxvk.conf next to the games .exe and add dxgi.nvapiHack = False ?

cirospaciari commented 2 years ago

Does the performance change if you make a file called dxvk.conf next to the games .exe and add dxgi.nvapiHack = False ?

Performance don't improved BUT now i can use 4500 in texture pool size with same performance as 2000 without instant droping to 5fps.

But the weirdest thing is if i play with FSR Ultra Quality i got 30~50 fps, if i play with FSR Off i got 5fps and all freezes, that shouldn't happen at 1080p.

EDIT: after 10min the performance drops again to 3 to 5 fps with 4500 texture pool size, so i think is a memory problem

Blisto91 commented 2 years ago

Looking at the system requirements on steam it looks like i don't have a system that would be able to handle this game (as it says i need at least 6GB vram) so not able to test it myself. My best bet for someone to look into if something is amiss is the dxvk devs. So you can try to make a issue at their repo. If you do then remember to include logs. And if in doubt about how to fetch the logs just ask them when making the issue.

cirospaciari commented 2 years ago

after 10min the performance drops again to 3 to 5 fps with 4500 texture pool size, so i think is a memory problem, this game is VRAM devoring monster, i never saw a game using that much VRAM in 1080p, if this game are more optimized for less VRAM use i think performance will get better, AMD cards are playing better because have more than 8GB of VRAM, looks like a VRAM bottle neck, in windows the performance is still way better and i dont need to turn on FSR, something in proton is making the game more VRAM "hungry", DXVK with dx11 need more optimization i think

Blisto91 commented 2 years ago

You can follow how much vram dxvk is using for the game by running the game with DXVK_HUD=full %command% and looking at Vidmem heap 0 You can then compare that to running nvidia-smi in a terminal at the same time to see how much your overall system is using, if it's hitting the top then that is probably it yes..

Windows might have more sophisticated memory management as far a know and i think dxvk itself also have a slight overhead. Depending on your DE that might also consume some. e.g. KDE Plasma for me consumes around 400-500MB vram on it's own. You can check that with nvidia-smi.

cirospaciari commented 2 years ago

im using debian 12 with gnome, nvidia-smi show 400MB of vram only with the game closed, 98 to 100% of my vram is used in game, i will try DXVK_HUD=full later and follow an update here

cirospaciari commented 2 years ago

Its memory for sure game is using 6.8GB+ even with all in Low, with my configs (somethings in Texture High, others in Medium and Shadows in Low) is at 7.4GB+ when i put texture pool size to 4500 (the default) my memory is eated even more during gaming and i got the 5fps, adding FOD and FOV i reduced the memory usage and get a performance boost, the minimum texture pool size is 2000 so i let in 2000, nvidia-smi showing all my memory being consumed, these game is putty RAM hungry too, i have 32GB and the games pools almost 20GB some times.

cirospaciari commented 2 years ago

I changed in GameUserSettings.ini, Texture Pool Size to 1000 and i got a putty good constant 60FPS (i capped in 60fps the game), but if i open the settings menu the game resets to 2000 and i got a bump to 24fps, putty sure now its memory caching of textures.

Blisto91 commented 2 years ago

Yikes to your first post.

I'm guessing running FSR lowers your VRAM usage (cuz everything is rendered at a lower res in the background) just enough to escape the worst issues. But ye that seems pretty clear cut that the game is right at the edge where vram start becoming a major issue. You are ofc welcome to open a issue at the dxvk repo, but i'm fairly certain they are going to say there isn't much to do. At least not without some major rewrites, but i don't know that technical details. There might also be some nvidia driver stuff going on if it has some overhead.

kisak-valve commented 11 months ago

Icarus failed with 8.0-4 worked with 8.0-3

Issue transferred from https://github.com/ValveSoftware/Proton/issues/7168. @RobVerduijn posted on 2023-10-12T08:01:42:

Compatibility Report

System Information

I confirm:

Symptoms

In the afternoon I was playing the game running proton 8.0-3, then steam released the proton 8.0-4 and when I came back that evening after the system had done an update the game no longer ran. I noticed that proton was updated to 8.0-4

Now I can get the game only to run using proton 7.0-6 which has horrible performance I used to run in epic mode without any issues, steam-1149460.log

Reproduction

Try to start the game using dx11, it will fail to run.


@lucifertdark commented on 2023-10-12T10:21:17:

Have you checked the ForceCompositionPipeline setting in Nvidia Settings? I was having the same thing with several games with that setting checked.


@RobVerduijn commented on 2023-10-12T12:24:58:

Have you checked the ForceCompositionPipeline setting in Nvidia Settings? I was having the same thing with several games with that setting checked.

I've been reading up a bit about that option (since I didn't know how to enable it)

Found this little explanation https://www.reddit.com/r/linux_gaming/comments/6voivr/can_anyone_explain_what_force_composition/

And I have a little doubt that that is the cullprit. Since I'm not rotating anything on my screens. I'll give it a try though.


@lucifertdark commented on 2023-10-12T12:27:58:

Replying to https://github.com/ValveSoftware/Proton/issues/7168#issuecomment-1759506274

I was a little dubious myself, but I disabled it & 8.0-4 is now working perfectly for me. I had it enabled & that was causing the problems for me.


@RobVerduijn commented on 2023-10-12T12:48:38:

Replying to https://github.com/ValveSoftware/Proton/issues/7168#issuecomment-1759513337

Can't find the setting in nvidia-settings gui

neither any info about it when I query on the cli. nvidia-settings -q CurrentMetaMode -t

So i assume it is off since I didn't enable it anywhere.

btw forgetting about this option, the more I read about it the less likely I find it to be the cause of the problem.

check out arch linux about this topic https://wiki.archlinux.org/title/NVIDIA/Troubleshooting#Avoid_screen_tearing_in_KDE_(KWin)

actually explains how to set it or disable it properly and how to make it permanent (did you enforce that?)

I think your problem was solved by something else when you thought you fixed it by setting this option.


@RobVerduijn commented on 2023-10-12T13:03:43:

Replying to https://github.com/ValveSoftware/Proton/issues/7168#issuecomment-1759550509

I should learn to read:

from the note: ForceFullCompositionPipeline is known to break some games using Vulkan under Proton with NVIDIA driver 535.

So It probably fixed yours. but since the currentmetamode query did not return { ForceFullCompositionPipeline = On } on my machine, it is off and not causing this issue

kisak-valve commented 11 months ago

Hello @RobVerduijn, looking at your Proton log, err: DxvkAdapter: Failed to create device, retrying without CUDA interop extensions looks interesting. That combined with Enabled nvapi for the following titles: Icarus in https://github.com/ValveSoftware/Proton/wiki/Changelog#80-4 reads like some nvapi functionality needs CUDA bits to work but CUDA isn't included with your video driver install. Can you test how the game behaves with the launch options set to PROTON_ENABLE_NVAPI=0 %command%?

RobVerduijn commented 11 months ago

Hello @RobVerduijn, looking at your Proton log, err: DxvkAdapter: Failed to create device, retrying without CUDA interop extensions looks interesting. That combined with Enabled nvapi for the following titles: Icarus in https://github.com/ValveSoftware/Proton/wiki/Changelog#80-4 reads like some nvapi functionality needs CUDA bits to work but CUDA isn't included with your video driver install. Can you test how the game behaves with the launch options set to PROTON_ENABLE_NVAPI=0 %command%?

wow.... spot on...

so I added PROTON_ENABLE_NVAPI=0 %command%, switched back to experimental and it works

then I installed the cuda drivers for fedora, removed PROTON_ENABLE_NVAPI=0 %command% and again succes...it works

Thanx for spotting this

I guess the icarus devs forgot to disable or accidently enabled those cuda extensions. (or the devs try to earn some more money by mining bitcoins on players workstations)

Cheers

ingles98 commented 3 weeks ago

After several tweaks i manage to get a somewhat "playable" state. Some of them mentioned in this thread. Using DLSS Performance/Ultra performance makes things less unplayable and FSR Mas Quality makes it even better.

However the max performance gains i've been able to achieve are still impossible to play without mild headaches. If it was simply low FPS that'd be playable but the constant hiccups are a big nono.

This seems to be mostly common for Nvidia users as far as i know.

I am using 2070 Super on driver 555.86 (beta) with Wayland.

Let me know if someone ever finds a tweak or creates a custom proton that achieves good performance in this game.