Monarch v3: NES-inspiriertes KV-Paging für 78 % schnellere LLM-Inferenz

Was Monarch v3 leistet
Monarch v3 ist eine Open-Source-Implementierung von NES-inspiriertem Speicher-Paging für Transformer-Inferenz, die das lineare Wachstum des KV-Caches mit der Sequenzlänge adressiert. Bei 4K Tokens liegt der größte Teil des KV-Caches ungenutzt vor, während er VRAM in voller Präzision belegt.
Wie es funktioniert
Das System teilt den KV-Cache in zwei Bereiche:
- Heißer Bereich: Kürzliche Tokens werden in voller Präzision gehalten
- Kalter Bereich: Ältere Tokens werden auf ~20 Bytes pro Token komprimiert (vs. 64-128 Bytes heiß)
Vier Komponenten arbeiten zusammen:
- TurboQuant-Komprimierung: Quantisiert KV auf 4-Bit-Ganzzahlen mit Polar-Codierung und Restkorrektur, erreicht ~97 % Größenreduktion mit ~0,3 % Perplexity-Verlust
- Schiebefenster-Auslagerung: Die letzten N Tokens bleiben standardmäßig heiß, alte Tokens werden in den kalten Speicher komprimiert
- Aufmerksamkeitsgewichtete Beförderung: Tokens mit hoher Aufmerksamkeit werden mit einem Haftmechanismus zurück in den heißen Bereich verschoben, um Thrashing zu verhindern
- Seitenwechsel: Kleine Batches kalter Tokens werden bei Zugriff materialisiert, wobei eine lokale Decode-Schleife den Batch-Matmul ersetzt
Benchmark-Ergebnisse
Setup: TinyLlama-1.1B fp16, 50 generierte Tokens
- Standard: 17,01 Tok/s, 2112 MB VRAM
- Monarch-v3: 30,42 Tok/s, 2131 MB VRAM, 512 heiße Tokens, 1024 kalte Tokens
- Gewinn: +78,7 % Durchsatz, +0,9 % VRAM
Vereinfachte Decode-Schleife
for step in 1..100:
q = project_query(next_token)
# Berechne Aufmerksamkeit: nur heiß (schnell)
scores_hot = q @ kv_hot.T
# Greife auf kalte zu, wenn hohe Aufmerksamkeit (selten)
if max(scores_hot) < threshold:
kv_cold_promoted = decompress(cold_pages)
scores_cold = q @ kv_cold_promoted.T
# Für nächsten Schritt in heißen Bereich verschieben
# Aggregiere, Softmax, wende Aufmerksamkeit an ...
# Verdränge alte Tokens aus heiß → kalt
if len(kv_hot) > window_size:
evict_oldest_to_cold()Aktueller Status
- Implementierung: Funktioniert mit Hugging Face Transformers mit benutzerdefiniertem Cache-Backend
- Lizenz: Apache 2.0
- Paper: Vollständige technische Spezifikation verfügbar
- Nächstes: CUDA-Kernel-Fusion für kalte Dekomprimierung geplant
Wie man es ausprobiert
git clone https://github.com/JohannaWeb/Monarch.git
cd Monarch
pip install -r requirements.txt
python train_tinyllama_fp16.py
python src/benchmark_monarch.py \
--model models/tinyllama_fp16 \
--mode both \
--max-new-tokens 100 \
--promotion-threshold 0.15 \
--sticky-threshold 3 \
--jsonEinschränkungen
Der Ansatz beruht auf Aktualität (aktuelle Tokens = hohe Aufmerksamkeit), was für die meisten Aufgaben funktioniert, aber möglicherweise nicht für abrufintensive Workloads. Die Aufmerksamkeitsextraktion ist in Basismodellen verfügbar, aber nicht in Chat-Varianten; der Fallback verwendet nur Fenster-Paging.
📖 Read the full source: r/LocalLLaMA
👀 Siehe auch

Eden AI: Europäischer API-Hub für KI-Modelle – Positioniert sich als OpenRouter-Alternative
Eden AI bietet eine einzige, einheitliche API, um auf über 500 KI-Modelle (LLMs, Bildverarbeitung, OCR, Sprache) zuzugreifen – mit intelligentem Routing, Fallback-Mechanismen und Regionskontrolle. Positioniert als europäische Alternative zu OpenRouter.

Claude Desktop + Blender via MCP: Echtzeit-3D-Workflow schließt die Feedback-Schleife
Ein Open-Source-Blender-Add-on führt einen MCP-Server in Blender aus, sodass Claude Desktop Szenen untersuchen, Objekte erstellen, Bilder rendern und Ergebnisse lesen kann – und schließt damit die Feedback-Schleife des Skript-Einfügens.

Open-Source-Next.js-Starterkit fügt Schutzmechanismen und Agentenanweisungen hinzu, um KI-Müll zu verhindern
Ein neues Next.js-Boilerplate enthält Authentifizierung, Datenbank, CI, Tests und Claude-Code-Anweisungen direkt einsatzbereit, entwickelt für Entwickler, die KI-Coding-Agenten nutzen, um Produktions-Apps schneller zu erstellen.

OpenClaw Skill-Nutzungs-Tracker: Überwachen Sie, welche Fähigkeiten Sie tatsächlich einsetzen
Ein Entwickler hat ein Tool erstellt, um die Nutzungsanalysen für OpenClaw-Skills zu verfolgen, einschließlich Aufrufzahlen, Aufschlüsselungen nach Agent und Kanal sowie Top-Skill-Rankings über verschiedene Zeiträume.