ValveSoftware / SteamVR-for-Linux

Issue tracker for the Linux port of SteamVR
917 stars 45 forks source link

Heavy Framedropping #657

Open hennakin opened 9 months ago

hennakin commented 9 months ago

Several frames per second get rendered too late which causes heavy stuttering on every application, also Steam Home. Steam Home uses about 0.9 - 4.1ms for rendering. Machine load is 2.8 on a 12-core. When loading steamvr without any steam opened framedropping occurs less. Renaming vrwebhelper doesn´t improve the situation. Fiddling around with the vr-settings doesn´t help either. Changing the SteamVR version under the betas section is not helping also.

Here is a screenshot: steamvr_framedrops

And here all the steam logs: steamvr_framedropping.tgz

My machine info: machine_info.txt

Zindswini commented 8 months ago

Also experiencing this behavior, AMD 7700x, RTX 3080.

I feel like this started after the nvidia 545 driver update, but I hadn't tested vr in a while previous. Tinkered with all the settings I could, to no avail. Happens on HDMI and Displayport, even with no other monitors attached.

Patola commented 3 months ago

Maybe that stutter (also present in SteamVR 2.5.5) is due to something much more trivial? Like... Excessive logging? Tried killing vrwebhelper and other solutions suggested in issues here and nothing helped. But then I mounted ~/.local/share/Steam/logs as a tmpfs filesystem with owner as my own user and then the stutter is GONE! The logs in there have a lot of trivial warnings repeated ad nauseum several timer per second. This is useless, but it hits the filesystem in a chorus a thousand times per second, and it's no wonder that it hinders the ability of games to keep the frame window.

Why is there so much logging, anyway? It doesn't seem it's sent to steam servers or something, and I see no way to turn it off. If a log falls in the middle of the forest and no one reads it, have those log messages really happened?

My hack to get stable frames is so good that I'm adding it to /etc/fstab. It forgets all files once I reboot, of course, but if I need them to a bug report or something they're still there, in my RAM.

NewtSoup commented 3 months ago

I have this issue. My timing graph in the headset is a wall of orange and magenta Manjaro Linux Core -7-7700 RX 6700 XT 32GB Ram

Fallout 4: severe frame dropping or reprojection ( I don't understand which is which ) When I turn my head or rotate using the thumb sticks there's a lot of stuttering

Subnautica VR - completely unplayable due to stuttering No Man's Sky - completely unplayable, massive stuttering

Ultrawings 2 - some stuttering but can be played for a few minutes at a time but again blurriness due to image "ghosting" is unplelasant

Skyrim VR some stutteringl stuttering, also controller thumbsticks no longer respond correctly with this version of steam vr.

Forcing the headset to 80hz improves things somewhat. The problem is I don't understand what the orange and magenta bars mean so I can't explain what I'm seeing properly.

VR Webhelper process continuously writes 13Mib/s to disk

I do have my CPU power set to performance and my GPU power set to VR Gaming.

I am sure is specifically a Steam VR for linux issue as these games used to play acceptably in Linux at Steam VR 1.26 and they play acceptably in Windows so I know it's not a hardware issue. The changes made in 1.27.5 were the start of these issues for me and I've not been able to use my VR headset properly since. Only Beat Sabre has remained playable throughout and I'm getting bored.

Patola commented 3 months ago

@NewtSoup I feel your pain. This excessive verbosity of steamvr is inacceptable. My workaround of getting steam logs in RAM works moderately well but I just found out steam also sends it to systemd, so it's stored in systemd-journal logs, using my SSDs/HDDs anyway. I'll have to study how to disable it now.

NewtSoup commented 3 months ago

@Patola could this be why the common trick of disabling all instances of vrwebhelper did not work for me?