protonscr

Steam Deck Game Mode UI freezes for 30-60s on resume

steamopen Steam clientDistro Family: SteamOS
ValveSoftware/steam-for-linux#9956 · opened 2023-08-06 by barryjj · updated 2024-01-05 · 6 comments · github
Bbarryjj 2023-08-06 github

Your system information

  • Steam client version (build number or date): 1691193224 (build date 8/4/23 @ 7:37PM UTC -05:00)
  • Distribution (e.g. Ubuntu): SteamOS 20230531.1
  • Opted into Steam client beta?: [Yes/No] Yes (Preview branch)
  • Have you checked for system updates?: [Yes/No] Yes
  • Steam Logs: [generate by running this command in a terminal tar -zcvf ~/Desktop/steam-logs.tar.gz ~/.steam/steam/logs]
  • GPU: Nvidia/Intel/AMD AMD

Please describe your issue in as much detail as possible:

Describe what you expected should happen and what did happen. Please link any large code pastes as a Github Gist
Should happen:
Pressing resume should cause the unit to wake up and resume where left off. If pressing anything that causes the UI to need to display or update, it should do so in a timely manner.

Does happen:
Pressing the resume button wakes the unit and the display is active. Games currently suspended will work normally and inputs will be read. Anything that involves the Steam UI, however, freezes. Buttons like volume +/-, Steam, QAM can be mashed and nothing will happen. If you are in the Steam UI looking at your library, all inputs will be essentially buffered or sent to /dev/null and the UI will become unresponsive. For example, in game, if you press the volume buttons, the UI slider for volume will not display but the volume will change.

Note:
I've tried another account on the same Deck and it doesn't experience the same issue. The secondary account has < 1000 games. My account has over 9000 games, maybe even over 10k. This seems to be related to the size of the user's library and like Steam gets hung for the 30-60s cause it's trying to reprocess some library information and hangs until it does.

Steps for reproducing this issue:

  1. Have a large library (over 8900 games in my case) on Steam.
  2. Sign in to Steam Deck
  3. Put deck in suspend.
  4. Resume deck, attempt to interact with anything that involves the UI. Steam button, QAM button, volume up/down buttons.
  5. UI will freeze and become unresponsive. If volume buttons are pressed, volume will change accordingly but slider will not render. If in game, the game will continue to read controller input correctly and function normally.
  6. After around 30-60s, the UI will "catch up". Sometimes the inputs pressed during the freeze will come out if none have already leaked and affected the state of the UI. The UI will then function normally after it "catches up" with whatever caused it to freeze on resume.
Bbarryjj 2023-08-06 github
Bbarryjj 2023-08-07 github

Video

  • Load into my account, it's slow to load user profile
  • UI is responsive, start Capcom Arcade Stadium
  • Game is responsive, UI is still responsive
  • Suspend Steam Deck then Resume
  • Game menu is responsive and recognizing controller input, however, attempting to use volume up or down or hit the Steam or QAM buttons produces no UI response (the volume does increase/decrease as it should)
  • Eventually the UI catches up, and I go to the home screen
  • Suspend and Resume again
  • UI is completely unresponsive
  • Once UI becomes responsive select change account from the power menu
  • Load secondary account
  • UI is responsive. Again load into Capcom Arcade Stadium. Everything works as it should
  • Suspend and Resume as before
  • UI is responsive, immediately bringing up Steam/QAM/Volume Slider when the appropriate button is pressed
  • Go to Home screen, everything responds as it should
  • Suspend and Resume again
  • UI is still responsive, no lag/slowdown is experienced

The only difference here is the user that is logged in.
Only the UI is affected on wake up, the game plays fine after suspend/resume.
My Library shows over 10500 games on the Library tab.
The secondary account has less than 10% of that total, I'd have to check to get the exact number.

SSkylark95 2023-11-10 github

Any updates on this issue? It's been a few months and having to wait a minute for the deck to resume from sleep is annoying.

Only workaround I've found is to keep the deck offline before and when resuming from sleep. However the client hangs again when connecting back to wifi.

Bbarryjj 2023-11-10 github

I actually figured out that this was partly due to having a large amount of dynamic collections -- I was able to increase performance by removing all of my dynamic collections and most of my static ones as well. However, in recent updates, my Steam Deck has started having full system lag on wakeup instead of just having the UI be unresponsive and I haven't found a workaround for that yet.

SSkylark95 2023-11-11 github

@barryjj THANK YOU!!! I had over 2 dozen dynamic collections and removing those reduced the starting lag from almost a minute to just a few seconds.

OOrffyreus 2024-01-05 github

I have the same issue with my Steam Deck. The UI generally seems to get blocked during synchronizations with a Steam account. After waking up the Steam Deck the UI appears and is freezed up to two minutes (I have over 200 dynamic collections). If the internet connection is disabled, the Steam Deck UI is usable immediately after waking up.

Nothing extracted yet.