Spiritbuun llama.cpp Fork: VBR KV-Cache spart VRAM und halbiert TTFT
Spiritbuuns llama.cpp-Fork geht über die üblichen statischen KV-Cache-Quantisierungen hinaus und führt ein dynamisches Stufenmodell ein, das als VBR (Variable Bit Rate) bezeichnet wird. Ausgangspunkt ist ein Entry-Tier von f16 (volle Präzision); sobald der VRAM-Verbrauch beim Füllen des Kontextfensters steigt, degradiert der Fork die KV-Cache-Quantisierung automatisch durch eine fest definierte Leiter: turbo8 → turbo4 → turbo3_tcq → turbo2_tcq → turbo1_tcq. Das Budget wird einmalig beim Start aus dem nach dem Modell-Load verbleibenden VRAM berechnet – ohne dass der Nutzer n_ctx manuell schätzen muss. Intern nutzt der Fork einen VMM-Pool (Virtual Memory Mapping), der physische Seiten auf Anfrage zuordnet, sowie TurboQuant-Rotationsmatrizen, die Spiritbuun selbst entwickelt hat. Poster /u/old-mike setzt die Lösung auf einer RTX 3060 mit 12 GB VRAM für das Modell Qwen3.6-35B-A3B in der Apex-I-Compact-Quantisierung ein – eine Kombination, die er bereits in einem früheren Post auf r/LocalLLaMA vorgestellt hatte. Der Degrade-Controller arbeitet während des Decodes und greift laut Testergebnis ohne sichtbare TPS-Einbrüche ein. Ein bekannter Bug in den fusionierten f16↔turbo8-Kerneln führte bei der Konfiguration turbo8-K / f16-V zu Output-Korruption; der betreffende Commit wurde bereits revertiert, und Spiritbuun ist über das Problem informiert.
- Der VBR-Modus wird mit einem einzigen Flag aktiviert (-ctv vbr); Schlüssel-Cache und Floor lassen sich separat fixieren (z. B. -ctk turbo8 --vbr-floor turbo3_tcq).
- Die Kontextlänge wurde im Test automatisch auf 216.000 Token ausgelegt – exakt so viel, wie nach dem Modell-Load in den 12-GB-VRAM passte.
- Decode-Throughput mit VBR: 50,85 TPS vs. 52,83 TPS bei festem turbo4 – Differenz nur ~4 %, bei Coefficient of Variation von 0,6 % vs. 0,4 %.
- Der Fork enthält außerdem einen VMM-Pool, der physische VRAM-Seiten on-demand mappt, sowie TurboQuant-Rotationsmatrizen als eigene Spiritbuun-Entwicklungen.
- Der Bug mit fusionierten f16↔turbo8-Kerneln (turbo8-K / f16-V-Config) wurde durch Revert des betreffenden Commits behoben; Spiritbuun ist informiert.
Frag die KI zum Artikel
Folgefragen zu Headline, Quelle und Volltext — Antwort streamt in wenigen Sekunden.
Verwandte Beiträge
Spiritbuun llama.cpp Fork: VBR KV-Cache spart VRAM und halbiert TTFT
Spiritbuuns llama.cpp-Fork geht über die üblichen statischen KV-Cache-Quantisierungen hinaus und führt ein dynamisches Stufenmodell ein, das als VBR (Variable Bit Rate) bezeichnet wird. Ausgangspunkt ist ein Entry-Tier von f16 (volle Präzision); sobald der VRAM-Verbrauch beim Füllen des Kontextfensters steigt, degradiert der Fork die KV-Cache-Quantisierung automatisch durch eine fest definierte Leiter: turbo8 → turbo4 → turbo3_tcq → turbo2_tcq → turbo1_tcq. Das Budget wird einmalig beim Start aus dem nach dem Modell-Load verbleibenden VRAM berechnet – ohne dass der Nutzer n_ctx manuell schätzen muss. Intern nutzt der Fork einen VMM-Pool (Virtual Memory Mapping), der physische Seiten auf Anfrage zuordnet, sowie TurboQuant-Rotationsmatrizen, die Spiritbuun selbst entwickelt hat. Poster /u/old-mike setzt die Lösung auf einer RTX 3060 mit 12 GB VRAM für das Modell Qwen3.6-35B-A3B in der Apex-I-Compact-Quantisierung ein – eine Kombination, die er bereits in einem früheren Post auf r/LocalLLaMA vorgestellt hatte. Der Degrade-Controller arbeitet während des Decodes und greift laut Testergebnis ohne sichtbare TPS-Einbrüche ein. Ein bekannter Bug in den fusionierten f16↔turbo8-Kerneln führte bei der Konfiguration turbo8-K / f16-V zu Output-Korruption; der betreffende Commit wurde bereits revertiert, und Spiritbuun ist über das Problem informiert.
- Der VBR-Modus wird mit einem einzigen Flag aktiviert (-ctv vbr); Schlüssel-Cache und Floor lassen sich separat fixieren (z. B. -ctk turbo8 --vbr-floor turbo3_tcq).
- Die Kontextlänge wurde im Test automatisch auf 216.000 Token ausgelegt – exakt so viel, wie nach dem Modell-Load in den 12-GB-VRAM passte.
- Decode-Throughput mit VBR: 50,85 TPS vs. 52,83 TPS bei festem turbo4 – Differenz nur ~4 %, bei Coefficient of Variation von 0,6 % vs. 0,4 %.
- Der Fork enthält außerdem einen VMM-Pool, der physische VRAM-Seiten on-demand mappt, sowie TurboQuant-Rotationsmatrizen als eigene Spiritbuun-Entwicklungen.
- Der Bug mit fusionierten f16↔turbo8-Kerneln (turbo8-K / f16-V-Config) wurde durch Revert des betreffenden Commits behoben; Spiritbuun ist informiert.
Frag die KI zum Artikel
Folgefragen zu Headline, Quelle und Volltext — Antwort streamt in wenigen Sekunden.