Optimierung von Qwen3.5-9B auf RTX 3070 Mobile mit ik_llama.cpp: Konfigurationsanpassungen und Benchmarks

Hardware- und Software-Einrichtung
Ein Entwickler dokumentierte seine Erfahrungen bei der Optimierung lokaler Inferenz auf einem Laptop mit einer RTX 3070 Mobile GPU (8GB VRAM, effektiv ~7,7GB nutzbar). Das System läuft unter CachyOS (Arch-basiertes Linux 6.19) mit 32GB RAM und einem Intel i7-10750H CPU. Er verwendete ik_llama.cpp (ikawrakows optimierter Fork von llama.cpp) mit dem Qwen3.5-9B Q4_K_M Modell von Jackrong/Qwen3.5-9B-Claude-4.6-Opus-Reasoning-Distilled-v2-GGUF.
Anfängliche Konfigurationsprobleme
Die anfängliche naive Konfiguration umfasste mehrere Probleme:
- MoE-spezifische Flags (
--n-cpu-moe,-ger,-ser) wurden fälschlicherweise auf ein Nicht-MoE-Modell angewendet (n_expert = 0) --mlockschlug aufgrund von Speicherzuweisungslimits stillschweigend fehl (erfordertulimit -l unlimitedoder limits.conf-Eintrag)- Die Batch-Größe
-b 4096verbrauchte übermäßig viel VRAM (2004 MiB Compute-Puffer), fast 2GB auf einer 8GB-Karte
Diese Konfiguration erzielte ~47,8 t/s Generierungsgeschwindigkeit und ~82 t/s Prompt-Auswertung bei ~97% VRAM-Auslastung.
Optimierungsergebnisse
Nach der Behebung der Konfigurationsprobleme und der Anpassung der Batch-Größen auf -b 2048 -ub 512 (Reduzierung des Compute-Puffers auf 501 MiB) testete der Entwickler verschiedene KV-Cache-Konfigurationen:
- Original (q4_0/q4_0, b4096): 47,8 t/s Gen, 82,6 t/s Prompt, ~97% VRAM
- Korrigierte Flags + b2048/ub512, q8_0K/q4_0V: 48,4 t/s Gen, 189,9 t/s Prompt, ~80% VRAM
- q8_0K/q8_0V: 50,0 t/s Gen, 213,0 t/s Prompt, ~84% VRAM
Die Prompt-Auswertungsgeschwindigkeit stieg dramatisch von ~82 auf ~213 t/s, hauptsächlich durch die Reduzierung der Batch-Größe zur Freigabe von GPU-Speicher. Während die Generierungsgeschwindigkeit nur minimale Veränderungen zeigte (~2% Unterschied zwischen q4_0 und q8_0), produzierte die q8_0/q8_0-Konfiguration bei längeren Ausgaben merklich kohärentere und vollständigere Antworten, was den zusätzlichen ~256 MiB VRAM-Verbrauch wert war.
Endgültige Konfiguration
Der optimierte Befehl für die Einzelbenutzer-Lokalserver-Nutzung:
./build/bin/llama-server \
-m ./models/Qwen3.5-9B.Q4_K_M.gguf \
-ngl 999 \
-fa on \
-c 65536 \
-b 2048 \
-ub 512 \
-ctk q8_0 \
-ctv q8_0 \
--threads 6 \
--threads-batch 12Offene Fragen und zukünftige Tests
Der Entwickler identifizierte mehrere Bereiche für weitere Untersuchungen:
- GPU-Leistungslimit-Tuning auf mobilen GPUs (Potenzial zur Reduzierung von TGP mit minimalem Geschwindigkeitsverlust, da Inferenz speicherbandbreitengebunden ist)
- Andere 8GB-kompatible Modelle mit guter Codierungs- oder Reasoning-Leistung
- Vergleich von ik_llama.cpp vs. Hauptlinie llama.cpp (ik-spezifische Optimierungen umfassen fused ops und Graph-Wiederverwendung)
- Tipps für hybride SSM-Architektur (Context-Shift-Warnungen führen zu harten Stopps, wenn der Kontext voll ist, kein Sliding Window)
Die Tests verwendeten einen Prompt, der die Implementierung eines Rust-Sieve-of-Eratosthenes-Programms mit Algorithmuserklärung, Komplexitätsanalyse und Beispielausgabe für N=50 anforderte.
📖 Read the full source: r/LocalLLaMA
👀 Siehe auch

Wie man OpenClaw vollständig lokal mit Ollama ausführt
Ein Reddit-Beitrag beschreibt einen Prozess, um OpenClaw vollständig lokal ohne Cloud-APIs oder Abrechnung pro Token auszuführen, indem Ollama und LLMFit zur Bewertung lokaler Modelle verwendet werden.

So beheben Sie OpenClaw-Antwortzeiten durch Reduzierung von Kontextüberladung
Ein Entwickler löste 10-minütige Antwortzeiten in OpenClaw, indem er die injizierten Workspace-Dateien durch Dateiumstrukturierung und Konfigurationsänderungen von 47.000 Zeichen auf 16.000 Zeichen reduzierte, einschließlich der Einstellung von bootstrapMaxChars auf 8000 und dem Hinzufügen von Komprimierungssicherungen.

Praktischer Claude-Code-Workflow für Entwicklungsteams
Ein Reddit-Nutzer teilt seine interne Präsentation zu Claude Code Best Practices, einschließlich Modellauswahl, strukturierter Arbeitsabläufe und spezifischer Prompt-Techniken zur Verbesserung der Ausgabequalität.

Praktische OpenClaw-Ratschläge: Klein anfangen, häufige Fehler vermeiden
Ein Entwickler teilt Erfahrungen aus dem Aufbau eines persönlichen Gesundheits-Trackers mit OpenClaw und betont einen engen Fokus, deterministische Workflows und die Verwendung eines einzigen LLM. Der Beitrag enthält spezifische Modellbeobachtungen, die ChatGPT und Gemini vergleichen.