← Все статьи
19 октября 2026 г.·4 мин чтения

Ollama не использует GPU: как проверить и заставить модель считать на видеокарте

Почему Ollama работает на процессоре, а не на видеокарте: старый драйвер NVIDIA, неподдерживаемая AMD, модель не влезла в VRAM, ноутбук с двумя GPU, сон в Linux. Проверка через ollama ps и nvidia-smi, логи Windows и Linux, переменные окружения.

Модель отвечает по слову в секунду, вентилятор процессора воет, а видеокарта простаивает. Значит, Ollama считает на CPU. Иногда это решение самой Ollama (модель не влезла в память видеокарты), иногда она видеокарту просто не нашла. Сначала нужно понять, какой из двух случаев твой.

Проверка за минуту

Запусти модель и, пока она загружена, выполни в другом окне терминала:

ollama ps
NAME           ID              SIZE     PROCESSOR          UNTIL
qwen3:14b      a1b2c3d4e5f6    10 GB    41%/59% CPU/GPU    4 minutes from now

Смотри на колонку PROCESSOR:

Что написаноЧто это значитКуда смотреть
100% GPUвсё в порядке, модель целиком в видеопамятиесли всё равно медленно — дело не в GPU
100% CPUOllama видеокарту не нашла или отказалась от неёразделы про драйвер, AMD и логи ниже
41%/59% CPU/GPUвидеокарта работает, но модель в неё не влезлараздел про VRAM

На NVIDIA дополнительно запусти nvidia-smi -l 1 и задай модели вопрос. Если загрузка GPU не растёт, а память видеокарты не занята, модель точно считается на процессоре.

Модель не влезла в видеопамять

Самый частый случай, и это не поломка. Ollama кладёт в VRAM столько слоёв, сколько помещается, а остальное считает процессор. Даже 20% слоёв на CPU замедляют ответ в разы.

В память видеокарты идёт не только файл модели, но и кэш контекста. Чем длиннее контекст, тем больше места он занимает. Что можно сделать:

  • Взять квантизацию легче. Вместо q8_0 — q4_K_M: файл почти вдвое меньше, качество падает слабо. Что значат эти обозначения, разобрано в статье про формат GGUF.
  • Взять модель поменьше. На карте с 8 ГБ модель на 14B в Q4 уже не помещается вместе с контекстом, а 7–9B помещается.
  • Уменьшить контекст. Если ты поднимал num_ctx или OLLAMA_CONTEXT_LENGTH, верни меньшее значение.
  • Закрыть то, что держит VRAM. Браузер с аппаратным ускорением, игра, вторая модель в Ollama или LM Studio — всё это забирает память видеокарты.

Какая модель влезет в твою карту, удобно прикинуть в калькуляторе подбора модели.

NVIDIA: драйвер и поколение карты

По документации Ollama нужна карта с compute capability 5.0 и выше (это GTX 900-й серии и новее) и драйвер версии 550 или новее. Для карт с compute capability от 5.0 до 6.2 (GTX 900 и GTX 10-й серии) нужен драйвер 570+. Версию драйвера покажет:

nvidia-smi --query-gpu=name,driver_version --format=csv

CUDA Toolkit ставить не нужно: Ollama везёт нужные библиотеки с собой. Если драйвер старый, обнови его с сайта NVIDIA и перезапусти Ollama. Видеокарты она ищет только при старте, поэтому без перезапуска обновление драйвера ничего не изменит.

AMD и Intel

AMD через ROCm. На Windows ROCm поддерживает только Radeon RX 7600–7900 и PRO W7500–W7900. На Linux список шире: RX 6000, 7000, 9070 и профессиональные карты, но нужен драйвер ROCm 7. Если карта не из списка, на Linux её иногда заводит переменная HSA_OVERRIDE_GFX_VERSION, например 10.3.0 для RDNA 2. Это обход, а не официальная поддержка.

Vulkan. Для остальных карт AMD и Intel у Ollama есть бэкенд Vulkan, он включён по умолчанию на Windows и Linux. Если твоя Radeon не поддерживается ROCm, Ollama может работать через Vulkan. На Linux пользователю может понадобиться группа render.

Ноутбук с двумя видеокартами

Встроенная графика Intel или AMD плюс дискретная NVIDIA. Если Ollama выбрала не ту карту или вообще CPU, укажи видеокарту явно. Её UUID покажет nvidia-smi -L:

setx CUDA_VISIBLE_DEVICES GPU-8f3c1a2b-...

После этого полностью закрой Ollama в трее и запусти снова. На Windows переменные можно задать и через «Изменение переменных среды текущего пользователя».

Обратный случай: если где-то задано CUDA_VISIBLE_DEVICES=-1 или OLLAMA_LLM_LIBRARY=cpu_avx2, Ollama специально уходит на процессор. Проверь, нет ли такого в переменных среды, оставшихся от старых инструкций.

Linux: после сна видеокарта пропала

Известная ситуация с NVIDIA: после suspend/resume Ollama перестаёт видеть GPU и уходит на CPU. Документация советует перезагрузить модуль драйвера:

sudo rmmod nvidia_uvm && sudo modprobe nvidia_uvm
sudo systemctl restart ollama

В Docker сначала проверь, что контейнер вообще видит карту: docker run --gpus all ubuntu nvidia-smi. Если GPU отваливается через какое-то время работы, в /etc/docker/daemon.json помогает "exec-opts": ["native.cgroupdriver=cgroupfs"].

Что пишет лог

Если ничего выше не подошло, причину называет лог сервера. На Windows открой через Win+R папку %LOCALAPPDATA%\Ollama и посмотри server.log. На Linux:

journalctl -u ollama --no-pager | grep -i -E "inference compute|gpu|cuda"

Строка inference compute с library=CUDA (или ROCm, Vulkan) значит, что видеокарта найдена. Если там только library=cpu, ищи выше ошибки обнаружения GPU. У NVIDIA это коды вроде 3, 46, 100, 999. Обычно они лечатся обновлением драйвера или перезагрузкой. Подробнее лог станет с переменной OLLAMA_DEBUG=1.

Отдать диагностику агенту

Проверка выше — это пять-шесть команд, которые нужно запустить по порядку и прочитать вывод. Дока может сделать это на твоём компьютере: напиши «Ollama считает на процессоре, разберись почему». Агент запустит ollama ps и nvidia-smi, найдёт лог и покажет, что в нём не так. Каждую команду ты видишь до запуска.

Своя локальная модель у Доки тоже есть. При установке она подбирает сборку и модель под твою видеокарту и память, так что связку из Ollama и ручного подбора квантизации можно не собирать. Сравнение двух популярных оболочек — в статье Ollama или LM Studio, а если Ollama не стартует вовсе, смотри отдельный разбор.