Avancé 15 minllama.cpp

Compiler llama.cpp avec CUDA

Ollama et LM Studio encapsulent llama.cpp — mais en restent souvent 1 ou 2 versions en retard, avec des flags conservateurs. Compiler llama.cpp soi-même, c'est récupérer 20 à 40 % de vitesse sur un RTX récent et avoir accès aux features qui viennent juste de sortir. Ce guide couvre Windows, Linux et le build CUDA.

Par Mohamed Meguedmi·Màj 2026-03-05·Testé sur Windows, macOS, Linux

#Pourquoi compiler soi-même

Features en avant-première
Nouvelles quantizations (IQ4_NL, Q2_K_S), nouveaux modèles (Mamba, DeepSeek), flags expérimentaux.
Perfs optimales
Build optimisé pour votre CPU spécifique (AVX-512, AMX) et votre génération CUDA (sm_89 pour RTX 40, sm_90 pour RTX 50).
Outils bas niveau
llama-bench pour benchmarker, llama-cli pour scripter, llama-server pour un endpoint nu (sans UI ni dépendances).
i
Qui devrait compiler ?
Si vous êtes dev, curieux de perfs, ou si vous travaillez sur du Mamba/Jamba non pris en charge par Ollama : oui. Sinon, Ollama fait 95 % du boulot sans compilation.

#Prérequis

CUDA Toolkit 12.x
Téléchargeable sur developer.nvidia.com. Pas confondre avec les drivers — le Toolkit inclut nvcc, le compilateur.
CMake 3.21+
apt install cmake sur Linux, via chocolatey sur Windows.
Compilateur C++
gcc 11+ sur Linux, MSVC 2022 Build Tools sur Windows.
Git
Pour cloner et mettre à jour.

#1. Cloner le repo

Terminal
git clone https://github.com/ggerganov/llama.cpp.git
cd llama.cpp

#2. Build avec CUDA

Linux / macOS
cmake -B build -DGGML_CUDA=ON -DCMAKE_BUILD_TYPE=Release
cmake --build build --config Release -j $(nproc)
Windows (PowerShell)
cmake -B build -DGGML_CUDA=ON -DCMAKE_BUILD_TYPE=Release
cmake --build build --config Release -j

La compilation prend 3 à 10 minutes selon votre CPU. Les binaires atterrissent dans build/bin/ (Linux) ou build/bin/Release/ (Windows).

Build optimisé pour votre GPU
Ajoutez -DCMAKE_CUDA_ARCHITECTURES=89 pour cibler uniquement RTX 40 (ou 90 pour RTX 50). Le binaire est plus petit et le build plus rapide.

#3. Tester

Téléchargement d'un GGUF
# Via Hugging Face CLI
pip install huggingface_hub
huggingface-cli download \
  TheBloke/Mistral-7B-Instruct-v0.2-GGUF \
  mistral-7b-instruct-v0.2.Q4_K_M.gguf \
  --local-dir ./models
Inférence
./build/bin/llama-cli \
  -m ./models/mistral-7b-instruct-v0.2.Q4_K_M.gguf \
  -p "Explique ce qu'est un LLM en 3 phrases." \
  -n 256 \
  -ngl 99  # nombre de couches sur GPU
Serveur HTTP compatible OpenAI
./build/bin/llama-server \
  -m ./models/mistral-7b-instruct-v0.2.Q4_K_M.gguf \
  --port 8080 \
  -ngl 99 \
  -c 8192

#4. Flags d'optimisation

-ngl N
Nombre de couches chargées sur GPU. Mettez 99 (ou plus) pour tout mettre si la VRAM suit.
-fa
Flash Attention. +20-30 % de vitesse, VRAM contexte réduite. Activez toujours si votre GPU est Ampere+ (RTX 30xx et +).
-c N
Context length. Ne mettez pas plus que nécessaire : le KV cache mange la VRAM.
-b N / -ub N
Batch size et micro-batch. 512/512 par défaut. 1024/512 pour accélérer le prompt processing.
--no-mmap
Désactive le mmap. À tester si le chargement initial est lent sur certains SSD.

#5. Se tenir à jour

Update
cd llama.cpp
git pull
cmake --build build --config Release -j

llama.cpp sort plusieurs commits par jour. Un git pull hebdomadaire est un bon rythme. En cas de régression, utilisez git checkout sur un tag précis (ex : b4400).

#Dépannage

nvcc not found
Le CUDA Toolkit n'est pas dans le PATH. Sur Linux : export PATH=/usr/local/cuda/bin:$PATH.
Mismatch de version CUDA
Drivers NVIDIA plus vieux que le Toolkit. Mettez à jour les drivers (version supérieure ou égale requise pour chaque Toolkit).
Link error avec cuBLAS
Mauvais LD_LIBRARY_PATH. Ajoutez /usr/local/cuda/lib64.
Build échoue sur MSVC
Ouvrez un 'x64 Native Tools Command Prompt for VS 2022', pas PowerShell. Certains outils cmake ne trouvent pas cl.exe sinon.
Ce guide vous a aidé ?

Un retour, une erreur, une précision ? Faites-nous signe, ça améliore le guide pour tout le monde.