SGLang-Community: Autarke Multi-GPU-Inference für lokale Coding-Agenten

# SGLang-Community: Autarke Multi-GPU-Inference für lokale Coding-Agenten ![SGLang Repository](https://opengraph.githubassets.com/1/sgl-project/sglang) ## Kurzfassung Die SGLang-Community diskutiert

SGLang-Community: Autarke Multi-GPU-Inference für lokale Coding-Agenten

SGLang Repository

Kurzfassung

Die SGLang-Community diskutiert aktuell vor allem Themen rund um die Optimierung von Modellen auf Consumer-GPUs, die Verbesserung der Prefix-Caching-Techniken und die Erweiterung der Kontextlänge. Besonders relevant für Nutzer, die ein autarkes Setup mit 4x 3090 oder 2x 5090 aufbauen wollen, sind die Diskussionen zur Quantisierung, zur VRAM-Optimierung und zur Integration von Tool-Calling-Funktionen. Diese Entwicklungen können die Performance und den Energieverbrauch erheblich verbessern, was für ein 24/7-Betrieb in der Wohnung oder im Haus entscheidend ist.


Running MiniMax H3 Ref2VA on 2x RTX 5090 under a 116 GB cgroup — streaming weight load + resident-layer GPU routing (4 patches, SGLang 0.5.17) (8/10) — OpenCode-Fit: JA

Worum geht es konkret?
Der Beitrag beschreibt, wie das Modell MiniMax H3 Ref2VA (33B DiT + Qwen3VL, full BF16, ~123 GB) auf 2x RTX 5090 mit einem Host cgroup `memory.max=116 GB` geladen und ausgeführt werden kann. Das Problem ist, dass der Standardprozess OOM (Out of Memory) führt, da die gesamte DiT-Gewichts-Dict auf der CPU materialisiert wird. Die Lösung besteht in 4 Patches, die die Gewichte schrittweise laden und spezifische Layer direkt auf die GPU platzieren.

Was heisst das für ein autarkes Home-Setup (4x 3090 / 2x 5090 / Mac Studio)?
Diese Patches ermöglichen es, große Modelle wie MiniMax H3 auf Consumer-GPUs zu betreiben, ohne an VRAM-Grenzen zu scheitern. Die VRAM-Optimierung und die effiziente Lastverteilung machen das Setup für Nutzer mit begrenztem VRAM besonders interessant. Die Patches sind für SGLang 0.5.17 verfügbar und können leicht integriert werden.

Konsequenz für OpenCode-Nutzer:
Die VRAM-Optimierung und die effizientere Lastverteilung führen zu schnelleren Ladezeiten und einer besseren Nutzung der verfügbaren GPU-Ressourcen. Dies kann die Performance von Agent-Workloads erheblich verbessern, insbesondere bei der Verarbeitung von komplexen Prompts und der Generierung strukturierter Ausgaben.

Handlungsempfehlung:
Jetzt auf SGLang 0.5.17 updaten und die beschriebenen Patches anwenden.

Fakten-Tabelle:
– Hardware im Post: 2x RTX 5090
– Modell: MiniMax H3 Ref2VA
– Framework-Version: SGLang 0.5.17
– tok/s / Benchmark: 1344×768 / 4.5 s video out, peak GPU 18.7 GB, peak CPU 114.7 GB
– Multi-GPU-Konfiguration: TP=2


How fast can you run DeepSeek V4 Spark 0731 with CPU-GPU hybrid inference when VRAM is not enough? (7/10) — OpenCode-Fit: BEDINGT

Worum geht es konkret?
Die Diskussion dreht sich um die Möglichkeit, das Modell DeepSeek V4 Spark 0731 auf Consumer-GPUs mit begrenztem VRAM zu betreiben. Der Ansatz besteht darin, Teile der MoE-Experten in das System-RAM und auf die CPU zu outloaden, um die VRAM-Beschränkungen zu umgehen. Es werden Benchmarks für verschiedene Konfigurationen vorgestellt.

Was heisst das für ein autarkes Home-Setup (4x 3090 / 2x 5090 / Mac Studio)?
Die CPU-GPU-Hybrid-Inference ermöglicht es, große Modelle wie DeepSeek V4 auf Consumer-GPUs zu betreiben, auch wenn die VRAM begrenzt ist. Dies ist besonders nützlich für Nutzer, die keine hochspezialiserten GPUs wie H100 zur Verfügung haben. Die Benchmarks zeigen, dass die Performance akzeptabel ist, auch wenn sie nicht an die von H100 erreichten Werte heranreicht.

Konsequenz für OpenCode-Nutzer:
Die Hybrid-Inference kann die VRAM-Beschränkungen umgehen und die Performance von Agent-Workloads verbessern. Dies ist besonders relevant für Nutzer, die komplexe Aufgaben mit großen Modellen durchführen müssen, ohne über hohe VRAM-Kapazitäten zu verfügen.

Handlungsempfehlung:
Auf den modifizierten SGLang-Backend updaten und die CPU-GPU-Hybrid-Inference testen.

Fakten-Tabelle:
– Hardware im Post: 2x 5060Ti, 2x 3090, 1x Pro 6000
– Modell: DeepSeek V4 Spark 0731
– Framework-Version: Lsglang-v1.4.7, Lvllmds4-x-v2.3.9
– tok/s / Benchmark: 850 t/s (input 32768), 28 t/s (input 32768), 30~46 t/s
– Multi-GPU-Konfiguration: TP=2


Running MiniMax H3 (FL2VA) on 4x L40S with SGLang: dynamic FP8, ~2x speedup vs 2-GPU BF16, 14GB/card (6/10) — OpenCode-Fit: BEDINGT

Worum geht es konkret?
Der Beitrag beschreibt, wie das Modell MiniMax H3 (FL2VA) auf 4x L40S-GPUs mit SGLang und dynamischer FP8-Quantisierung betrieben werden kann. Die FP8-Quantisierung reduziert die VRAM-Beschränkungen und führt zu einer etwa doppelt so schnellen Generierung im Vergleich zu 2-GPU BF16.

Was heisst das für ein autarkes Home-Setup (4x 3090 / 2x 5090 / Mac Studio)?
Die FP8-Quantisierung kann auch auf Consumer-GPUs wie 3090 oder 5090 angewendet werden, um die VRAM-Beschränkungen zu reduzieren und die Performance zu verbessern. Die beschriebene Konfiguration ist jedoch spezifisch für L40S-GPUs, was die direkte Anwendung auf Consumer-GPUs erschwert. Dennoch können die Prinzipien der FP8-Quantisierung und der parallelen Ausführung auf 4 GPUs nützlich sein.

Konsequenz für OpenCode-Nutzer:
Die FP8-Quantisierung kann die VRAM-Beschränkungen reduzieren und die Generierungsgeschwindigkeit erhöhen. Dies ist besonders relevant für Nutzer, die große Modelle auf Consumer-GPUs betreiben müssen.

Handlungsempfehlung:
Die FP8-Quantisierung in SGLang testen und die Konfiguration anpassen, um die VRAM-Beschränkungen zu reduzieren.

Fakten-Tabelle:
– Hardware im Post: 4x L40S
– Modell: MiniMax H3, FL2VA
– Framework-Version: SGLang 2026-08-04 build
– tok/s / Benchmark: ~5.8–6.1 s/it, 9.5 GB idle / 14.3 GB peak per card
– Multi-GPU-Konfiguration: TP=4, Ulysses-degree=4


Customize prefix caching (5/10) — OpenCode-Fit: BEDINGT

Worum geht es konkret?
Die Diskussion dreht sich um die Möglichkeit, eine benutzerdefinierte Implementierung für Prefix-Caching zu erstellen, wenn das Modell Eingabebeschreibungen anstelle von Token-IDs akzeptiert. Der Autor erkundigt sich, ob es eine Plugin-Mechanik gibt, um dies zu erreichen, oder ob eine Fork des Engines notwendig ist.

Was heisst das für ein autarkes Home-Setup (4x 3090 / 2x 5090 / Mac Studio)?
Die benutzerdefinierte Prefix-Caching-Implementierung kann die Performance von Agent-Workloads verbessern, insbesondere wenn die Eingaben direkt als Embeddings bereitgestellt werden. Dies ist besonders relevant für Nutzer, die komplexe Prompts mit strukturierter Ausgabe verarbeiten müssen.

Konsequenz für OpenCode-Nutzer:
Eine benutzerdefinierte Prefix-Caching-Implementierung kann die Performance von Agent-Workloads verbessern, indem sie die Wiederholung von System-Prompts reduziert. Dies ist besonders nützlich für Nutzer, die häufige Agent-Interaktionen haben.

Handlungsempfehlung:
Auf die neueste SGLang-Version updaten und die Möglichkeit einer benutzerdefinierten Prefix-Caching-Implementierung prüfen.

Fakten-Tabelle:
– Hardware im Post: nicht im Post belegt
– Modell: nicht im Post belegt
– Framework-Version: nicht im Post belegt
– tok/s / Benchmark: nicht im Post belegt
– Multi-GPU-Konfiguration: nicht im Post belegt


Why do PDMux Prefill and Decode kernels show no temporal overlap? (4/10) — OpenCode-Fit: BEDINGT

Worum geht es konkret?
Die Diskussion beschäftigt sich mit dem Phänomen, dass die PDMux-Prefill- und Decode-Kernels bei der Verwendung von PDMux keine zeitliche Überlappung zeigen. Der Autor stellt die Umgebung und die verwendeten Konfigurationen vor und teilt die Ergebnisse des Profilierens mit `nsys`.

Was heisst das für ein autarkes Home-Setup (4x 3090 / 2x 5090 / Mac Studio)?
Die fehlende zeitliche Überlappung der PDMux-Kernels kann die Performance negativ beeinflussen. Dies ist besonders relevant für Nutzer, die optimierte Performance bei der Verarbeitung von großen Modellen benötigen. Die Analyse der Profilergebnisse kann helfen, die Ursache zu identifizieren und mögliche Optimierungen durchzuführen.

Konsequenz für OpenCode-Nutzer:
Die Optimierung der PDMux-Kernels kann die Performance von Agent-Workloads verbessern, indem sie die zeitliche Überlappung der Kernels maximiert. Dies ist besonders relevant für Nutzer, die komplexe Aufgaben mit großen Modellen durchführen müssen.

Handlungsempfehlung:
Die Profilergebnisse analysieren und mögliche Optimierungen in der PDMux-Konfiguration durchführen.

Fakten-Tabelle:
– Hardware im Post: 3080Ti
– Modell: Qwen3-1.7B
– Framework-Version: SGLang 0.5.9
– tok/s / Benchmark: nicht im Post belegt
– Multi-GPU-Konfiguration: TP=1


Measured: scattered-token KV eviction frees zero pages under paged allocation (3/10) — OpenCode-Fit: BEDINGT

Worum geht es konkret?
Die Diskussion beschreibt eine Messung, die zeigt, dass die scattered-token KV-Eviction der H2O-Familie unter ehrlicher paged accounting keine Seiten freigibt. Dies kann zu einer hohen Speicherbelegung führen, insbesondere bei der Verwendung von RadixAttention.

Was heisst das für ein autarkes Home-Setup (4x 3090 / 2x 5090 / Mac Studio)?
Die Messung zeigt, dass die scattered-token KV-Eviction bei der Verwendung von RadixAttention keine Speicherseiten freigibt, was zu einer hohen Speicherbelegung führen kann. Dies ist besonders relevant für Nutzer, die große Modelle mit RadixAttention betreiben und eine effiziente Speicherverwaltung benötigen.

Konsequenz für OpenCode-Nutzer:
Die Verwendung von RadixAttention kann zu einer hohen Speicherbelegung führen, insbesondere bei der Verwendung von scattered-token KV-Eviction. Nutzer sollten alternative Cache-Strategien prüfen, um die Speicherbelegung zu reduzieren.

Handlungsempfehlung:
Alternative Cache-Strategien testen und die Speicherbelegung überwachen.

Fakten-Tabelle:
– Hardware im Post: nicht im Post belegt
– Modell: Llama-3.2-1B
– Framework-Version: nicht im Post belegt
– tok/s / Benchmark: nicht im Post belegt
– Multi-GPU-Konfiguration: nicht im Post belegt


Weitere Diskussionen (kurz):

support read/write datalake(iceberg、delta lake、paimon、lance)ENTERPRISE (für uns irrelevant)
– Diskussion über die Unterstützung von Datalakes, die für Enterprise-Setups relevant sind, aber für autarke Home-Setups nicht anwendbar sind.

add dingding faliedENTERPRISE (für uns irrelevant)
– Problem mit der Verbindung zu DingTalk, das für Enterprise-Setups relevant ist, aber für autarke Home-Setups nicht anwendbar ist.

Jump Forward Decoding Disabled?BEDINGT
– Diskussion über die Deaktivierung des Jump Forward Decoding, das für die Performance von Modellen relevant sein kann, aber spezifisch für bestimmte Modelle und Setups ist.

A question about Qwen-3-vl-reranker for the difference between sglang inference and transformer inference.BEDINGT
– Frage zur Implementierung des Qwen-3-vl-reranker, die für die Performance von spezifischen Modellen relevant sein kann, aber spezifisch für diese Modelle ist.

Ling 2.6 lightning/linear attention cache size not exposed in SGLang metrics/logsBEDINGT
– Diskussion über die Fehlende Berichterstattung der lightning/linear attention cache Größe in SGLang, die für die Performance-Optimierung von spezifischen Modellen relevant sein kann, aber spezifisch für diese Modelle ist.

Is origin_input_ids expected to always be array.array in SGLang v0.5.13+?BEDINGT
– Diskussion über einen Typenkonflikt in SGLang, der für die Integration von Modellen relevant sein kann, aber spezifisch für bestimmte Versionen von SGLang ist.

👁 2 Aufrufe 👤 2 Leser