Valve’s Linux developer, Natalie Vock, has introduced a new method for managing GPU memory on systems with 8 GB of VRAM or less. This enhancement aims to improve performance and VRAM allocation, which is beneficial for the gaming community utilizing limited resources.
According to Vock’s solution, GPUs with 8 GB of VRAM or less running Linux will now benefit from improved background VRAM management, providing more free space for games.
Several Linux kernel patches have been submitted to guide how Linux manages resources when a game is loaded. Previously, if a game used excessive VRAM on a low-VRAM GPU, the Linux Graphics Translation Table (GTT) would move data to system RAM to prevent the game from crashing. A complication arose because Linux does not prioritize programs, meaning it could sometimes move the actual game data from VRAM to system RAM to free space for other applications, such as a browser or a third-party app.
To address this, Vock developed a real-time dmemcg-booster, which stands for Device Memory Control Groups. This tool is designed to inform Linux when a program running on GPU VRAM must remain there, preventing it from being moved to GTT and subsequently to system RAM.
Testing showed a significant improvement. Previously, running Cyberpunk 2077 on an 8 GB VRAM GPU resulted in the system using only 6 GB of the available GPU VRAM, with approximately 1.37 GB spilling over to GTT and being allocated in system RAM. This allocation could potentially cause game stuttering and frame-pacing issues.
With the new patch, running Cyberpunk 2077 now utilizes almost the entire available system VRAM, reaching 7.4 GB. Furthermore, the GTT allocation has been reduced to 650 MB, representing a cut of more than half.
This patch is timely given the arrival of Valve’s Steam Machine, which also features 8 GB of GDDR6 memory. While Valve likely intended these enhancements for its own hardware, including the Steam Machine, Deck, and future releases, the benefit extends to all millions of gamers using GPUs with 8 GB VRAM or less.
Additionally, the KDE desktop environment has received a patch to better identify the active and front window, allowing the system to know where to allocate GPU VRAM.