Запуск MoE-моделей на AMD Radeon 780M + 128GB RAM: полный гайд | AiManual
AiManual Logo Ai / Manual.
11 Янв 2026 Гайд

MoE на Radeon 780M: как запустить 70B-модель на мини-ПК за 1500$

Пошаговая настройка ROCm, сборка llama.cpp, оптимизация и реальные бенчмарки MoE-моделей на бюджетном железе. Mixtral, DeepSeek, Qwen на Minisforum UM890 Pro.

Зачем это вообще кому-то нужно?

Потому что 4090 стоит как подержанная машина. Потому что серверные карты жрут электричество как маленький город. Потому что иногда хочется запустить Mixtral 8x22B или DeepSeek MoE, не продавая почку.

Radeon 780M — встроенная графика в процессорах AMD Ryzen 7040/8040. 12 вычислительных единиц, 8GB видеопамяти (выделяется из RAM), поддержка ROCm. В связке с 128GB DDR5 это превращает мини-ПК в тихий, холодный и жутко эффективный AI-сервер. Потребление под нагрузкой — 65-90Вт. Для сравнения: RTX 4090 одного только питания просит 450Вт.

Ключевая идея: мы используем iGPU как акселератор для части вычислений, а основную модель грузим в оперативку. 128GB RAM — это примерно 70-80 миллиардов параметров в 4-битной квантовке. MoE-архитектура позволяет запускать модели ещё крупнее, потому что активируются не все параметры сразу.

Что у нас получится запустить (и как быстро)

Я тестировал на Minisforum UM890 Pro (Ryzen 9 8945HS, 128GB DDR5-5600). Вот что выходит:

Модель Параметры Квант Скорость (токен/с) Загрузка GPU
Mixtral 8x7B 47B (акт. 13B) Q4_K_M 12-15 85-95%
DeepSeek MoE 16B 16B (акт. 2.4B) Q4_K_S 22-28 70-80%
Qwen 2.5 32B MoE 32B (акт. 7B) Q4_K_M 8-11 90-98%
Mixtral 8x22B 141B (акт. 39B) Q3_K_M 3-5 100% + CPU help

12-15 токенов в секунду для Mixtral — это не для чата в реальном времени. Это для фоновой обработки документов, анализа кода, оффлайн-ассистента. Но за эти деньги — альтернатив просто нет.

Шаг 0: Железо, которое не подведёт

Minisforum UM890 Pro — не единственный вариант. Подойдёт любой мини-ПК с Ryzen 7040/8040 и возможностью установить 96-128GB RAM. Сейчас это:

  • Minisforum UM890 Pro/UM890 Lite
  • BeeLink SER8/SEi8
  • GMKtec NucBox K8
  • Самосбор на ASUS PN53 или подобной платформе

Оперативка — две планки по 64GB DDR5-5600. Не берите DDR5-6400 — контроллер памяти в этих процессорах не всегда стабильно работает на высоких частотах с большим объёмом. 5600 — золотая середина.

Проверьте, что в BIOS выделено минимум 8GB под iGPU. По умолчанию часто стоит 2GB или 4GB — этого мало. Ищем "UMA Frame Buffer Size" или похожий параметр.

1 Убийственная комбинация: Ubuntu 24.04 + ROCm 7.1.1

Здесь всё хрупко. Один не тот пакет — и ROCm откажется видеть вашу 780M. Проверенная последовательность:

# Чистая установка Ubuntu 24.04 LTS
# При установке НЕ ставить сторонние драйверы, НЕ включать Secure Boot

sudo apt update && sudo apt upgrade -y
sudo apt install wget git curl build-essential pkg-config cmake -y

# Ядро 6.8+ обязательно для ROCm 7.x
sudo apt install linux-image-6.8.0-31-generic linux-headers-6.8.0-31-generic

Перезагружаемся в новое ядро. Проверяем:

uname -r  # должно быть 6.8.0-31 или выше

Теперь ROCm. Качаем пакеты напрямую с GitHub — репозитории AMD вечно глючат.

# Создаём папку для загрузок
mkdir ~/rocm-install && cd ~/rocm-install

# Основные пакеты ROCm 7.1.1 для 780M
wget https://repo.radeon.com/amdgpu-install/7.1.1/ubuntu/jammy/amdgpu-install_7.1.1.50100-1_all.deb
wget https://repo.radeon.com/amdgpu-install/7.1.1/ubuntu/jammy/rocm-hip-libs_7.1.1.50100-1_amd64.deb
wget https://repo.radeon.com/amdgpu-install/7.1.1/ubuntu/jammy/rocm-device-libs_7.1.1.50100-1_amd64.deb
wget https://repo.radeon.com/amdgpu-install/7.1.1/ubuntu/jammy/rocm-opencl_7.1.1.50100-1_amd64.deb

# Устанавливаем в правильном порядке
sudo apt install ./amdgpu-install_7.1.1.50100-1_all.deb -y
sudo apt install ./rocm-device-libs_7.1.1.50100-1_amd64.deb -y
sudo apt install ./rocm-hip-libs_7.1.1.50100-1_amd64.deb -y
sudo apt install ./rocm-opencl_7.1.1.50100-1_amd64.deb -y

# Добавляем пользователя в группу video и render
sudo usermod -a -G video $USER
sudo usermod -a -G render $USER

Перезагружаемся. Проверяем установку:

rocminfo | grep -i "gfx"  # Должно показать "gfx1103" - это и есть 780M
hipconfig --version  # Должна быть 5.7.1
💡
Если rocminfo не видит устройство, проверьте dmesg | grep -i amdgpu. Частая проблема — старый микрокод процессора. Обновите через sudo apt install amd64-microcode.

2 Сборка llama.cpp с поддержкой HIP и MoE

Официальные сборки llama.cpp не всегда включают ROCm. Собираем сами с максимальной оптимизацией под 780M.

git clone https://github.com/ggerganov/llama.cpp
cd llama.cpp

# Критически важные флаги для 780M
mkdir build && cd build

cmake .. \
  -DLLAMA_HIPBLAS=ON \
  -DCMAKE_C_COMPILER=/opt/rocm/bin/hipcc \
  -DAMDGPU_TARGETS=gfx1103 \  # Только наша 780M, не собираем для всего подряд
  -DLLAMA_NATIVE=OFF \  # Автовекторизация ломает HIP
  -DLLAMA_ACCELERATE=OFF \  # Только для macOS
  -DLLAMA_METAL=OFF \
  -DLLAMA_CUBLAS=OFF \
  -DCMAKE_BUILD_TYPE=Release \
  -DLLAMA_METAL_EMBED_LIBRARY=OFF

make -j$(nproc) llama-bench

Проверяем, что HIP работает:

./bin/llama-bench -m ~/models/mistral-7b.Q4_K_M.gguf -ngl 999 -n 10

Должны увидеть использование GPU в выводе. Если нет — проверьте переменную окружения:

export HIP_VISIBLE_DEVICES=0
export HSA_OVERRIDE_GFX_VERSION=11.0.3

Эти строки добавьте в ~/.bashrc, чтобы не вводить каждый раз.

Как НЕ надо настраивать: три смертельные ошибки

  1. Ставить ROCm из стандартных репозиториев Ubuntu — там версия 5.x, которая не поддерживает RDNA3 (780M). Будете часами искать, почему устройство не определяется.
  2. Выделять под iGPU больше 8GB — система резервирует память, но реально использует только то, что нужно. Остальные 120GB останутся системе, но с ограничениями DMA. 8GB — оптимально.
  3. Использовать PCIe Gen4 вместо Gen3 — звучит парадоксально, но на мини-ПК с 780M PCIe Gen4 иногда вызывает стабильности. Вручную выставляем Gen3 в BIOS. Потери производительности — меньше 5%, зато никаких случайных падений.

3 Запуск MoE-моделей: магия флагов

Обычную модель запустить просто. MoE — нужно подсказать llama.cpp, как распределять слои.

Скачиваем модель. Например, Mixtral 8x7B Instruct:

# Используем huggingface-cli или прямые ссылки
huggingface-cli download bartowski/Mixtral-8x7B-Instruct-v0.1-GGUF \
  Mixtral-8x7B-Instruct-v0.1-Q4_K_M.gguf \
  --local-dir ~/models

Запускаем с правильными параметрами:

./bin/main -m ~/models/Mixtral-8x7B-Instruct-v0.1-Q4_K_M.gguf \
  -ngl 40 \                # 40 слоёв на GPU, остальные на CPU
  -c 32768 \               # Контекст 32K
  -b 512 \                 # Размер батча
  -n 256 \                 # Генерируем 256 токенов
  -t 12 \                  # 12 потоков CPU
  --mirostat 2 \           # Лучше качество генерации
  --mlock \                # Держим модель в RAM
  -p "Кто такой Илон Маск?"

Флаг -ngl 40 — самое важное. 780M имеет 8GB памяти, в которые помещается примерно 40-45 слоёв Q4_K_M Mixtral. Экспериментируйте: запустите с -ngl 999 (всё на GPU), посмотрите, сколько слоёв реально загрузилось (в логах будет "llm_load_tensors: offloaded 43/..."). Это и есть ваш максимум.

Оптимизация под 128GB RAM: игра на грани

128GB — много, но для 141B модели в Q3_K_M нужно ~75GB только под веса. Плюс контекст, плюс система.

Что делаем:

  • Отключаем swap вообще. sudo swapoff -a. При переполнении RAM система зависнет, но это лучше, чем тормоза из-за свопа на SSD.
  • Увеличиваем размер hugepages: echo 1024 > /proc/sys/vm/nr_hugepages. llama.cpp использует их для KV-кеша.
  • Запускаем с --mlock — модель не вытесняется из RAM.
  • Для самых больших моделей используем --mmap вместо --mlock — файл модели мапится в память, но не занимает её всю сразу.

Мой конфиг для Mixtral 8x22B (141B параметров):

./bin/main -m ~/models/Mixtral-8x22B-Instruct-v0.1-Q3_K_M.gguf \
  -ngl 20 \                # Всего 20 слоёв на GPU — больше не влезает
  -c 4096 \                # Меньший контекст, иначе не хватит RAM
  -b 256 \                 # Уменьшенный батч
  -t 16 \                  # Больше CPU потоков
  --mlock \
  --parallel 4 \           # Параллельная обработка экспертов
  -ins \                   # Режим инструкций
  --temp 0.7
💡
Флаг --parallel для MoE-моделей — секретное оружие. Он заставляет обрабатывать экспертов параллельно, что на многопоточном CPU даёт прирост 20-30%. Но используйте осторожно: при значении больше 4-6 начинается борьба за память.

Что делать, если всё сломалось

ROCm — не CUDA. Здесь всё может сломаться от обновления ядра.

Проблема Решение
"No compatible GPU device found" dmesg | grep amdgpu. Если видите "unsupported silicon revision", обновите BIOS/UEFI мини-ПК.
Segmentation fault при загрузке модели Скорее всего, не хватает памяти GPU. Уменьшите -ngl. Или модель битая — проверьте sha256.
Скорость 1-2 токена/с Проверьте rocminfo. Если GPU не используется, возможно, сломался HIP. Пересоберите llama.cpp с чистого листа.
Система зависает при запуске большой модели Вы съели всю RAM. Уменьшайте контекст (-c), батч (-b), или берите более агрессивный квант (Q2_K).

А что насчёт будущего?

AMD Strix Halo (который скоро выйдет) обещает 40 вычислительных единиц и до 256GB единой памяти. Это будет абсолютный монстр за те же деньги. Но и текущая 780M — не игрушка.

Главный урок: можно запускать модели в 10 раз больше, чем "должно" помещаться на железе. MoE-архитектура, грамотное распределение слоёв между GPU и CPU, агрессивный квант — и 141B модель работает на мини-ПК размером с книгу.

Пока все спорят, нужны ли им H100 за $30,000, вы уже анализируете документацию на Mixtral 8x22B. И платите за электричество столько же, сколько за лампочку.