Nvidia
Ollama unterstützt Nvidia-GPUs mit einer Compute Capability von 5.0 oder höher und Treiberversion 550 oder neuer. Nvidia-GPUs mit einer Compute Capability von 5.0 bis 6.2 erfordern Treiberversion 570 oder neuer.
Prüfen Sie Ihre Kompatibilität der Rechenleistung, um zu sehen, ob Ihre Karte unterstützt wird: https://developer.nvidia.com/cuda-gpus
| Compute Capability | Familie | Karten |
|---|---|---|
| 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 |
Um lokal Builds für die Unterstützung älterer GPUs zu erstellen, siehe Entwickler
GPU-Auswahl
Wenn Sie mehrere NVIDIA-GPUs in Ihrem System haben und Ollama auf die Nutzung einer Teilmenge beschränken möchten, können Sie CUDA_VISIBLE_DEVICES auf eine durch Kommas getrennte Liste von GPUs setzen. Numerische IDs können verwendet werden, die Reihenfolge kann jedoch variieren, daher sind UUIDs zuverlässiger. Sie können die UUID Ihrer GPUs ermitteln, indem Sie nvidia-smi -L ausführen. Wenn Sie die GPUs ignorieren und die CPU-Nutzung erzwingen möchten, verwenden Sie eine ungültige GPU-ID (z. B. „-1“)
Linux Suspend/Resume
Unter Linux kann es nach einem Suspend/Resume-Zyklus vorkommen, dass Ollama Ihre NVIDIA-GPU nicht erkennt und auf die Ausführung auf der CPU zurückfällt. Sie können diesen Treiberfehler umgehen, indem Sie den NVIDIA-UVM-Treiber mit sudo rmmod nvidia_uvm && sudo modprobe nvidia_uvm neu laden.
AMD Radeon
Ollama unterstützt die folgenden AMD-GPUs über die ROCm-Bibliothek:
HINWEIS: Zusätzliche Unterstützung für AMD-GPUs wird von der Vulkan-Bibliothek bereitgestellt – siehe unten.
Linux-Unterstützung
Ollama erfordert unter Linux den AMD ROCm v7-Treiber. Sie können diesen mit dem Dienstprogramm amdgpu-install aus der ROCm-Dokumentation von AMD installieren oder aktualisieren.
| Familie | Karten und Beschleuniger |
|---|---|
| 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-Unterstützung
Ollama erfordert unter Windows einen AMD ROCm v7 / HIP7-fähigen Treiberstack.
| Familie | Karten und Beschleuniger |
|---|---|
| AMD Radeon RX | 7900 XTX 7900 XT 7900 GRE 7800 XT 7700 XT 7600 XT 7600 |
| AMD Radeon PRO | W7900 W7800 W7700 W7600 W7500 |
Überschreibungen unter Linux
Ollama nutzt die AMD ROCm-Bibliothek, die nicht alle AMD-GPUs unterstützt. In einigen Fällen können Sie das System zwingen, ein ähnliches, passendes LLVM-Ziel zu verwenden. Beispielsweise ist die Radeon RX 5400 gfx1034 (auch bekannt als 10.3.4), jedoch unterstützt ROCm dieses Ziel derzeit nicht. Die nächstgelegene Unterstützung ist gfx1030. Sie können die Umgebungsvariable HSA_OVERRIDE_GFX_VERSION mit der Syntax x.y.z verwenden. Um das System also beispielsweise zur Ausführung auf der RX 5400 zu zwingen, setzen Sie die Umgebungsvariable HSA_OVERRIDE_GFX_VERSION="10.3.0" für den Server. Wenn Sie eine nicht unterstützte AMD-GPU haben, können Sie mit der Liste der unterstützten Typen unten experimentieren.
Wenn Sie mehrere GPUs mit unterschiedlichen GFX-Versionen haben, hängen Sie die numerische Gerätenummer an die Umgebungsvariable an, um sie individuell zu setzen. Beispielsweise HSA_OVERRIDE_GFX_VERSION_0=10.3.0 und HSA_OVERRIDE_GFX_VERSION_1=11.0.0
Derzeit sind die folgenden LLVM-Ziele die bekannten, unterstützten GPU-Typen unter Linux. Diese Tabelle zeigt einige Beispiel-GPUs, die diesen LLVM-Zielen zugeordnet sind:
| LLVM-Ziel | Beispiel-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 |
Wenden Sie sich für weitere Unterstützung an Discord oder erstellen Sie ein Issue.
GPU-Auswahl
Wenn Sie mehrere AMD-GPUs in Ihrem System haben und Ollama auf die Nutzung einer Teilmenge beschränken möchten, können Sie ROCR_VISIBLE_DEVICES auf eine durch Kommas getrennte Liste von GPUs setzen. Sie können die Liste der Geräte mit rocminfo anzeigen. Wenn Sie die GPUs ignorieren und die CPU-Nutzung erzwingen möchten, verwenden Sie eine ungültige GPU-ID (z. B. „-1“). Verwenden Sie nach Möglichkeit die Uuid, um das Gerät eindeutig zu identifizieren, anstelle des numerischen Werts.
Container-Berechtigung
Bei einigen Linux-Distributionen kann SELinux Container am Zugriff auf AMD-GPU-Geräte hindern. Auf dem Host-System können Sie sudo setsebool container_use_devices=1 ausführen, um Containern die Nutzung von Geräten zu erlauben.
Metal (Apple GPUs)
Ollama unterstützt GPU-Beschleunigung auf Apple-Geräten über die Metal-API.
Vulkan-GPU-Unterstützung
Zusätzliche GPU-Unterstützung unter Windows und Linux wird über Vulkan bereitgestellt. Vulkan ist standardmäßig aktiviert, wenn das Backend installiert ist. Unter Windows werden die Treiber der meisten GPU-Hersteller mit Vulkan-Unterstützung ausgeliefert und erfordern keine zusätzlichen Einrichtungsschritte. Die meisten Linux-Distributionen erfordern die Installation zusätzlicher Komponenten, und Sie haben möglicherweise mehrere Optionen für Vulkan-Treiber zwischen Mesa und herstellerspezifischen Paketen
- Anweisungen für Intel-GPUs unter Linux – https://dgpu-docs.intel.com/driver/client/overview.html
- Anweisungen für AMD-GPUs unter Linux – https://amdgpu-install.readthedocs.io/en/latest/install-script.html#specifying-a-vulkan-implementation
Für AMD-GPUs müssen Sie bei einigen Linux-Distributionen den Benutzer ollama zur Gruppe render hinzufügen.
Der Ollama-Planer nutzt die von den GPU-Bibliotheken gemeldeten verfügbaren VRAM-Daten, um optimale Planungsentscheidungen zu treffen. Vulkan erfordert zusätzliche Berechtigungen oder die Ausführung als Root, um diese verfügbaren VRAM-Daten offenzulegen. Wenn weder Root-Zugriff noch diese Berechtigung gewährt werden, verwendet Ollama ungefähre Modellgrößen, um bestmögliche Planungsentscheidungen zu treffen.
bash
sudo setcap cap_perfmon+ep /usr/local/bin/ollamaGPU-Auswahl
Um bestimmte Vulkan-GPU(s) auszuwählen, können Sie die Umgebungsvariable GGML_VK_VISIBLE_DEVICES auf dem Ollama-Server auf eine oder mehrere numerische IDs setzen, wie in der FAQ beschrieben. Wenn Sie Probleme mit Vulkan-basierten GPUs haben, können Sie alle Vulkan-GPUs deaktivieren, indem Sie OLLAMA_VULKAN=0 oder GGML_VK_VISIBLE_DEVICES=-1 setzen.
Auf gemischten iGPU/dGPU-Systemen, bei denen die Vulkan-iGPU instabil ist, lassen Sie Vulkan aktiviert und setzen Sie GGML_VK_VISIBLE_DEVICES auf den Index der diskreten GPU. Verwenden Sie beispielsweise GGML_VK_VISIBLE_DEVICES=1, wenn Vulkan1 die diskrete GPU ist.