Optimisation de Qwen3.5-9B sur RTX 3070 Mobile avec ik_llama.cpp : Réglages de configuration et Benchmarks

Configuration Matérielle et Logicielle
Un développeur a documenté son expérience d'optimisation de l'inférence locale sur un ordinateur portable équipé d'un GPU RTX 3070 Mobile (8 Go de VRAM, effectivement ~7,7 Go utilisables). Le système fonctionne sous CachyOS (Linux 6.19 basé sur Arch) avec 32 Go de RAM et un processeur Intel i7-10750H. Il a utilisé ik_llama.cpp (la version optimisée d'ikawrakow de llama.cpp) avec le modèle Qwen3.5-9B Q4_K_M provenant de Jackrong/Qwen3.5-9B-Claude-4.6-Opus-Reasoning-Distilled-v2-GGUF.
Problèmes de Configuration Initiale
La configuration initiale naïve présentait plusieurs problèmes :
- Les drapeaux spécifiques aux MoE (
--n-cpu-moe,-ger,-ser) étaient incorrectement appliqués à un modèle non-MoE (n_expert = 0) --mlockéchouait silencieusement en raison de limites d'allocation mémoire (nécessiteulimit -l unlimitedou une entrée dans limits.conf)- La taille de lot
-b 4096consommait une quantité excessive de VRAM (tampon de calcul de 2004 Mio), soit près de 2 Go sur une carte de 8 Go
Cette configuration produisait une vitesse de génération d'environ 47,8 t/s et une évaluation de prompt d'environ 82 t/s avec la VRAM à ~97 %.
Résultats de l'Optimisation
Après avoir corrigé les problèmes de configuration et ajusté les tailles de lot à -b 2048 -ub 512 (réduisant le tampon de calcul à 501 Mio), le développeur a testé différentes configurations de cache KV :
- Originale (q4_0/q4_0, b4096) : 47,8 t/s génération, 82,6 t/s prompt, ~97 % VRAM
- Drapeaux corrigés + b2048/ub512, q8_0K/q4_0V : 48,4 t/s génération, 189,9 t/s prompt, ~80 % VRAM
- q8_0K/q8_0V : 50,0 t/s génération, 213,0 t/s prompt, ~84 % VRAM
La vitesse d'évaluation des prompts a augmenté considérablement, passant d'environ 82 à environ 213 t/s, principalement grâce à la réduction de la taille des lots pour libérer de la mémoire GPU. Bien que la vitesse de génération ait montré un changement minimal (différence d'environ 2 % entre q4_0 et q8_0), la configuration q8_0/q8_0 a produit des réponses nettement plus cohérentes et complètes sur les sorties longues, justifiant l'utilisation supplémentaire d'environ 256 Mio de VRAM.
Configuration Finale
La commande optimisée pour une utilisation en serveur local mono-utilisateur :
./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 12Questions Ouvertes et Tests Futurs
Le développeur a identifié plusieurs domaines nécessitant des investigations supplémentaires :
- Réglage de la limite de puissance du GPU sur les GPU mobiles (potentiel pour réduire le TGP avec une perte de vitesse minimale puisque l'inférence est limitée par la bande passante mémoire)
- Autres modèles compatibles 8 Go avec de bonnes performances en codage ou raisonnement
- Comparaison d'ik_llama.cpp par rapport à la version principale de llama.cpp (les optimisations spécifiques à ik incluent des opérations fusionnées et la réutilisation de graphes)
- Conseils pour l'architecture hybride SSM (les avertissements de changement de contexte provoquent des arrêts brusques lorsque le contexte est plein, pas de fenêtre glissante)
Les tests ont utilisé un prompt demandant l'implémentation d'un programme Rust du Crible d'Ératosthène avec explication de l'algorithme, analyse de complexité et exemple de sortie pour N=50.
📖 Lire la source complète : r/LocalLLaMA
👀 See Also

VPS vs Machine Dédiée : Où Exécuter OpenClaw
Aucun

Configuration d'OpenClaw pour une Communication Fluide d'Agent à Agent
Un utilisateur de Reddit partage des paramètres de configuration spécifiques pour OpenClaw qui réduisent les délais d'attente dans la communication entre agents, incluant les paramètres de visibilité des outils, les directives de mémoire et des solutions de contournement pour la limitation ANNOUNCE_SKIP.

Arrêtez de demander quel modèle d'IA utiliser : Acheminez les tâches vers les niveaux Haiku, Sonnet et Opus
Utilisez au moins trois modèles par type de tâche : niveau Haïku pour la lecture/résumé, niveau Sonnet pour écrire du code, et niveau Opus uniquement pour les refontes multi-fichiers et le débogage. La configuration d'un utilisateur achemine 40 % vers des modèles bon marché, 35 % vers des modèles intermédiaires, 25 % vers des modèles de pointe, pour un coût d'environ 30 à 40 $/mois.

Configuration locale de Claude Code avec Qwen3.5 27B via llama.cpp
Un développeur partage sa configuration pour exécuter Claude Code localement en utilisant Qwen3.5 27B avec llama.cpp, incluant les variables d'environnement, les paramètres du serveur et les benchmarks de performance sur sept tâches de codage.