llama.cpp: VRAM-Optimierungstricks für größeren Kontext auf der GPU
Der Reddit-Nutzer imgroot9 betreibt ein Qwen3.6-27B-UD-Q5_K_XL-mtp-Modell mit bis zu 150.000 Token Kontext auf einer RTX 3090 in einem eGPU-Setup und teilt dabei seine Erfahrungen mit llama.cpp-spezifischen Speicheroptimierungen. Als Basis-Konfiguration setzt er auf `--n-gpu-layers 99 --no-mmap --mlock`, um regulären RAM vollständig zu umgehen. Der größte einzelne Gewinn ist `--no-mmproj-offload`: Bei Vision-Modellen wird das Multimodal-Projektionsmodul auf die CPU ausgelagert, was bis zu 1 GB VRAM freisetzt, allerdings auf Kosten leichter Performance-Einbußen. Für den KV-Cache empfiehlt er `--cache-type-k` und `--cache-type-v` mit aggressiver Quantisierung (bis q4), wobei er beobachtet hat, dass durch Attention-Rotation eingeführte Mechanismen den Qualitätsverlust abmildern – das gewonnene VRAM erlaubt ein größeres Basismodell. Beim spekulativen Dekodieren mit dem MTP-Modell empfiehlt er `--spec-draft-n-max 2` für Code-Tasks; Wert 1 reduziert Speicher minimal, kostet aber etwa 5 % TPS, Wert 3 bringt im Test keine weiteren TPS-Vorteile. Einige Parameter, die intuitiv helfen sollten, erwiesen sich als wirkungslos: `--ctx-checkpoints` zeigte trotz Änderung des Standardwerts von 64 keinen Effekt, und `--fit-target` (Sicherheitspuffer, Standard 1024 MB) ließ sich auf 64 MB reduzieren, ohne messbare Auswirkung – offenbar weil llama.cpp beim Start intern eine eigene OOM-Vermeidungsberechnung durchführt.
- --no-mmproj-offload lagert das mmproj-Modul bei Vision-Modellen auf die CPU aus und gibt bis zu 1 GB VRAM frei.
- KV-Cache-Quantisierung (--cache-type-k/-v) reduziert die Speicherallokation um 50–75 %, senkt aber die Ausgabequalität.
- --spec-draft-n-max 2 ist für Code-Aufgaben optimal; Wert 3 verbraucht mehr VRAM ohne TPS-Gewinn, Wert 1 kostet ~5 % TPS.
- --flash-attn ist mittlerweile standardmäßig aktiviert und zwingend erforderlich, wenn ein quantisierter V-Cache genutzt wird.
- --fit-target (Standard 1024 MB GPU-Sicherheitspuffer) und --ctx-checkpoints (Standard 64) hatten im Test des Autors keinen messbaren Einfluss auf den VRAM-Verbrauch.
Frag die KI zum Artikel
Folgefragen zu Headline, Quelle und Volltext — Antwort streamt in wenigen Sekunden.
Verwandte Beiträge
llama.cpp: VRAM-Optimierungstricks für größeren Kontext auf der GPU
Der Reddit-Nutzer imgroot9 betreibt ein Qwen3.6-27B-UD-Q5_K_XL-mtp-Modell mit bis zu 150.000 Token Kontext auf einer RTX 3090 in einem eGPU-Setup und teilt dabei seine Erfahrungen mit llama.cpp-spezifischen Speicheroptimierungen. Als Basis-Konfiguration setzt er auf `--n-gpu-layers 99 --no-mmap --mlock`, um regulären RAM vollständig zu umgehen. Der größte einzelne Gewinn ist `--no-mmproj-offload`: Bei Vision-Modellen wird das Multimodal-Projektionsmodul auf die CPU ausgelagert, was bis zu 1 GB VRAM freisetzt, allerdings auf Kosten leichter Performance-Einbußen. Für den KV-Cache empfiehlt er `--cache-type-k` und `--cache-type-v` mit aggressiver Quantisierung (bis q4), wobei er beobachtet hat, dass durch Attention-Rotation eingeführte Mechanismen den Qualitätsverlust abmildern – das gewonnene VRAM erlaubt ein größeres Basismodell. Beim spekulativen Dekodieren mit dem MTP-Modell empfiehlt er `--spec-draft-n-max 2` für Code-Tasks; Wert 1 reduziert Speicher minimal, kostet aber etwa 5 % TPS, Wert 3 bringt im Test keine weiteren TPS-Vorteile. Einige Parameter, die intuitiv helfen sollten, erwiesen sich als wirkungslos: `--ctx-checkpoints` zeigte trotz Änderung des Standardwerts von 64 keinen Effekt, und `--fit-target` (Sicherheitspuffer, Standard 1024 MB) ließ sich auf 64 MB reduzieren, ohne messbare Auswirkung – offenbar weil llama.cpp beim Start intern eine eigene OOM-Vermeidungsberechnung durchführt.
- --no-mmproj-offload lagert das mmproj-Modul bei Vision-Modellen auf die CPU aus und gibt bis zu 1 GB VRAM frei.
- KV-Cache-Quantisierung (--cache-type-k/-v) reduziert die Speicherallokation um 50–75 %, senkt aber die Ausgabequalität.
- --spec-draft-n-max 2 ist für Code-Aufgaben optimal; Wert 3 verbraucht mehr VRAM ohne TPS-Gewinn, Wert 1 kostet ~5 % TPS.
- --flash-attn ist mittlerweile standardmäßig aktiviert und zwingend erforderlich, wenn ein quantisierter V-Cache genutzt wird.
- --fit-target (Standard 1024 MB GPU-Sicherheitspuffer) und --ctx-checkpoints (Standard 64) hatten im Test des Autors keinen messbaren Einfluss auf den VRAM-Verbrauch.
Frag die KI zum Artikel
Folgefragen zu Headline, Quelle und Volltext — Antwort streamt in wenigen Sekunden.