Valve corregge il problema della VRAM su Linux

Una delle criticità più fastidiose per chi gioca su Linux riguarda la gestione della VRAM, soprattutto sulle GPU con 8 GB di memoria.

Quando la VRAM si riempie, il sistema tende a spostare parte dei dati nel GTT, ovvero la RAM di sistema accessibile tramite PCIe. Questo passaggio introduce latenze elevate e provoca stuttering, hitching e picchi nei tempi frame, con un impatto evidente nei giochi più pesanti.

Natalie Vock, ingegnera grafica impegnata nello stack grafico Linux di Valve e nel team RADV, ha sviluppato una serie di patch per il kernel e strumenti user‑space che affrontano direttamente questo problema. L’obiettivo è semplice: garantire che il gioco in primo piano abbia sempre la priorità nell’uso della VRAM, mentre le applicazioni in background vengono spostate nella memoria più lenta solo quando necessario.

Il lavoro combina modifiche al kernel per introdurre il supporto ai cgroup di memoria per i dispositivi DRM e miglioramenti al sistema TTM, responsabile della gestione della memoria delle GPU. A queste modifiche si affiancano due strumenti: dmemcg‑booster, che gestisce la priorità della memoria, e plasma‑foreground‑booster, che permette a KDE Plasma di identificare l’applicazione a schermo intero e assegnarle automaticamente la priorità.

Per chi non utilizza Plasma, la stessa logica può essere ottenuta tramite le versioni più recenti di Gamescope, che integrano un rilevamento simile dell’applicazione attiva.

I risultati dei test sono significativi. In Cyberpunk 2077, su una GPU da 8 GB, la VRAM utilizzata è passata da circa 6 GB a oltre 7,4 GB, mentre lo spillover nel GTT è stato ridotto da 1,37 GB a circa 650 MB. Una riduzione di oltre il 50%, che si traduce in un’esperienza di gioco più fluida e stabile.

Compatibilità e stato delle patch

Le patch sono pensate principalmente per lo stack grafico open‑source di AMD, ma parte del lavoro migliora anche le GPU Intel Xe. È stato inoltre inviato un patchset iniziale per Nouveau, il driver open‑source per le GPU Nvidia, anche se i risultati potrebbero variare a seconda del modello e del supporto hardware.

Al momento, queste modifiche non sono ancora integrate nelle distribuzioni principali né nel kernel upstream. Tuttavia, chi vuole provarle può farlo tramite CachyOS, una distribuzione orientata alle prestazioni che ha iniziato a integrare i kernel patchati a partire dalla versione 7.0rc7‑2. In questo ambiente, le patch funzionano in combinazione con KDE Plasma, che sfrutta lo strumento dedicato per identificare l’applicazione in primo piano.

Resta da vedere se il kernel principale accetterà queste modifiche. La gestione della memoria GPU è un’area complessa e ogni cambiamento deve essere valutato con attenzione, soprattutto quando coinvolge cgroup e componenti condivisi tra driver diversi. Tuttavia, il lavoro di Valve evidenzia un problema reale e propone una soluzione concreta, con benefici immediati per milioni di utenti che utilizzano GPU con quantità di VRAM limitata.

Questa iniziativa rappresenta un passo importante verso un’esperienza di gaming più prevedibile e stabile su Linux, soprattutto in un periodo in cui i giochi AAA richiedono sempre più memoria grafica. Il contributo di Valve continua a rafforzare l’ecosistema Linux, migliorando non solo le prestazioni ma anche la qualità complessiva dell’esperienza utente.

Lascia un commento