G4mest3r
gesperrt
Heisst, man sieht diese "Boost"-Ergebnisse nur wenn man mit knappem VRAM bei unoptimierten Spielen unterwegs ist.Es ist sowohl ein Anwendungs-, als auch ein Linuxproblem. Ja, Alan Wake ist kacke optimiert, aber:
1. Spiele erwarten VRAM-Management, wie es Windows betreibt.
2. Das ist in Linux noch nicht gegeben: Aus der Sicht des AMDGPU Linux Kernel-Grafiktreibers schaut jedweder reservierte Grafikspeicher komplett gleich aus.
Wenn ein Spiel im Vollbildmodus läuft, könnte man ja VRAM freigeben, der vom Desktop oder vom Webbrowser verwendet wird, oder ein LRU (least recently used)-Modell verwenden. Der Windows Treiber hat soetwas.
Die hierfür notwendigen Informationen sind in Linux aber nicht verfügbar, und würden im worst-case einen Rewrite von großen Teilen des Linux Grafiktreiberstacks (das betrifft mehrere Treiber, nicht nur AMDGPU), sowie eine regelmäßig upgedatete Liste mit den Namen von Spieleprozessen erfordern.
Das eigentliche Problem: Wenn also derzeit ein zufälliger VRAM-Bereich in den RAM verschoben wird, trifft es statistisch gesehen am häufigsten das Spiel selbst. Das führt dann zu thrashing.
Die Lösung: CGroups. Eigentlich für Container und Serverworkloads gedacht, um Hardwareresourcen zu partitionieren/limitieren, und schon lange etabliert. Neu dazugekommen ist jetzt die Möglichkeit, auch VRAM damit zu einzuteilen:
Das CachyOS Tool erstellt für das Spiel eine eigene CGroup, welche prinzipiell den gesamten VRAM nutzen darf - hiermit ist es jetzt endlich möglich, den vom Spiel belegten VRAM zu markieren, wodurch dieser bevorzugt nicht wieder ausgelagert wird. Das ist eine Zweckentfremdung von CGroups, aber gleichzeitig auch genial, da unkompliziert, bringt ein paar hundert MB, die das Spiel zusätzlich nutzen kann, bevor thrashing einsetzt, und kommt näher an das Verhalten des Windows-Treibers ran.
OK.
Freut mich, dass da auf der OpenSource-Seite weiter optimiert wird.
Aber um Himmels Willen Developer! Fix your f*****g games!