Почему Ollama не использует GPU, хотя показывает 93% загрузки

    Проблема, когда Ollama сообщает о запуске модели на GPU, но фактически видеокарта не загружена, а генерация идёт на процессоре, встречается довольно часто. Разберём, что не так с Ollama и как это исправить.

    Как проверить, что модель действительно работает на GPU

    Лучший способ - мониторинг видеопамяти и загрузки GPU в реальном времени. Используйте nvidia-smi или task manager (Windows) / htop (Linux). Если VRAM остаётся свободной (например, 5.1 ГБ из 6 ГБ), а GPU загружен на 5-10%, значит модель работает на CPU, даже если ollama ps показывает 93% GPU.

    Основные причины, почему Ollama не использует GPU

    Недостаточный объём видеопамяти

    Ollama может автоматически переключаться на CPU, если модель не помещается целиком в VRAM. Для моделей вроде openchat 3.5 Q4_K_M (4.4 ГБ) требуется не менее 6 ГБ свободной видеопамяти. Если у вас 6 ГБ, но часть занята системой (например, 348 МБ оверхеда), доступно только ~5.1 ГБ - этого может не хватить. Решение: используйте модели меньшего размера (например, gemma-3-4b-it-q4_k_m 2.5 ГБ) или увеличьте VRAM.

    Некорректные или отсутствующие драйверы CUDA

    Ollama требует установленный CUDA toolkit и драйверы NVIDIA. Проверьте версию драйвера (в логах driver=12.8) и совместимость с вашей видеокартой. Для старых карт (P106-100, compute capability 6.1) может потребоваться драйвер версии не ниже 525.60.13. Установите последнюю версию CUDA с официального сайта NVIDIA.

    Проблемы с конфигурацией Ollama

    Ollama по умолчанию пытается использовать GPU, но может ошибаться с определением. Попробуйте вручную задать использование GPU через переменные окружения: OLLAMA_CUDA=1 на Linux/Mac или set OLLAMA_CUDA=1 на Windows. Также проверьте файл конфигурации ~/.ollama/config.json на наличие параметра "gpu_layers": -1 (автоопределение).

    Пошаговая диагностика и исправление

    Шаг 1: Проверьте логи Ollama

    Запустите ollama serve и посмотрите строки looking for compatible GPUs и inference compute. Если там указана ваша видеокарта, но дальше идёт entering low vram mode - значит Ollama считает VRAM недостаточным. Решение: уменьшите контекст модели (параметр --num-ctx) или используйте модель с меньшим размером.

    Шаг 2: Принудительно укажите количество GPU-слоёв

    Запустите модель с параметром --num-gpu-layers 999: ollama run openchat:latest --verbose --num-gpu-layers 999. Это заставит Ollama загрузить все слои на GPU. Если VRAM не хватает, модель может выдать ошибку - значит нужно уменьшить количество слоёв (например, до 30-40).

    Шаг 3: Обновите Ollama и драйверы

    Установите последнюю версию Ollama (0.11.7 устарела, используйте 0.3.1+). Обновите драйверы NVIDIA до версии 560.94 или новее. Для Windows проверьте, что CUDA установлена корректно через nvcc --version.

    Частые вопросы по работе Ollama с GPU

    Почему Ollama показывает 93% GPU, но VRAM свободна?

    Это баг отображения в ollama ps. Процент GPU означает долю вычислений, которые потенциально могут быть выполнены на GPU, но фактически модель работает на CPU из-за нехватки VRAM или ошибок драйвера. Ориентируйтесь на реальные показатели мониторинга.

    Что делать, если модель не помещается в VRAM?

    Используйте модели с квантизацией Q4_K_M или Q3_K_M, уменьшите контекст (--num-ctx 2048) или добавьте оперативную память для offloading части слоёв на CPU. Также можно разделить модель на несколько GPU, если их несколько.

    Работает ли Ollama на картах NVIDIA P106-100?

    Да, но из-за ограниченной видеопамяти (6 ГБ) и compute capability 6.1 могут возникать проблемы. Рекомендуется использовать модели до 3-4 ГБ и обновить драйверы до версии 525.60.13 или новее.

    Как заставить Ollama использовать только GPU?

    Установите переменную окружения OLLAMA_CUDA=1 и запустите модель с флагом --num-gpu-layers -1 (авто) или --num-gpu-layers 999 (все слои). Если после этого модель не запускается - проблема в VRAM или драйверах.

    Заключение

    Если Ollama не использует GPU, чаще всего виноваты нехватка видеопамяти или устаревшие драйверы. Проверьте реальную загрузку через nvidia-smi, обновите CUDA и драйверы, принудительно задайте количество GPU-слоёв. Для старых карт (P106-100) выбирайте компактные модели до 4 ГБ.

    Часто задаваемые вопросы