Exploiter la puissance d’un GPU AMD pour l’IA locale demande une configuration précise, surtout pour les cartes RDNA 2 comme la RX 6700. Ce guide vous montre comment installer Ollama avec accélération ROCm, configurer l’extension Cline et résoudre les erreurs de compatibilité.
Pourquoi ROCm et pas CUDA ?
Ollama supporte deux backends GPU principaux :
| Backend | Constructeur | Détection | Notes |
|---|---|---|---|
| CUDA | NVIDIA | Automatique | Plug-and-play sur la majorité des cartes RTX/GTX |
| ROCm | AMD | Manuelle pour RDNA 2 | Nécessite l’installation de la stack ROCm |
CUDA est historiquement mieux supporté par l’écosystème IA. ROCm rattrape son retard depuis les séries RX 6000/7000, mais certaines cartes nécessitent encore un override d’architecture (c’est précisément l’objet de ce guide pour la RX 6700).
GPU AMD supportés par Ollama via ROCm
| Série | Exemples | Identifiant ROCm | Statut |
|---|---|---|---|
| RDNA 2 | RX 6600, 6700, 6800, 6900 | gfx1030/1031/1032 | ✅ (override requis) |
| RDNA 3 | RX 7600, 7700, 7800, 7900 | gfx1100/1101/1102 | ✅ natif |
| RDNA 4 | RX 9070, 9070 XT | gfx1200/1201 | ✅ natif (ROCm 6.4+) |
1. Installation des pilotes AMD (ROCm)
Le socle de l’accélération GPU chez AMD est la stack ROCm (Radeon Open Compute). Elle expose le GPU via les interfaces HIP et HSA qu’Ollama utilise pour l’inférence.
Sur Arch Linux / CachyOS
sudo pacman -S rocm-hip-sdk rocm-opencl-sdk
Sur Ubuntu / Debian
sudo apt update && sudo apt install rocm-hip-sdk
Droits d’accès GPU (toutes distributions)
Par défaut, seul root peut accéder au GPU. Ajoutez votre utilisateur aux groupes nécessaires :
sudo usermod -aG video,render $USER
Redémarrez votre session (ou fermez/rouvrez votre environnement graphique) pour que les changements soient pris en compte.
Sur certaines distributions, une règle udev est nécessaire :
# Vérifier si la règle existe déjà
ls /etc/udev/rules.d/ | grep amdgpu
# Créer la règle si absente
echo 'SUBSYSTEM=="kfd", KERNEL=="kfd", TAG+="uaccess", GROUP="render"' \
| sudo tee /etc/udev/rules.d/70-kfd.rules
sudo udevadm control --reload-rules && sudo udevadm trigger
Validation
Vérifiez que votre GPU est reconnu par ROCm :
rocminfo | grep "gfx10"
La RX 6700 doit apparaître sous l’identifiant gfx1031.
# Vérification complète (liste tous les agents)
rocminfo | grep -A5 "Agent"
2. Installation propre d’Ollama
Pour éviter les conflits de versions entre les paquets système et le moteur d’inférence, nous utilisons le binaire officiel. Ce binaire embarque les bibliothèques CUDA et ROCm nécessaires — pas besoin de les installer séparément pour Ollama lui-même.
Nettoyage préalable (indispensable sur Arch si déjà installé via pacman) :
sudo pacman -Rs ollama
sudo rm -rf /etc/systemd/system/ollama.service.d
Installation via le script officiel :
curl -fsSL https://ollama.com/install.sh | sh
Le script installe Ollama dans /usr/local/bin/ollama et crée un service systemd ollama.service actif et démarré automatiquement.
# Vérifier que le service tourne
systemctl status ollama
# Consulter les logs pour confirmer la détection GPU
journalctl -u ollama -n 50
Dans les logs, cherchez une ligne mentionnant rocm ou hip pour confirmer que le GPU AMD est détecté.
3. Correction de l’erreur GGML_ASSERT (Spécifique RX 6700)
Par défaut, Ollama peut crasher avec l’erreur :
GGML_ASSERT(max_blocks_per_sm > 0) failed
La RX 6700 est identifiée comme gfx1031, une variante non supportée nativement par toutes les bibliothèques ROCm. La correction consiste à lui faire croire qu’elle est une gfx1030 (RX 6800), dont l’architecture est quasi-identique.
1. Éditer le service systemd
sudo systemctl edit ollama.service
Cela ouvre un fichier d’override dans /etc/systemd/system/ollama.service.d/override.conf. Ajoutez le contenu suivant :
[Service]
Environment="HSA_OVERRIDE_GFX_VERSION=10.3.0"
Environment="HIP_VISIBLE_DEVICES=0"
HSA_OVERRIDE_GFX_VERSION=10.3.0: force ROCm à traiter la carte comme unegfx1030HIP_VISIBLE_DEVICES=0: expose uniquement le premier GPU (évite les conflits si vous avez un iGPU)
2. Appliquer et redémarrer
sudo systemctl daemon-reload
sudo systemctl restart ollama
3. Validation du chargement des variables
sudo tr '\0' '\n' < /proc/$(pidof ollama)/environ | grep -E 'HSA|HIP'
La sortie doit afficher les deux variables d’environnement définies.
Autres cartes RDNA 2 concernées
| Carte | gfx natif | Override à utiliser |
|---|---|---|
| RX 6600 | gfx1032 | HSA_OVERRIDE_GFX_VERSION=10.3.0 |
| RX 6700 | gfx1031 | HSA_OVERRIDE_GFX_VERSION=10.3.0 |
| RX 6750 XT | gfx1031 | HSA_OVERRIDE_GFX_VERSION=10.3.0 |
| RX 6800 | gfx1030 | Aucun (natif) |
| RX 6900 XT | gfx1030 | Aucun (natif) |
4. Configuration de Cline pour VS Code
Cline transforme votre éditeur en agent de développement autonome.
- Installez l’extension Cline dans Visual Studio Code.
- Ouvrez le panneau Cline et accédez aux réglages.
- Configurez les champs suivants :
- Provider : Ollama
- Base URL : http://localhost:11434
- Model ID : qwen2.5-coder:7b (téléchargez-le via
ollama pull qwen2.5-coder:7b)
5. Dépannage et Validation
Vérifier l’utilisation du GPU
Lancez un modèle et surveillez l’activité en temps réel :
# Terminal 1 : lancer le modèle
ollama run qwen2.5-coder:7b "Écris un script shell de test"
# Terminal 2 : surveiller la VRAM et l'utilisation GPU
watch -n1 rocm-smi
Pendant l’inférence, la colonne VRAM Used doit afficher une valeur significative (plusieurs Go pour un modèle 7B).
Ollama ignore le GPU (utilise le CPU)
Si rocm-smi ne montre aucune activité pendant l’inférence :
# Vérifier les logs d'Ollama pour voir si ROCm est détecté
journalctl -u ollama --no-pager | grep -i "rocm\|hip\|gpu\|error"
Causes fréquentes :
- Variables d’environnement non chargées → revérifier l’étape 3
- Droits d’accès manquants → revérifier les groupes
videoetrender - Version ROCm incompatible → essayer une version antérieure depuis l’AUR
Tester les performances
# Benchmark rapide : nombre de tokens par seconde
ollama run qwen2.5-coder:7b "Génère 500 mots sur l'histoire de Linux" 2>&1 | tail -5
Ollama affiche à la fin : eval rate: XX.XX tokens/s. Sur une RX 6700 avec override ROCm, attendez 30 à 60 tokens/s pour un modèle 7B Q4.
Droits d’accès GPU
Si les groupes ont déjà été vérifiés à l’étape 1 et que le problème persiste :
# Vérifier les groupes actuels de l'utilisateur (sans redémarrer)
id $USER
# Forcer l'application sans redémarrage (session courante uniquement)
newgrp render
Conclusion
Votre RX 6700 est désormais pleinement exploitée pour le développement assisté par IA. Vous bénéficiez d’une confidentialité totale et d’une latence réduite grâce à l’exécution 100% locale.
Pour aller plus loin
- Confidentialité et performance : L’écosystème des LLM locaux en 2026 : Article général sur l’écosystème des LLM locaux, présentant Ollama, Cline, GLM et OpenCode dans leur écosystème complet. Idéal pour avoir une vue d’ensemble avant de vous plonger dans la configuration matérielle spécifique.
Sources
- Ollama (Site Officiel)
- Documentation AMD ROCm
- GPU Support Matrix — ROCm
- Cline (GitHub)
- Issue GitHub : GGML_ASSERT ROCm