Inférence : panorama des moteurs
Comparaison des moteurs de serving (llama-server, Ollama, LM Studio, vLLM, SGLang, Lemonade) pour un Strix Halo sous Linux, et recommandation initiale prudente : llama-server d'abord, vLLM à évaluer.
L'essentiel
- Le moteur d'inférence est le service qui charge le modèle en mémoire GPU et répond aux requêtes HTTP de l'interface (API compatible OpenAI). Tout le reste de la Box (RAG, interface, permissions) s'appuie dessus.
- Sur la puce cible (gfx1151), llama.cpp est le moteur le mieux documenté : binaires validés par AMD 2, deux backends (ROCm et Vulkan), nombreuses mesures publiées.
- vLLM liste gfx1151 dans sa doc d'installation 10, mais les retours de terrain décrivent des images patchées : support réel à vérifier.
- Ollama, LM Studio et Lemonade sont des surcouches de llama.cpp : plus simples, moins de contrôle.
- Recommandation initiale :
llama-servercomme point de départ (ADR-004), vLLM à évaluer quand le multi-utilisateurs réel sera mesuré (Q-002).
Ce qu'on demande au moteur
Pour la Box, le moteur doit :
- tourner sur gfx1151 sous Linux, avec un backend stable (ROCm ou Vulkan) ;
- exposer une API OpenAI (
/v1/chat/completions,/v1/embeddings) pour Open WebUI ou LibreChat ; - servir plusieurs utilisateurs en même temps par continuous batching, avec une file d'attente prévisible ;
- maîtriser la mémoire du KV cache (quantification, partage) ;
- exposer des métriques pour Prometheus ;
- se déployer en conteneur Docker reproductible ;
- avoir une licence compatible avec une offre commerciale.
Tableau comparatif
| Critère | llama.cpp / llama-server | Ollama | LM Studio | vLLM | SGLang | Lemonade Server |
|---|---|---|---|---|---|---|
| Support gfx1151 | ROCm (HIP) et Vulkan ; binaires ROCm 7.1.1 validés par AMD 2 | gfx1151 listé supporté sous Linux (ROCm), Vulkan en complément 4 | Runtimes llama.cpp Vulkan et ROCm sélectionnables (communauté) | gfx1151 listé, ROCm 7.0.2 minimum 10 ; images patchées en pratique 20 21 | Non listé (MI300X, MI250) 13 ; image communautaire 16 | llama.cpp Vulkan/ROCm, builds nightly gfx1151 19 |
| API OpenAI | oui + /rerank, /embeddings 1 | oui (chat, embeddings, responses) 5 | oui | oui (natif) | oui | oui (port 13305) 18 |
| Batching / parallélisme | -np slots, continuous batching par défaut 1 | OLLAMA_NUM_PARALLEL (défaut 1) 3 | « Max Concurrent Predictions » (défaut 4) 7 | continuous batching natif, PagedAttention | continuous batching, RadixAttention | non documenté (hérite de llama-server) 17 |
| Multi-utilisateurs | file FIFO, pas de priorité documentée | file FIFO (OLLAMA_MAX_QUEUE 512), pas de priorité 3 | hérite de llama.cpp | ordonnanceur mature, métriques de file | ordonnanceur mature | non documenté |
| Mémoire / KV | --cache-type-k/v f16, q8_0, q4_0… ; --kv-unified ; -fa | OLLAMA_KV_CACHE_TYPE q8_0/q4_0, OLLAMA_FLASH_ATTENTION 3 | hérite de llama.cpp | PagedAttention, KV FP8 selon matériel | RadixAttention (préfixes partagés) | hérite de llama.cpp |
| Monitoring | --metrics Prometheus llamacpp:*, /slots, /health | non trouvé | non trouvé | /metrics Prometheus vllm:* (TTFT, file, KV) 11 | Prometheus | non trouvé |
| Licence | MIT | MIT 6 | propriétaire, gratuit au travail depuis juillet 2025 9 | Apache-2.0 12 | Apache-2.0 15 | Apache 2.0 17 |
| Docker | ghcr.io/ggml-org/llama.cpp:server-rocm / server-vulkan | ollama/ollama (variante ROCm non vérifiée) | daemon llmster + systemd 8 | vllm/vllm-openai-rocm (rocm/vllm déprécié) | lmsysorg/sglang:*-rocm* | .deb/.rpm/Snap/Docker |
| Maturité sur Strix Halo | élevée (mesures nombreuses depuis 2025) | moyenne | moyenne | faible à moyenne (images communautaires, un benchmark) | faible (issue fermée sans réponse 14) | moyenne (portée par AMD) |
ik_llama.cpp et MLC-LLM : aucune source spécifique à Strix Halo trouvée ; non évalués.
Lecture du tableau
llama-server coche toutes les cases fonctionnelles, avec deux réserves : l'absence de priorité dans la file d'attente et une observabilité plus pauvre que vLLM (pas de métrique TTFT native). C'est aussi le seul moteur pour lequel on dispose de mesures multi-slots sur cette puce (voir Multi-utilisateurs). Détail : llama.cpp / llama-server.
vLLM apporte un ordonnanceur et des métriques conçus pour le multi-utilisateurs. Sur Strix Halo, la seule comparaison trouvée (Soothill, août 2026) montre vLLM devant llama.cpp en montée en charge sur un petit modèle (311,6 t/s contre 207,1 à 8 clients) et un meilleur TTFT sur un 122B (1,06 s contre 1,78 s), mais avec des quantifications différentes 22. Coût : images non officielles, mémoire moins souple, complexité. Détail : vLLM et SGLang.
Ollama, LM Studio, Lemonade conviennent au poste individuel ou au POC rapide. Pour la Box, ils ajoutent une couche sans ajouter de contrôle. Détail : Ollama, LM Studio, Lemonade.
Recommandation initiale
Prérequis système communs, quel que soit le moteur : noyau et version ROCm compatibles gfx1151, réservation VRAM BIOS minimale et limite GTT augmentée 23 (voir Linux / ROCm).
Questions ouvertes
- Q-002Quel runtime d'inférence est le plus performant sur AMD Strix Halo ?HauteEn cours
- Q-008Vulkan (RADV) ou ROCm (HIP) pour llama.cpp sur Strix Halo ?HauteOuverte
Ce qu'il reste à tester
Sources
- 1llama.cpp — README de llama-server (tools/server)GitHubFiabilité hauteggml-org · publié 2026 (master) · consulté le 16 sept. 2026 · fiche source
- 2AMD — binaires llama.cpp validés pour ROCm 7.1.1 (Radeon/Ryzen)Documentation officielleFiabilité hauteAMD · publié 2025–2026 · consulté le 16 sept. 2026 · fiche source
- 3Ollama — FAQ officielleDocumentation officielleFiabilité hauteOllama · publié 2026 · consulté le 16 sept. 2026 · fiche source
- 4Ollama — support matériel GPUDocumentation officielleFiabilité hauteOllama · publié 2026 · consulté le 16 sept. 2026 · fiche source
- 5Ollama — compatibilité API OpenAIDocumentation officielleFiabilité hauteOllama · publié 2026 · consulté le 16 sept. 2026 · fiche source
- 6ollama/ollama — dépôt GitHub (licence MIT)GitHubFiabilité hauteOllama · publié 2026 · consulté le 16 sept. 2026 · fiche source
- 7LM Studio — Parallel RequestsDocumentation officielleFiabilité hauteLM Studio · publié 2026 · consulté le 16 sept. 2026 · fiche source
- 8LM Studio — mode headless (llmster)Documentation officielleFiabilité hauteLM Studio · publié 2026 · consulté le 16 sept. 2026 · fiche source
- 9LM Studio is free for use at workConstructeur / éditeurFiabilité hauteLM Studio · publié 2025-07-08 · consulté le 16 sept. 2026 · fiche source
- 10vLLM — installation GPU AMD ROCmDocumentation officielleFiabilité hautevLLM · publié 2026 · consulté le 16 sept. 2026 · fiche source
- 11vLLM — conception des métriques PrometheusDocumentation officielleFiabilité hautevLLM · publié 2026 · consulté le 16 sept. 2026 · fiche source
- 12vllm-project/vllm — dépôt GitHub (Apache-2.0)GitHubFiabilité hautevLLM · publié 2026 · consulté le 16 sept. 2026 · fiche source
- 13SGLang — plateforme AMD GPUDocumentation officielleFiabilité hauteSGLang · publié 2026 · consulté le 16 sept. 2026 · fiche source
- 14SGLang — issue #5131 support Strix/Strix Halo (gfx1150/gfx1151)GitHubFiabilité moyenneSGLang · publié 2025-04-07 · consulté le 16 sept. 2026 · fiche source
- 15sgl-project/sglang — dépôt GitHub (Apache-2.0)GitHubFiabilité hauteSGLang · publié 2026 · consulté le 16 sept. 2026 · fiche source
- 16strix-halo-sglang — image Docker SGLang pour gfx1151GitHubFiabilité faibleGitHub (communauté) · JeremiahM37 · publié 2026 · consulté le 16 sept. 2026 · fiche source
- 17Lemonade Server — FAQDocumentation officielleFiabilité hauteLemonade SDK / AMD · publié 2026 · consulté le 16 sept. 2026 · fiche source
- 18lemonade-sdk/lemonade — dépôt GitHubGitHubFiabilité hauteLemonade SDK / AMD · publié 2026 · consulté le 16 sept. 2026 · fiche source
- 19Lemonade Server — options du backend llama.cppDocumentation officielleFiabilité hauteLemonade SDK / AMD · publié 2026 · consulté le 16 sept. 2026 · fiche source
- 20Running vLLM on Strix Halo (epheo)BlogFiabilité faibleblog.epheo.eu · epheo · publié 2026-02-15 · consulté le 16 sept. 2026 · fiche source
- 21amd-strix-halo-vllm-toolboxes (kyuz0)GitHubFiabilité moyenneGitHub (communauté) · kyuz0 · publié 2026 · consulté le 16 sept. 2026 · fiche source
- 22Soothill — SGLang vs vLLM vs llama.cpp on Strix HaloBenchmarkFiabilité hautesoothill.io · Darren Soothill · publié 2026-08-10 · consulté le 16 sept. 2026 · fiche source
- 23AMD Strix Halo / RDNA3.5 system optimization (ROCm 10.0)Documentation officielleFiabilité hauteAMD · publié 2026 · consulté le 16 sept. 2026 · fiche source