Je fais tourner des LLM en local depuis pas mal de temps, et quand Ollama a sorti son installateur natif pour Windows avec accélération GPU, j’ai voulu sauter le pas pour virer mon installation WSL2 un peu lourde. Sur le papier, Ollama gère nativement le GPU (Nvidia et AMD) directement sous Windows. En pratique… c’est super performant, mais j’ai dû batailler avec pas mal de petits bugs système pour que tout tourne parfaitement.
Du coup, je vous pose ici mon retour d’expérience complet, les prérequis réels et surtout les solutions aux bugs de détection de carte graphique que j’ai dû résoudre.
La théorie : Ce qu’il faut pour démarrer
Pour installer Ollama nativement sous Windows 10 (version 22H2 ou plus récente) ou Windows 11, c’est normalement assez simple. L’installateur standard (OllamaSetup.exe) s’installe dans votre profil utilisateur sans même demander les droits admin. Une fois lancé, il tourne en tâche de fond (on voit la petite icône dans la zone de notification).
Niveau matériel, il faut environ 4 Go d’espace pour l’application, et pas mal de gigas pour stocker les modèles. Pour que le GPU soit détecté automatiquement :
- Nvidia : Il vous faut au moins les pilotes version 551.61 ou supérieure. Pas besoin d’installer manuellement le gros toolkit CUDA, Ollama embarque ce qu’il faut. La compatibilité est énorme : toutes les cartes avec une “Compute Capability” de 5.0 ou plus (pilote 550+). Ça va des GTX 1080 Ti, 1070, et même la vieille série GTX 900 (attention, ces cartes “legacy” ont besoin du pilote 570+ pour s’en sortir), jusqu’aux RTX 20, 30, 40, et même la toute nouvelle série RTX 50 (5090, 5080, 5070, 5060, etc.). Les cartes pro (RTX A6000, Blackwell PRO, H100, A100…) sont aussi supportées.
- AMD : Il faut du matériel compatible AMD ROCm v7 / HIP7 ou un pilote Radeon compatible Vulkan. Sont gérées nativement les RX 7000 (de la 7900 XTX à la 7600) et les RX 6000 (6950 XT, 6800, 6700 XT…), ainsi que les cartes pro Radeon PRO W7900 ou W6800.
- Intel Arc & ARM : Pour l’Intel Arc (A770, A750…), il faut activer la variable d’environnement
OLLAMA_INTEL_GPU=true. Quant aux PC Copilot+ sous puces ARM64 Snapdragon, ils tournent nativement en utilisant l’accélération NPU/GPU sans émulation x86.
Le piège du VRAM et les performances réelles
(Franchement, j’ai failli balancer mon PC par la fenêtre au début en pensant que ma carte était HS).
Le truc qu’il faut absolument comprendre avec Ollama, c’est sa gestion de la VRAM. Si votre modèle dépasse la mémoire de votre carte graphique, Ollama va diviser les calculs (“split”) entre votre VRAM et votre RAM système. C’est génial pour éviter les crashs, mais vos performances s’effondrent.
Voici un petit guide des tailles de modèles selon votre VRAM :
- 8 Go de VRAM (ex : RTX 4060, RX 7600, RTX 5060) : Vous êtes à l’aise sur des modèles de ~7B ou 8B paramètres quantifiés (comme Llama 3).
- 12 à 16 Go de VRAM (ex : RTX 3060 12GB, RTX 4070 Ti Super, RX 7800 XT) : Vous pouvez monter sur du 13B à 20B (comme
gpt-oss:20b). - 24 Go+ de VRAM (ex : RTX 4090, RTX 5090, RX 7900 XTX) : C’est le paradis pour faire tourner du lourd, genre du 34B ou du 70B.
Pour vérifier ce qui tourne réellement sur votre carte, ouvrez un deuxième terminal pendant qu’un modèle répond à une invite et tapez :
ollama ps
Regardez la colonne PROCESSOR. Si elle affiche “100% GPU”, c’est parfait. Si vous voyez un pourcentage partagé (ex: 60% GPU, 40% CPU), c’est que votre modèle est trop gros pour votre VRAM et déborde sur la RAM système.
Les grosses galères : Pourquoi Ollama refuse d’utiliser votre GPU ?
C’est là que ça devient drôle (ou pas). Le plus grand défaut d’Ollama sous Windows, c’est le repli silencieux sur le CPU. Si Ollama rencontre le moindre problème pour accéder à votre carte, il ne va pas planter ni afficher d’erreur claire dans l’invite de commande. Il va juste basculer en douce sur votre processeur. Vous passez alors de 60 jetons/seconde à… 2 jetons/seconde.
Voici comment forcer l’utilisation du GPU et résoudre les bugs courants.
Étape préliminaire obligatoire :
Avant de modifier quoi que ce soit dans Windows, fermez complètement Ollama. Ne vous contentez pas de fermer la console. Allez dans votre barre des tâches en bas à droite, faites un clic droit sur l’icône Ollama et cliquez sur Quit. S’il est encore en cache, ouvrez le Gestionnaire des tâches et tuez tous les processus nommés ollama ou llama.
1. Le problème classique des PC portables (iGPU vs GPU dédié)
Si vous avez un processeur avec partie graphique intégrée (Intel Iris ou AMD Radeon) et une vraie carte Nvidia/AMD dédiée, Ollama s’emmêle souvent les pinceaux et choisit la puce intégrée, ultra lente.
- Via les paramètres Windows : Allez dans Paramètres > Système > Affichage > Graphiques. Cliquez sur “Parcourir” sous les options personnalisées et cherchez le fichier exécutable d’Ollama (généralement dans
C:\Users\<VotreNom>\AppData\Local\Programs\Ollama\ollama app.exe). Une fois ajouté, cliquez sur Options, sélectionnez Performances élevées (High Performance) et sauvegardez. - Via le panneau de configuration NVIDIA : Allez dans Gérer les paramètres 3D > Paramètres des programmes. Ajoutez
ollama.exe, cherchez la ligne “CUDA – Processeurs graphiques” et forcez la sélection sur votre carte dédiée.
2. Isoler votre GPU via les variables d’environnement
Si vous avez plusieurs cartes ou que vous voulez forcer le système à ignorer l’iGPU :
- Faites une recherche Windows pour “Modifier les variables d’environnement système”.
- Sous “Variables utilisateur”, créez une nouvelle variable :
- Pour Nvidia (Multi-GPU ou verrouillage) : Nom :
CUDA_VISIBLE_DEVICES| Valeur :0(0 correspond à votre première carte graphique dédiée). - Pour AMD (ROCm) : Nom :
ROCR_VISIBLE_DEVICES| Valeur :0. - Pour AMD (Vulkan) : Nom :
GGML_VK_VISIBLE_DEVICES| Valeur :0ou1.
- Pour Nvidia (Multi-GPU ou verrouillage) : Nom :
Cas spécifique : Forcer les GPU AMD récalcitrants
Si vous avez une carte Radeon et que vous désespérez de la voir un jour tourner sur Ollama, j’ai deux astuces de sioux qui m’ont sauvé la mise sur la config d’un pote.
Astuce 1 : Le bypass du fichier Vulkan DLL (Le fix miracle)
Il y a un bug connu où le fichier Vulkan d’Ollama ne communique pas correctement avec le pilote AMD sous Windows.
- Fermez Ollama.
- Allez dans
C:\Users\<VotreNom>\AppData\Local\Programs\Ollama\. - Trouvez le fichier
vulkan-1.dllet renommez-le envulkan-1.dll.bak. - Relancez Ollama. En faisant ça, vous forcez le programme à utiliser le pilote système officiel de Windows (situé dans System32), qui lui, détecte parfaitement votre carte AMD.
Astuce 2 : Forcer la version d’architecture GFX (SPOOF)
Si votre carte AMD n’est pas officiellement dans la liste blanche de ROCm (comme les RX 6700 XT ou certaines puces intégrées d’ordinateurs portables comme la 780M), Ollama va la rejeter. Vous pouvez contourner ça en faisant croire à l’application que vous avez une carte compatible.
- Créez une variable d’environnement utilisateur :
- Nom :
HSA_OVERRIDE_GFX_VERSION - Valeur :
11.0.0(si vous avez une RX 7000 ou un iGPU récent série 700M/800M) ou10.3.0(si vous possédez une carte de la série RX 6000).
- Nom :
Comment lire les logs pour trouver les erreurs cachées ?
Si malgré tout ça rame encore, il faut aller chercher les logs détaillés de l’application. Allez dans %LOCALAPPDATA%\Ollama\logs et ouvrez le fichier server.log.
Voici ce qu’il faut chercher :
- “Inference compute id=cpu” ou “Total VRAM=0 B” : Ollama ne voit pas votre carte. C’est un problème de pilote ou un conflit iGPU. Faites une réinstallation propre (“Clean installation”) de vos pilotes Nvidia ou AMD.
- CUDA Error Code 46 (Device Unavailable) : Un autre programme (un jeu lourd, un logiciel de montage ou l’accélération matérielle de Chrome/Discord) s’est approprié toute votre VRAM. Fermez ces applications, tuez les processus Ollama fantômes dans le gestionnaire des tâches, puis relancez.
- CUDA Error Code 3 (Not Initialized) : Problème de variables système. Vérifiez que vos chemins d’accès système (PATH) ne sont pas corrompus.
Pour afficher les logs en temps réel dans votre console, quittez l’application en arrière-plan, ouvrez PowerShell et lancez :
$env:OLLAMA_DEBUG="1"
ollama serve
Vous verrez défiler toutes les lignes d’initialisation en direct. Si vous lisez un truc du genre llm_load_tensors: offloaded X/X layers to GPU, c’est gagné !
Mon verdict sur l’application
Pourquoi utiliser Ollama plutôt qu’un outil avec une interface graphique comme LM Studio ?
Les points forts :
- Pas besoin d’installer de gros packages : Pas de CUDA Toolkit de 3 Go à configurer à la main, tout est packagé proprement.
- La répartition dynamique de la mémoire : Même si vous visez un modèle un poil trop lourd, ça ne plante pas, ça ralentit juste un peu.
- Léger comme une plume : Ça tourne en arrière-plan sans consommer de ressources d’interface graphique inutiles. Pour les développeurs qui veulent juste appeler une API locale dans leur code (VS Code, scripts Python, etc.), c’est imbattable.
Les points faibles :
- Ce fichu repli silencieux sur le CPU : On peut passer des heures à chercher pourquoi un modèle rame sans qu’Ollama ne nous dise clairement que le GPU a été rejeté.
- Fuites de mémoire VRAM : Si vous laissez tourner le service 24h/24 en tâche de fond, il arrive que la mémoire de la carte graphique reste bloquée. Un redémarrage rapide de l’application règle généralement le souci.
Si vous cherchez un outil clé en main avec un beau tableau de bord visuel et un suivi de la consommation VRAM en direct, LM Studio reste peut-être plus confortable pour débuter. Mais si vous voulez un serveur d’API robuste, ultra-rapide et discret, Ollama est un excellent choix une fois qu’on a dompté ses quelques caprices d’installation sur Windows.