Nvidia
Ollama ondersteunt Nvidia-GPU's met een compute-capaciteit van 5.0 of hoger en stuurversie 550 of nieuwer. Nvidia-GPU's met een compute-capaciteit van 5.0 tot en met 6.2 vereisen stuurversie 570 of nieuwer.
Controleer uw compute-compatibiliteit om te zien of uw kaart wordt ondersteund: https://developer.nvidia.com/cuda-gpus
| Compute-capaciteit | Familie | Kaarten |
|---|---|---|
| 12.1 | NVIDIA | GB10 (DGX Spark) |
| 12.0 | GeForce RTX 50xx | RTX 5060 RTX 5060 Ti RTX 5070 RTX 5070 Ti RTX 5080 RTX 5090 |
| NVIDIA Professional | RTX PRO 4000 Blackwell RTX PRO 4500 Blackwell RTX PRO 5000 Blackwell RTX PRO 6000 Blackwell | |
| 9.0 | NVIDIA | H200 H100 |
| 8.9 | GeForce RTX 40xx | RTX 4090 RTX 4080 SUPER RTX 4080 RTX 4070 Ti SUPER RTX 4070 Ti RTX 4070 SUPER RTX 4070 RTX 4060 Ti RTX 4060 |
| NVIDIA Professional | L4 L40 RTX 6000 | |
| 8.6 | GeForce RTX 30xx | RTX 3090 Ti RTX 3090 RTX 3080 Ti RTX 3080 RTX 3070 Ti RTX 3070 RTX 3060 Ti RTX 3060 RTX 3050 Ti RTX 3050 |
| NVIDIA Professional | A40 RTX A6000 RTX A5000 RTX A4000 RTX A3000 RTX A2000 A10 A16 A2 | |
| 8.0 | NVIDIA | A100 A30 |
| 7.5 | GeForce GTX/RTX | GTX 1650 Ti TITAN RTX RTX 2080 Ti RTX 2080 RTX 2070 RTX 2060 |
| NVIDIA Professional | T4 RTX 5000 RTX 4000 RTX 3000 T2000 T1200 T1000 T600 T500 | |
| Quadro | RTX 8000 RTX 6000 RTX 5000 RTX 4000 | |
| 7.0 | NVIDIA | TITAN V V100 Quadro GV100 |
| 6.1 | NVIDIA TITAN | TITAN Xp TITAN X |
| GeForce GTX | GTX 1080 Ti GTX 1080 GTX 1070 Ti GTX 1070 GTX 1060 GTX 1050 Ti GTX 1050 | |
| Quadro | P6000 P5200 P4200 P3200 P5000 P4000 P3000 P2200 P2000 P1000 P620 P600 P500 P520 | |
| Tesla | P40 P4 | |
| 6.0 | NVIDIA | Tesla P100 Quadro GP100 |
| 5.2 | GeForce GTX | GTX TITAN X GTX 980 Ti GTX 980 GTX 970 GTX 960 GTX 950 |
| Quadro | M6000 24GB M6000 M5000 M5500M M4000 M2200 M2000 M620 | |
| Tesla | M60 M40 | |
| 5.0 | GeForce GTX | GTX 750 Ti GTX 750 NVS 810 |
| Quadro | K2200 K1200 K620 M1200 M520 M5000M M4000M M3000M M2000M M1000M K620M M600M M500M |
Voor lokaal bouwen om oudere GPU's te ondersteunen, zie ontwikkelaar
GPU-selectie
Als u meerdere Nvidia-GPU's in uw systeem heeft en Ollama wilt beperken tot een subset, kunt u CUDA_VISIBLE_DEVICES instellen op een door komma's gescheiden lijst van GPU's. Numerieke ID's kunnen worden gebruikt, maar de volgorde kan variëren, dus UUID's zijn betrouwbaarder. U kunt de UUID's van uw GPU's vinden door nvidia-smi -L uit te voeren. Als u de GPU's wilt negeren en CPU-gebruik wilt forceren, gebruikt u een ongeldig GPU-ID (bijv. "-1")
Linux Slaapstand en Hervatten
Op Linux faalt Ollama soms om uw Nvidia-GPU te detecteren na een slaapstand-/hervattingcyclus, en valt het terug op uitvoering op de CPU. U kunt deze stuurprogrammafout omzeilen door het Nvidia UVM-stuurprogramma opnieuw te laden met sudo rmmod nvidia_uvm && sudo modprobe nvidia_uvm
AMD Radeon
Ollama ondersteunt de volgende AMD-GPU's via de ROCm-bibliotheek:
OPMERKING: Extra ondersteuning voor AMD-GPU's wordt geleverd door de Vulkan-bibliotheek – zie hieronder.
Linux-ondersteuning
Ollama vereist het AMD ROCm v7-stuurprogramma op Linux. U kunt dit installeren of upgraden met het hulpprogramma amdgpu-install uit de ROCm-documentatie van AMD.
| Familie | Kaarten en versnellers |
|---|---|
| AMD Radeon RX | 9070 XT 9070 GRE 9070 9060 XT 9060 XT LP 9060 7900 XTX 7900 XT 7900 GRE 7800 XT 7700 XT 7700 7600 XT 7600 6950 XT 6900 XTX 6900XT 6800 XT 6800 |
| AMD Radeon AI PRO | R9700 R9600D |
| AMD Radeon PRO | W7900 W7800 W7700 W7600 W7500 W6900X W6800X Duo W6800X W6800 V620 |
| AMD Ryzen AI | Ryzen AI Max+ 395 Ryzen AI Max 390 Ryzen AI Max 385 Ryzen AI 9 HX 475 Ryzen AI 9 HX 470 Ryzen AI 9 465 Ryzen AI 9 HX 375 Ryzen AI 9 HX 370 Ryzen AI 9 365 |
| AMD Instinct | MI350X MI300X MI300A MI250X MI250 MI210 MI100 |
Windows-ondersteuning
Ollama vereist een AMD ROCm v7 / HIP7-compatibele stuurprogrammastack op Windows.
| Familie | Kaarten en versnellers |
|---|---|
| AMD Radeon RX | 7900 XTX 7900 XT 7900 GRE 7800 XT 7700 XT 7600 XT 7600 |
| AMD Radeon PRO | W7900 W7800 W7700 W7600 W7500 |
Overschrijvingen op Linux
Ollama maakt gebruik van de AMD ROCm-bibliotheek, die niet alle AMD-GPU's ondersteunt. In sommige gevallen kunt u het systeem forceren om een vergelijkbaar, dichtbijzijnd LLVM-doel te proberen gebruiken. bijvoorbeeld is de Radeon RX 5400 gfx1034 (ook bekend als 10.3.4), maar ROCm ondersteunt dit doel momenteel niet. De dichtstbijzijnde ondersteuning is gfx1030. U kunt de omgevingsvariabele HSA_OVERRIDE_GFX_VERSION gebruiken met de x.y.z-syntaxis. Dus bijvoorbeeld, om het systeem te forceren om op de RX 5400 te draaien, stelt u HSA_OVERRIDE_GFX_VERSION="10.3.0" in als omgevingsvariabele voor de server. Als u een niet-ondersteunde AMD-GPU heeft, kunt u experimenteren met de onderstaande lijst met ondersteunde typen.
Als u meerdere GPU's met verschillende GFX-versies heeft, voegt u het numerieke apparaatnummer toe aan de omgevingsvariabele om ze individueel in te stellen. bijvoorbeeld HSA_OVERRIDE_GFX_VERSION_0=10.3.0 en HSA_OVERRIDE_GFX_VERSION_1=11.0.0
Op dit moment zijn de volgende LLVM-doelen de bekende ondersteunde GPU-typen op Linux. Deze tabel toont enkele voorbeeld-GPU's die overeenkomen met deze LLVM-doelen:
| LLVM-doel | Een voorbeeld-GPU |
|---|---|
| gfx908 | Radeon Instinct MI100 |
| gfx90a | Radeon Instinct MI210/MI250 |
| gfx942 | Radeon Instinct MI300X/MI300A |
| gfx950 | Radeon Instinct MI350X |
| gfx1030 | Radeon PRO V620 |
| gfx1100 | Radeon PRO W7900 |
| gfx1101 | Radeon PRO W7700 |
| gfx1102 | Radeon RX 7600 |
| gfx1150 | Ryzen AI 9 HX 375 |
| gfx1151 | Ryzen AI Max+ 395 |
| gfx1200 | Radeon RX 9070 |
| gfx1201 | Radeon RX 9070 XT |
Neem contact op via Discord of dien een issue in voor extra hulp.
GPU-selectie
Als u meerdere AMD-GPU's in uw systeem heeft en Ollama wilt beperken tot een subset, kunt u ROCR_VISIBLE_DEVICES instellen op een door komma's gescheiden lijst van GPU's. U kunt de lijst met apparaten bekijken met rocminfo. Als u de GPU's wilt negeren en CPU-gebruik wilt forceren, gebruikt u een ongeldig GPU-ID (bijv. "-1"). Gebruik indien beschikbaar de Uuid om het apparaat uniek te identificeren in plaats van een numerieke waarde.
Containermachtigingen
Op sommige Linux-distributies kan SELinux containers voorkomen om toegang te krijgen tot de AMD-GPU-apparaten. Op het hostsysteem kunt u sudo setsebool container_use_devices=1 uitvoeren om containers toe te staan apparaten te gebruiken.
Metal (Apple-GPU's)
Ollama ondersteunt GPU-versnelling op Apple-apparaten via de Metal-API.
Vulkan GPU-ondersteuning
Extra GPU-ondersteuning op Windows en Linux wordt geleverd via Vulkan. Vulkan is standaard ingeschakeld wanneer de backend is geïnstalleerd. Op Windows worden de stuurprogramma's van de meeste GPU-leveranciers geleverd met ingebouwde Vulkan-ondersteuning en vereisen geen extra installatiestappen. Voor de meeste Linux-distributies moet u extra componenten installeren, en u hebt mogelijk verschillende opties voor Vulkan-stuurprogramma's tussen Mesa en GPU-leverancierspecifieke pakketten
- Instructies voor Intel-GPU's op Linux - https://dgpu-docs.intel.com/driver/client/overview.html
- Instructies voor AMD-GPU's op Linux - https://amdgpu-install.readthedocs.io/en/latest/install-script.html#specifying-a-vulkan-implementation
Voor AMD-GPU's op sommige Linux-distributies moet u mogelijk de gebruiker ollama toevoegen aan de groep render.
De Ollama-scheduler maakt gebruik van beschikbare VRAM-gegevens die door de GPU-bibliotheken worden gerapporteerd om optimale planningsbeslissingen te nemen. Vulkan vereist extra machtigingen of uitvoering als root om deze beschikbare VRAM-gegevens bloot te leggen. Als noch root-toegang noch deze machtiging wordt verleend, gebruikt Ollama geschatte modelgroottes om de best mogelijke planningsbeslissingen te nemen.
bash
sudo setcap cap_perfmon+ep /usr/local/bin/ollamaGPU-selectie
Om specifieke Vulkan-GPU's te selecteren, kunt u de omgevingsvariabele GGML_VK_VISIBLE_DEVICES instellen op een of meer numerieke ID's op de Ollama-server, zoals beschreven in de FAQ. Als u problemen ondervindt met Vulkan-GPU's, kunt u alle Vulkan-GPU's uitschakelen door OLLAMA_VULKAN=0 of GGML_VK_VISIBLE_DEVICES=-1 in te stellen.
Op gemengde iGPU/dGPU-systemen waarbij de Vulkan iGPU instabiel is, houdt u Vulkan ingeschakeld en stelt u GGML_VK_VISIBLE_DEVICES in op de index van de discrete GPU. Gebruik bijvoorbeeld GGML_VK_VISIBLE_DEVICES=1 wanneer Vulkan1 de discrete GPU is.