Natalie Vock ist eine Grafikingenieurin, die im Grafik-Stack von Valve und im RADV-Vulkan-Treiberteam arbeitet. Vock hat eine Reihe von Kernel-Patches und Benutzerraum-Tools entwickelt, um die VRAM-Priorisierung unter Linux zu verbessern. Diese Updates sorgen dafür, dass die im Vordergrund laufenden Spiele schnellen, priorisierten Zugriff auf den lokalen GPU-Speicher erhalten, während Hintergrundanwendungen langsamer auf den Systemspeicher (RAM) umgeleitet werden.

Ohne diese Korrektur können Linux-Systeme ein Vollbildspiel nicht zuverlässig so hochpriorisieren wie einen Browser-Tab oder einen Desktop-Prozess, wenn der VRAM voll ist. Mit steigendem Speicherdruck können Spieldaten in den GTT (den Systemspeicher, auf den die GPU über PCIe zugreift) verschoben werden. Diese langsamere Zugriffsrate kann insbesondere bei 8GB-Grafikkarten zu Ruckeln und einer Erhöhung der Frametimes führen.

Wie die Linux VRAM-Priorisierungsbehebung funktioniert

Vocks Lösung integriert Änderungen im Linux-Kernel zur Unterstützung von DRM-Gerätespeicher-Cgroups und TTM-Speicherverwaltung mit zwei Benutzerraum-Tools, dmemcg-booster und plasma-foreground-booster. Das erste Tool verwaltet die Speichersteuerung, während das zweite KDE Plasma ermöglicht, aktive Vollbildanwendungen zu erkennen und die VRAM-Nutzung zu priorisieren. Benutzer, die kein KDE verwenden, können mit neueren Versionen von Gamescope ähnliche Ergebnisse erzielen.

In Vocks Tests mit Cyberpunk 2077 auf einer 8GB-GPU verwendete das Spiel zunächst etwa 6GB VRAM und wurde auf 1,37GB GTT verschoben. Nach Anwendung der Patches stieg die VRAM-Nutzung auf fast 7,4GB, während die GTT-Verschiebung auf 650MB fiel, was eine Reduzierung von etwa 53% bedeutet.

GPU-Kompatibilität und wie Sie die VRAM-Korrektur jetzt testen können

Die Patches sind für AMDs offenen Linux-Grafik-Stack vorgesehen. Berichten zufolge verbessern einige Arbeiten auch die Intel Xe-GPUs, und für Nouveau, den Open-Source-Treiber für Nvidia-Grafikkarten, wurde ein Patch upstream bereitgestellt.

Derzeit ist der einfachste Weg, die Korrektur zu testen, die Verwendung von CachyOS mit KDE Plasma, bei dem die erforderlichen Kernel-Updates ab Version 7.0rc7-2 integriert sind. Diese Patches sind noch nicht in mainstream Linux-Distributionen enthalten, und es ist noch nicht bestätigt, ob sie in den Upstream-Kernel aufgenommen werden.