Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

RX 9070 XT: games running across suspend lose VRAM to GTT on resume, performance collapses until restart

Aperta
#2,811 5 commenti 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
4/5
Tempo stimato
3-5 giorni
Idoneità per principianti
45/100
Tipo di issue
Bug
Chiarezza
Abbastanza chiara
Stato di attività
Attiva
Stack tecnologico
linux

Direzione di ricerca

Riproduci il problema con Counter-Strike 2, Onimusha: Way of the Sword o The Witcher 3 durante la sospensione e la ripresa. Inizia controllando /sys/class/drm/card0/device/mem_info_vram_used e mem_info_gtt_used, quindi confronta il comportamento del reset MODE1 e della coda di lavoro amdgpu su SteamOS 3.9.0 e 3.8.26. Il lavoro è completato quando il gioco ripreso mantiene il normale posizionamento nella VRAM e le prestazioni senza richiedere un riavvio.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

Your system information
  • Steam client version: 1789086785 (steamdeck_publicbeta)
  • SteamOS version: 3.9.0 (build 20260828.100), kernel 7.2.0-valve1. Also reproduced on 3.8.26 (20260827.1), kernel 6.18.46-valve1
  • Opted into Steam client beta?: Yes
  • Opted into SteamOS beta?: Yes (Preview)
  • Have you checked for updates in Settings > System?: Yes

Hardware: desktop, ASRock B850I Lightning WiFi (BIOS 4.43), Ryzen 7 7800X3D, XFX RX 9070 XT (Navi 48, 1002:7550), HDMI to a 4K HDR 120Hz TV. Raphael iGPU is also bound to amdgpu.
Graphics stack: vulkan-radeon 26.2.0_devel.222131.steamos_26.05.16, mesa 26.1.2, linux-firmware-neptune 20260827.1, gamescope 3.16.26.

Please describe your issue in as much detail as possible:

Expected: a game left running when the system goes to sleep performs the same after wake as before.

Actual: after wake the game is severely degraded until it is restarted. A game launched after wake runs normally. Reproduced with:

  • Onimusha: Way of the Sword
  • The Witcher 3
  • Counter-Strike 2 (native Linux/Vulkan)

I have two OS versions I've tested that fail differently:

3.9.0: frame rate collapses (Onimusha drops from 60fps to about 12fps). The game's VRAM is evicted to GTT at suspend and never comes back:

  • Before suspend, Onimusha's fdinfo shows drm-resident-vram at about 7.4 GiB and mem_info_vram_used at 8.6 GiB.
  • After wake, Onimusha shows drm-resident-vram at about 190 MiB and drm-resident-gtt at about 7.9 GiB. mem_info_vram_used is about 1.0 GiB and mem_info_gtt_used about 8.3 GiB.
  • CS2 after wake: mem_info_vram_used is 1.8 GiB and mem_info_gtt_used 8.5 GiB, almost all of it CS2's. CS2 relaunched after the same wake holds a solid 60fps with mem_info_vram_used at 9.8 GiB and mem_info_gtt_used at 0.5 GiB.
  • It stays that way for as long as the game runs. The GPU reports 100% busy, but power drops from about 230-266W to about 140-170W.
  • No kernel errors are logged.

3.8.26: VRAM does return, but the game hitches badly on camera movement. Both measurements below were taken while the game was running after wake:

  • The game's gfx engine time is about 2.8x its pre-suspend value, and power falls to about 120W at 100% busy.
  • amdgpu fires about 85k IRQs per second. kworkers on the sdma1, gfx_0.0.0 and comp_1.1.0 workqueues stay busy.
  • mem_info_vram_used / mem_info_gtt_used change between 20Hz samples about half the time (±30 MiB).

Both kernels log amdgpu 0000:03:00.0: MODE1 reset at suspend entry.

On 3.9.0 I ruled out each of the following with a separate suspend cycle; the result was identical every time:

  • my own GPU tuning, both the undervolt/power cap/fan curve and OverDrive disabled at module load via stock ppfeaturemask
  • dmemcg-booster, with both units masked and the dmem controller not enabled
  • Steam background game recording
  • the iGPU: the game's memory stays behind the dGPU's GTT, and the iGPU holds about 14 MiB

Sleep/wake worked on this system at some point, but I don't know which version last worked.

Steps for reproducing this issue:
  1. On an RX 9070 XT, launch Counter-Strike 2 (offline practice map, 4K), Onimusha: Way of the Sword, or The WItcher 3 and play briefly.
  2. Put the system to sleep with the game still running, then wake it.
  3. Return to the game: on 3.9.0 performance collapses and /sys/class/drm/card0/device/mem_info_vram_used stays around 1-2 GiB with the game's memory in GTT; on 3.8.26 it hitches on camera movement. Restarting the game restores normal performance.
Other Notes

I haven't found others with this specific issue, so it could be something specific to my setup. That being said, I have pretty well-supported hardware and am running pretty much stock SteamOS besides a small undervolt and power limit settings (bug manifested with that disabled though, so that's not the problem). This bug in particular is a huge bummer for me because sleep/resume is the most important feature for me in SteamOS. I would appreciate any guidance/advice/possible fixes!

Lingua principale
Nessun dato sulla lingua
Stelle
2.6k
Fork
85
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Preparare l'ambiente

Questo progetto non fornisce container di sviluppo, Dockerfile né guida per i contributori, quindi l'ambiente è a tuo carico: parti dal suo README e consulta la nostra guida al primo contributo per i passaggi generali.

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di ValveSoftware/SteamOS

Tutte le issue di ValveSoftware/SteamOS

Issue simili

Altre issue su Operating Systems

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.