SGLang-Community: Autarke Multi-GPU-Inference für lokale Coding-Agenten
Kurzfassung
Die SGLang-Community diskutiert aktuell intensiv, wie man große Sprachmodelle wie DeepSeek, MiniMax H3 und Qwen3 auf autarken, lokal betriebenen Systemen mit Consumer-GPUs wie 4x 3090 oder 2x 5090 effizient ausführen kann. Die Themen reichen von VRAM-Erweiterungen über CPU-GPU-Hybride bis hin zu spezialisierten Quantisierungstechniken. Diese Diskussionen sind besonders relevant für Nutzer, die OpenCode als Coding-Agent einsetzen und eine Claude-Sonnet-ähnliche Performance erreichen möchten, ohne auf Cloud- oder Enterprise-Infrastrukturen angewiesen zu sein.
How fast can you run DeepSeek V4 Spark 0731 with CPU-GPU hybrid inference when VRAM is not enough? (8/10) — OpenCode-Fit: JA
Worum geht es konkret?
Die Diskussion dreht sich um die Möglichkeit, DeepSeek-V4-Flash-0731 auf Consumer-GPUs mit begrenztem VRAM zu betreiben, indem man Teile des Modells in den System-RAM und auf die CPU auslagert. Der Autor hat eine custom inference stack entwickelt, der die CPU-GPU-Scheduling und NUMA-aware Memory Management übernimmt, um das Modell effizient zu laden und zu inferieren.
Was heisst das für ein autarkes Home-Setup (4x 3090 / 2x 5090 / Mac Studio)?
Diese Methode ermöglicht es, auch auf Consumer-GPUs mit begrenztem VRAM (z.B. 24 GB) große Modelle wie DeepSeek-V4-Flash-0731 zu betreiben. Die CPU unterstützt die GPU bei der Berechnung der Experten-Layers, was die VRAM-Belastung reduziert. Dies ist besonders nützlich für Nutzer, die keine Enterprise-Hardware zur Verfügung haben.
Konsequenz für OpenCode-Nutzer:
Mit dieser Methode können OpenCode-Nutzer größere Modelle auf ihren lokalen Systemen betreiben, was zu besseren Tool-Calling-Fähigkeiten und einer höheren Kontextlänge führen kann. Es ist jedoch wichtig, die richtige Hardware-Konfiguration zu wählen, um die beste Performance zu erzielen.
Handlungsempfehlung:
Die custom inference stack sollte getestet werden, um die Kompatibilität mit dem eigenen Setup zu überprüfen. Es ist ratsam, die Benchmarks und die Konfigurationen des Autors zu replizieren, um die Performance zu evaluieren.
Fakten-Tabelle:
– Hardware im Post: 2x 5090, 2x 3090, EPYC 7642 *2, EPYC 9684x *2
– Modell: DeepSeek-V4-Flash-0731
– Framework-Version: Lsglang-v1.4.7, Lvllmds4-x-v2.3.9
– tok/s / Benchmark: 850 t/s (5090), 1060 t/s (3090)
– Multi-GPU-Konfiguration: TP=2
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) (9/10) — OpenCode-Fit: JA
Worum geht es konkret?
Der Autor beschreibt, wie er MiniMax H3 Ref2VA (33B DiT + Qwen3VL) auf 2x RTX 5090 unter einer cgroup mit 116 GB Speicher erfolgreich geladen und inferiert hat. Er hat dazu 4 Patches für SGLang 0.5.17 entwickelt, die das Streaming der Gewichte und die resident-layer GPU-Routing ermöglichen.
Was heisst das für ein autarkes Home-Setup (4x 3090 / 2x 5090 / Mac Studio)?
Diese Methode ermöglicht es, auch auf Consumer-GPUs mit begrenztem VRAM (24 GB) große Modelle wie MiniMax H3 Ref2VA zu betreiben. Die Patches sorgen dafür, dass das Modell in mehreren Schritten geladen wird und die CPU-RAM als Erweiterung verwendet wird. Dies ist besonders nützlich für Nutzer, die eine hohe Kontextlänge und bessere Tool-Calling-Fähigkeiten benötigen.
Konsequenz für OpenCode-Nutzer:
Mit diesen Patches können OpenCode-Nutzer größere Modelle auf ihren lokalen Systemen betreiben, was zu einer höheren Kontextlänge und besseren Tool-Calling-Fähigkeiten führen kann. Es ist jedoch wichtig, die Patches zu testen und die Konfigurationen des Autors zu replizieren, um die beste Performance zu erzielen.
Handlungsempfehlung:
Die Patches sollten getestet und in das lokale Setup integriert werden. Es ist ratsam, die Benchmarks und die Konfigurationen des Autors zu replizieren, um die Performance zu evaluieren.
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
– Multi-GPU-Konfiguration: TP=2
Running MiniMax H3 (FL2VA) on 4x L40S with SGLang: dynamic FP8, ~2x speedup vs 2-GPU BF16, 14GB/card (7/10) — OpenCode-Fit: BEDINGT
Worum geht es konkret?
Die Diskussion beschreibt, wie man MiniMax H3 (FL2VA) auf 4x L40S GPUs mit SGLang und dynamischer FP8-Quantisierung betreiben kann. Dies führt zu einer VRAM-Einsparung von ~1/4 und einer Geschwindigkeitssteigerung von ~2x im Vergleich zu 2-GPU BF16.
Was heisst das für ein autarkes Home-Setup (4x 3090 / 2x 5090 / Mac Studio)?
Diese Methode kann auch auf Consumer-GPUs wie 4x 3090 oder 2x 5090 angewendet werden, um die VRAM-Belastung zu reduzieren und die Geschwindigkeit zu steigern. Die dynamische FP8-Quantisierung ist besonders nützlich, um größere Modelle auf Systemen mit begrenztem VRAM zu betreiben.
Konsequenz für OpenCode-Nutzer:
Mit dieser Methode können OpenCode-Nutzer die VRAM-Belastung reduzieren und die Geschwindigkeit steigern, was zu einer besseren Tool-Calling und einer höheren Kontextlänge führen kann. Es ist jedoch wichtig, die Konfigurationen des Autors zu replizieren und die Performance zu evaluieren.
Handlungsempfehlung:
Die Konfiguration des Autors sollte getestet werden, um die Kompatibilität mit dem eigenen Setup zu überprüfen. Es ist ratsam, die Benchmarks und die Konfigurationen des Autors zu replizieren, um die Performance zu evaluieren.
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
– Multi-GPU-Konfiguration: TP=4
Customize prefix caching (6/10) — OpenCode-Fit: BEDINGT
Worum geht es konkret?
Der Autor fragt, ob es möglich ist, eine benutzerdefinierte Implementierung für Prefix-Caching zu verwenden, wenn das Modell in der Form von Input-Embeddings anstelle von Token-IDs akzeptiert wird. Derzeit unterstützt SGLang nur Prefix-Caching für Integer-Tokens.
Was heisst das für ein autarkes Home-Setup (4x 3090 / 2x 5090 / Mac Studio)?
Prefix-Caching ist besonders relevant für Agent-Workloads, da es die Performance durch Wiederverwendung von vorherigen Berechnungen verbessert. Die Möglichkeit, benutzerdefinierte Implementierungen zu verwenden, könnte die Flexibilität und Anpassungsfähigkeit des Systems erhöhen, insbesondere für spezielle Anwendungen.
Konsequenz für OpenCode-Nutzer:
Mit einer benutzerdefinierten Prefix-Caching-Implementierung können OpenCode-Nutzer die Performance von Agent-Workloads verbessern, indem sie spezifische Anforderungen berücksichtigen. Dies könnte zu schnelleren Prompt-Processings und besseren Tool-Calling-Fähigkeiten führen.
Handlungsempfehlung:
Es ist ratsam, die Diskussion zu verfolgen und auf mögliche Updates oder Patches zu warten, die diese Funktionalität hinzufügen. Bis dahin kann man die Standard-Implementierung von SGLang verwenden und gegebenenfalls eigene Lösungen entwickeln.
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? (5/10) — OpenCode-Fit: BEDINGT
Worum geht es konkret?
Der Autor untersucht, warum die PDMux Prefill- und Decode-Kernels bei der Verwendung von SGLang auf einer 3080Ti GPU keine zeitliche Überlappung zeigen. Er hat die Performance mit und ohne PDMux verglichen und festgestellt, dass die Total Time to First Token (TTFT) bei aktiviertem PDMux signifikant steigt.
Was heisst das für ein autarkes Home-Setup (4x 3090 / 2x 5090 / Mac Studio)?
Diese Diskussion ist relevant, um die Performance-Optimierung von SGLang auf Consumer-GPUs zu verstehen. Die fehlende Überlappung der Kernels kann die Latenz erhöhen, was für Agent-Workloads negativ sein kann. Es ist wichtig, die Konfigurationen und Einstellungen zu optimieren, um die beste Performance zu erzielen.
Konsequenz für OpenCode-Nutzer:
Die fehlende Überlappung der Kernels kann die Latenz erhöhen, was zu langsameren Prompt-Processings führen kann. Es ist ratsam, die Konfigurationen des Autors zu replizieren und die Performance zu evaluieren, um mögliche Optimierungen zu identifizieren.
Handlungsempfehlung:
Die Konfiguration des Autors sollte getestet werden, um die Performance zu evaluieren. Es ist ratsam, die Benchmarks und die Konfigurationen des Autors zu replizieren, um die Performance zu optimieren.
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 (4/10) — OpenCode-Fit: BEDINGT
Worum geht es konkret?
Der Autor teilt eine Messung, die zeigt, dass die scattered-token KV-Eviction bei der Verwendung von paged allocation keine Seiten freigibt. Dies betrifft insbesondere die Cache-Management-Strategien bei der Verwendung von RadixAttention.
Was heisst das für ein autarkes Home-Setup (4x 3090 / 2x 5090 / Mac Studio)?
Diese Messung ist relevant, um die Effizienz von Cache-Management-Strategien zu verstehen. Die Tatsache, dass scattered-token KV-Eviction keine Seiten freigibt, kann die VRAM-Belastung erhöhen und die Performance negativ beeinflussen. Es ist wichtig, alternative Cache-Strategien zu evaluieren, um die beste Performance zu erzielen.
Konsequenz für OpenCode-Nutzer:
Die ineffiziente KV-Eviction kann die VRAM-Belastung erhöhen und die Performance negativ beeinflussen. Es ist ratsam, alternative Cache-Strategien zu evaluieren und die Konfigurationen des Autors zu replizieren, um die Performance zu optimieren.
Handlungsempfehlung:
Die Messung des Autors sollte verfolgt werden, um auf mögliche Updates oder Patches zu warten, die diese Probleme beheben. Bis dahin kann man alternative Cache-Strategien evaluieren und gegebenenfalls eigene Lösungen entwickeln.
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):
– Show & Tell: Taisure – Open-source AI API gateway for 60+ models (500K free tokens) — ENTERPRISE (für uns irrelevant): Eine API-Gateway-Lösung für 60+ Modelle, die in der Cloud betrieben wird. Nicht relevant für autarke Home-Setups.
– add dingding falied — ENTERPRISE (für uns irrelevant): Ein Link zu DingTalk ist abgelaufen. Nicht relevant für autarke Home-Setups.
– Is origin_input_ids expected to always be array.array in SGLang v0.5.13+? — BEDINGT: Ein Typenkonflikt in SGLang v0.5.13+, der die Integration mit anderen Systemen erschweren kann. Wichtig für Entwickler, die SGLang integrieren.
– Jump Forward Decoding Disabled? — BEDINGT: Eine Frage zur Deaktivierung des Jump Forward Decoding, die die Performance von SGLang beeinflussen kann. Wichtig für Entwickler, die Performance-Optimierungen durchführen.
– A question about Qwen-3-vl-reranker for the difference between sglang inference and transformer inference. — BEDINGT: Eine Frage zur Implementierung des Qwen-3-vl-reranker, die die Score-Genauigkeit beeinflussen kann. Wichtig für Entwickler, die spezifische Modelle verwenden.
– Ling 2.6 lightning/linear attention cache size not exposed in SGLang metrics/logs — BEDINGT: Ein Problem mit der Berichterstattung der Cache-Größe bei Ling 2.6, das die Performance-Monitoring beeinflussen kann. Wichtig für Entwickler, die spezifische Modelle verwenden.