Preparing for Steam machine: new Linux patches reduce VRAM spillover in games on low-end GPUs

A developer working on Linux graphics, identified as part of the Valve ecosystem, has introduced a set of kernel patches and user-space tools aimed at improving VRAM management on low-memory GPUs. The work targets systems with 8GB or less VRAM, where modern games often struggle due to inefficient memory allocation between foreground applications and background tasks.
When other software needs VRAM
The issue emerges from how the Linux kernel currently handles GPU memory. When VRAM is exhausted, the system may move active game data into system memory, known as GTT, instead of evicting less critical background applications. This behavior reduces performance due to significantly lower bandwidth and higher latency compared to VRAM. In testing with Cyberpunk 2077, the game was observed using 1370 MB of GTT memory under load, which directly impacts frame consistency.
Source: Natalie Vock
The proposed solution introduces a new memory prioritization mechanism. This allows the system to assign higher priority to foreground applications, such as games, ensuring they retain VRAM allocation while less critical processes are deprioritized.
Initial results show that GTT usage in games can be reduced to only the memory explicitly allocated there by the application. In the same Cyberpunk 2077 test, GTT usage dropped to around 650MB, eliminating unintended memory spillover. This leads to more stable performance over time, particularly in scenarios where VRAM pressure gradually increases during gameplay sessions.
Support currently applies to open-source drivers for AMD and Intel GPUs. The proprietary driver stack from NVIDIA does not support the required cgroup controller, limiting compatibility.
Such a feature would improve performance on the upcoming Steam Machine, which features RDNA2 graphics card with 8 GB VRAM, perhaps that was the goal here all along.
Source: Pixel Cluster via Digital Foundry