Главная/Блог/Обзор/Инференс LLM на AMD Radeon: ROCm,…
Обзор4 мин чтения · 15 августа 2026 г.

Инференс LLM на AMD Radeon: ROCm, Vulkan и реальность

Разбираем, как запустить LLM на видеокартах AMD через llama.cpp. Собираем ROCm и Vulkan, избегаем граблей и выбираем железо.

Инференс LLM на AMD Radeon: ROCm, Vulkan и реальность

Запуск больших языковых моделей (LLM) на видеокартах AMD долгое время считался «темным лесом» по сравнению с экосистемой NVIDIA. Однако благодаря проекту llama.cpp и его бэкендам ROCm (HIP) и Vulkan, инференс на Radeon стал реальностью. Разберем, как правильно собрать софт, какие флаги использовать и чего ждать от производительности.

01Сборка llama.cpp для AMD: ROCm и Vulkan

Основой для работы с AMD-железом служит библиотека llama и примеры к ней. Для начала необходимо получить исходный код:

terminalbash
git clone https://github.com/ggml-org/llama.cpp
cd llama.cpp

Для AMD есть два основных пути ускорения: HIP (ROCm) для нативной поддержки карт серии RX и Radeon Pro, и Vulkan как кроссплатформенный бэкенд. Выбор зависит от вашей ОС и версии драйвера.

Сборка с поддержкой ROCm (HIP)

ROCm — это прямой аналог CUDA для AMD. Он обеспечивает лучшую производительность, но требует строгой совместимости с Linux (обычно Ubuntu 22.04/24.04 или RHEL) и установленным пакетом ROCm Toolkit. Флаг сборки выглядит так:

terminalbash
cmake -B build -DGGML_HIP=ON
cmake --build build --config Release

Если вы используете дистрибутивы, где ROCm установлен не по умолчанию, убедитесь, что переменные окружения инициализированы. Для Intel-процессоров с поддержкой AVX-VNNI можно использовать oneMKL, но для GPU это не применимо — там нужен SYCL или HIP.

Сборка с поддержкой Vulkan

Vulkan-бэкенд часто проще в настройке, так как не требует специфичных драйверов ROCm, а опирается на стандартные Vulkan-драйверы (Mesa). Это хороший вариант для Windows или старых версий Linux, где ROCm «не встает».

terminalbash
cmake -B build -DGGML_VULKAN=ON
cmake --build build --config Release
⚠️
Важно. При сборке с флагом -DGGML_NATIVE=OFF (полезно для CUDA, но логика применима и к кросс-компиляции) бинарник будет работать на всех GPU, но может требовать JIT-компиляции при первом запуске. Для AMD ROCm это может замедлить первый инференс. Всегда проверяйте совместимость вашей карты с версией ROCm.

02VRAM и производительность: что реально получить

В отличие от NVIDIA, где есть четкие ориентиры по VRAM для каждой модели, на AMD важно учитывать не только объем, но и пропускную способность памяти. Карты серии RX 7000 часто выигрывают у старых моделей NVIDIA в задачах инференса за счет более высокой пропускной способности на ватт, хотя у H100/A100 они все равно уступают.

Типичные сценарии использования VRAM:

  • Малые модели: Требуют минимального объема VRAM. Потянет любая карта с достаточным объемом памяти.
  • Средние модели: Требуют карты с увеличенным объемом памяти.
  • Большие модели: Требуются карты высокого уровня или профессиональные решения, часто в мульти-GPU режиме.
Железо (AMD) Модель (пример) VRAM (мин.) Примечание
Radeon RX 7900 XTX 70B (Q4) 24 ГБ (нужно 2x или offload CPU) Лучший потребительский выбор для больших моделей
Radeon RX 6700 XT 13B (Q4) 8 ГБ Бюджетный вход в инференс
Radeon Pro W7900 70B (Q4) 48 ГБ Одна карта для 70B без компромиссов
💡
Совет. Если у вас Windows, сборка ROCm может быть сложной. Рассмотрите вариант использования WSL2 или Docker-контейнеров с ROCm, либо используйте Vulkan-бэкенд, который работает стабильнее на Windows без дополнительных танцев с бубном.

03Грабли и типичные ошибки

  1. Ошибка совместимости ROCm: ROCm официально поддерживает только определенные версии Linux и карты серии RDNA2/3. Если вы используете RX 6000 серии на Windows, нативный ROCm не заработает. Используйте Vulkan.
  2. Недостаток VRAM: llama.cpp позволяет offload слоев на CPU, но это резко снижает скорость. Если VRAM не хватает, модель начнет работать заметно медленнее.
  3. Отсутствие BLAS: Для ускорения обработки промптов (prompt processing) рекомендуется включать BLAS. Для AMD это не критично для генерации, но полезно для длинных контекстов.
⚠️
Важно. При запуске убедитесь, что вы используете флаг --n-gpu-layers -1 (или максимальное число слоев), чтобы перенести всю модель на GPU. Если слоев больше, чем позволяет VRAM, оставшиеся будут вычислены на CPU, что создаст узкое место.

04Какое железо кому подойдёт

Выбор AMD-железа для ИИ в РФ сейчас диктуется доступностью и ценой. NVIDIA H100/A100 недоступны легально и стоят космических денег, а RTX 4090 — это дорого и с ограничениями по экспорту.

  • Бюджетный сегмент: Radeon RX 6600/6650 XT. Подойдет для моделей до 7B-8B параметров. Vulkan-бэкенд будет работать стабильнее.
  • Средний сегмент: Radeon RX 7700 XT / 7800 XT. Отличный баланс для моделей 13B-14B. ROCm на Linux даст максимальную скорость.
  • Топовый потребительский: Radeon RX 7900 XTX. Позволяет запускать 70B-модели с квантованием Q4, если использовать две карты или смириться с частичным offload на CPU. Это лучший выбор для энтузиасто

    Источник: источник (тест/офиц. документация) ↗