protonscr

Suspend/retry loop of shader-cache updates may use a lot of bandwidth while playing a game on Steam Deck

steamopen Steam clientDistro Family: SteamOS
ValveSoftware/steam-for-linux#11128 · opened 2024-07-23 by mgruberb · updated 2024-07-23 · 0 comments · github
Mmgruberb 2024-07-23 github

Your system information

  • Steam client version: 1721173382
  • SteamOS version: 3.5.19
  • Opted into Steam client beta?: No
  • Opted into SteamOS beta?: No
  • Have you checked for updates in Settings > System?: Yes

Please describe your issue in as much detail as possible:

Last night I ran into a weird issue when I was playing Resident Evil (the REmake) for the first time in a few weeks on my Steam Deck. I was using my phone's mobile hotspot in order not to run into any connectivity issues and launched the game at only a few MB of data used on the connection. I have background downloads disabled and also have the automated sending of game data to Capcom's servers disabled, so nothing should really be using a lot of data while playing this single-player game.

While RE was launching, I briefly noticed that in the status bar a new download job got queued (as often happens): a shader cache update. The game started and I played for about 45 minutes. When I exited the game I noticed my mobile phone was really hot and warning me about data usage: almost 7 GB of data had been used why I was playing!

I then checked the download section and saw that a 1.7 GB shader cache update had been downloaded and installed for RE. That's unfortunate but due to the transcoded video files such a large update may be expected. That still doesn't add up to almost 7 GB and so I looked at my shader-cache logs in Desktop mode and found the following:

[2024-07-23 00:53:40] [AppID 304240] Starting Shader Swarm download job.
[2024-07-23 00:53:40] [AppID 304240] Target manifest 4875828498959106456 of size 2248445193 key SteamSwarm / G7:CompatVideoTCMediaV1.
[2024-07-23 00:53:40] [AppID 304240] Source manifest 1994915803823983475 of size 2213044205.
[2024-07-23 00:53:46] [AppID 304240] Update canceled: Restart (Suspended)
[2024-07-23 00:53:46] [AppID 304240] Finished Shader Swarm download job: Suspended
[2024-07-23 00:53:46] [AppID 304240] Starting Shader Swarm download job.
[2024-07-23 00:53:46] [AppID 304240] Target manifest 4875828498959106456 of size 2248445193 key SteamSwarm / G7:CompatVideoTCMediaV1.
[2024-07-23 00:53:46] [AppID 304240] Source manifest 1994915803823983475 of size 2213044205.
[2024-07-23 00:53:52] [AppID 304240] Update canceled: Restart (Suspended)
[2024-07-23 00:53:53] [AppID 304240] Finished Shader Swarm download job: Suspended
[2024-07-23 00:53:53] [AppID 304240] Starting Shader Swarm download job.
[2024-07-23 00:53:53] [AppID 304240] Target manifest 4875828498959106456 of size 2248445193 key SteamSwarm / G7:CompatVideoTCMediaV1.
[2024-07-23 00:53:53] [AppID 304240] Source manifest 1994915803823983475 of size 2213044205.
[2024-07-23 00:53:59] [AppID 304240] Update canceled: Restart (Suspended)
[2024-07-23 00:53:59] [AppID 304240] Finished Shader Swarm download job: Suspended
[2024-07-23 00:53:59] [AppID 304240] Starting Shader Swarm download job.
[2024-07-23 00:53:59] [AppID 304240] Target manifest 4875828498959106456 of size 2248445193 key SteamSwarm / G7:CompatVideoTCMediaV1.
[2024-07-23 00:53:59] [AppID 304240] Source manifest 1994915803823983475 of size 2213044205.
[2024-07-23 00:54:05] [AppID 304240] Update canceled: Restart (Suspended)

This stuff was repeated for about 1200 lines, 5 new lines every couple of seconds while playing the game and no other lines in between in the log.

My conclusion: this download job kept sending and downloading about 240 shader cache manifests while I was playing the game, adding up to several GB of data over about 45 minutes. Because background downloads where turned off, the game could not download and apply the update but the update job kept trying to update, resending the manifests.

I don't think this is a good idea. People might use up their data cap while nothing is even happening on their system. I am lucky that I upgraded my data plan only a few days ago, otherwise I would have been past my cap already.

Steps for reproducing this issue:

  1. Don't play Resident Evil for a while so that a shader-cache update will trigger and be required on startup
  2. Play the game and disable background downloads so the shader-cache update cannot actually proceed
  3. Quit the game after 45 minutes and see that several GB of data have been used

Nothing extracted yet.