Nvidia
Ollama підтримує графічні процесори Nvidia з обчислювальною потужністю 5.0 та вище та версією драйвера 550 та новішою. Графічні процесори Nvidia з обчислювальною потужністю від 5.0 до 6.2 вимагають версії драйвера 570 або новішої.
Перевірте сумісність за обчислювальною потужністю, щоб дізнатися, чи підтримується ваша карта: https://developer.nvidia.com/cuda-gpus
| Обчислювальна потужність | Сімейство | Карти |
|---|---|---|
| 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 |
Щоб зібрати локально для підтримки старих графічних процесорів, див. для розробників
Вибір графічного процесора
Якщо у вашій системі є кілька графічних процесорів NVIDIA і ви хочете обмежити Ollama використовувати лише частину з них, ви можете встановити змінну CUDA_VISIBLE_DEVICES у список графічних процесорів, розділений комами. Можна використовувати числові ідентифікатори, проте порядок може відрізнятися, тому UUID є більш надійним. Ви можете дізнатися UUID ваших графічних процесорів, виконавши команду nvidia-smi -L. Якщо ви хочете ігнорувати графічні процесори та примусити використовувати процесор, використовуйте недійсний ідентифікатор графічного процесора (наприклад, "-1")
Відновлення після призупинення в Linux
У Linux після циклу призупинення/відновлення іноді Ollama не може виявити ваш графічний процесор NVIDIA і переходить на роботу на процесорі. Ви можете обійти цю помилку драйвера, перезавантаживши драйвер NVIDIA UVM за допомогою команди sudo rmmod nvidia_uvm && sudo modprobe nvidia_uvm
AMD Radeon
Ollama підтримує наступні графічні процесори AMD через бібліотеку ROCm:
ПРИМІТКА: Додаткова підтримка графічних процесорів AMD забезпечується бібліотекою Vulkan — див. нижче.
Підтримка в Linux
Ollama вимагає драйвер AMD ROCm версії 7 у Linux. Ви можете встановити або оновити його за допомогою утиліти amdgpu-install з документації AMD ROCm.
| Сімейство | Карти та акселератори |
|---|---|
| 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
Ollama вимагає стек драйверів AMD ROCm v7, сумісних з HIP7, у Windows.
| Сімейство | Карти та акселератори |
|---|---|
| AMD Radeon RX | 7900 XTX 7900 XT 7900 GRE 7800 XT 7700 XT 7600 XT 7600 |
| AMD Radeon PRO | W7900 W7800 W7700 W7600 W7500 |
Перевизначення в Linux
Ollama використовує бібліотеку AMD ROCm, яка не підтримує всі графічні процесори AMD. У деяких випадках ви можете примусити систему спробувати використовувати подібну ціль LLVM, яка є найближчою. Наприклад, Radeon RX 5400 має ціль gfx1034 (також відому як 10.3.4), проте на даний момент ROCm не підтримує цю ціль. Найближча підтримка реалізована для gfx1030. Ви можете використовувати змінну середовища HSA_OVERRIDE_GFX_VERSION із синтаксисом x.y.z. Наприклад, щоб примусити систему запускатися на RX 5400, вам потрібно встановити змінну середовища HSA_OVERRIDE_GFX_VERSION="10.3.0" для сервера. Якщо у вас є непідтримуваний графічний процесор AMD, ви можете експериментувати, використовуючи список підтримуваних типів нижче.
Якщо у вас є кілька графічних процесорів з різними версіями GFX, додайте числовий номер пристрою до назви змінної середовища, щоб налаштувати їх окремо. Наприклад, HSA_OVERRIDE_GFX_VERSION_0=10.3.0 та HSA_OVERRIDE_GFX_VERSION_1=11.0.0
На даний момент відомі підтримувані типи графічних процесорів у Linux — це наступні цілі LLVM. У цій таблиці наведено приклади графічних процесорів, що відповідають цим цілям LLVM:
| Ціль LLVM | Приклад графічного процесора |
|---|---|
| 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 |
Зверніться за додатковою допомогою на Discord або повідомте про проблему.
Вибір графічного процесора
Якщо у вашій системі є кілька графічних процесорів AMD і ви хочете обмежити Ollama використовувати лише частину з них, ви можете встановити змінну ROCR_VISIBLE_DEVICES у список графічних процесорів, розділений комами. Ви можете переглянути список пристроїв за допомогою команди rocminfo. Якщо ви хочете ігнорувати графічні процесори та примусити використовувати процесор, використовуйте недійсний ідентифікатор графічного процесора (наприклад, "-1"). Якщо це можливо, використовуйте Uuid для унікальної ідентифікації пристрою замість числового значення.
Дозвіл для контейнерів
У деяких дистрибутивах Linux SELinux може забороняти контейнерам доступ до пристроїв графічного процесора AMD. На головній системі ви можете виконати команду sudo setsebool container_use_devices=1, щоб дозволити контейнерам використовувати ці пристрої.
Metal (графічні процесори Apple)
Ollama підтримує GPU-прискорення на пристроях Apple через API Metal.
Підтримка графічних процесорів через Vulkan
Додаткова підтримка графічних процесорів у Windows та Linux забезпечується через Vulkan. Vulkan увімкнено за замовчуванням, коли встановлено відповідний бекенд. У Windows більшість драйверів виробників графічних процесорів встановлюються разом з підтримкою Vulkan і не вимагають додаткових кроків налаштування. У більшості дистрибутивів Linux потрібно встановити додаткові компоненти, і ви можете мати кілька варіантів драйверів Vulkan: між Mesa та пакетами, специфічними для виробника графічного процесора
- Інструкції для графічних процесорів Intel у Linux — https://dgpu-docs.intel.com/driver/client/overview.html
- Інструкції для графічних процесорів AMD у Linux — https://amdgpu-install.readthedocs.io/en/latest/install-script.html#specifying-a-vulkan-implementation
Для графічних процесорів AMD у деяких дистрибутивах Linux вам може знадобитися додати користувача ollama до групи render.
Планувальник Ollama використовує дані про доступний VRAM, які надають бібліотеки графічних процесорів, для прийняття оптимальних рішень з планування. Vulkan вимагає додаткових прав або запуску від імені root, щоб отримати доступ до цих даних про доступний VRAM. Якщо не надано ні доступ від імені root, ні ці права, Ollama використовуватиме приблизні розміри моделей для прийняття найкращих можливих рішень з планування.
bash
sudo setcap cap_perfmon+ep /usr/local/bin/ollamaВибір графічного процесора
Щоб вибрати конкретні графічні процесори Vulkan, ви можете встановити змінну середовища GGML_VK_VISIBLE_DEVICES у один або кілька числових ідентифікаторів на сервері Ollama, як описано в Часті питання. Якщо у вас виникнуть проблеми з графічними процесорами на основі Vulkan, ви можете вимкнути всі графічні процесори Vulkan, встановивши OLLAMA_VULKAN=0 або GGML_VK_VISIBLE_DEVICES=-1.
У змішаних системах iGPU/dGPU, де інтегрований графічний процесор Vulkan нестабільний, залиште Vulkan увімкненим і встановіть GGML_VK_VISIBLE_DEVICES у індекс дискретного графічного процесора. Наприклад, використовуйте GGML_VK_VISIBLE_DEVICES=1, якщо Vulkan1 є дискретним графічним процесором.