protonscr

Steam shader cache reported a 0 bytes while it is 100+ gigabytes on disk

steamclosed
ValveSoftware/steam-for-linux#8115 · opened 2021-09-30 by kakra · updated 2021-09-30 · 2 comments · github
Kkakra 2021-09-30 github

Your system information

  • Steam client version (build number or date): Steam Beta 2021-09-29
  • Distribution (e.g. Ubuntu): Gentoo Linux
  • Opted into Steam client beta?: [Yes/No] Yes
  • Have you checked for system updates?: [Yes/No] Yes

Please describe your issue in as much detail as possible:

I've moved my Steam shader cache to a different partition (from btrfs to xfs), and replaced the original shaders directory with a symlink. When fossilize runs, the symlink is properly resolved to the new path and can be seen in process monitors. Steam actually updates files there as timestamps change, and the symlink hasn't been replaced back to directory by Steam. So everything works as expected.

The xfs partition itself is mounted via automounter (using systemd automounts), so it will be mounted on first access by Steam. This also works properly.

The shader cache itself contains over 100 GB of data according to du -sh.

The reasoning behind this was to decouple normal system IO from shader cache IO by redirecting that to a dedicated disk with a simpler file system than btrfs. It actually makes a difference for system responsiveness, so this experiment proved useful.

I'm not sure if this was already before due to some Steam-internal changes, or if this is related to the symlink:

I've noticed that Steam no longer shows the size of the shader cache in the settings dialog, it just reports 0 bytes. If shaders are processed after a game quits, a few megabytes of storage are accounted for the shader cache according to settings. Starting other games lets the value increase further. But if I shut Steam down and start it again, the shader cache is back to 0 bytes according to the settings dialog. On disk, it remains at 100+ GB.

I observed this behavior like 1-2 weeks now, so it was present before the latest beta update which makes me think it could be related to the symlink - but that actually doesn't make much sense given how Steam still accounts new shader data to the cache in the settings dialog and loses this value after a restart.

Kkisak-valve maintainer 2021-09-30 github

Hello @kakra, this issue is already being tracked at #7972. Since your account is fairly detailed, I've gone ahead and transferred this issue report to https://github.com/ValveSoftware/steam-for-linux/issues/7972#issuecomment-931343048. Closing in favor of the older issue report.

Kkakra 2021-09-30 github

@kisak-valve Yep, thanks. Looks exactly like my issue. And it looks like we might have some settings in common: system-networkd, and shader caches on a different mounted partition.