Запуск LLM на AMD NPU с помощью FastFlowLM — руководство для Fedora
Теперь вы можете запускать большие языковые модели (LLM) напрямую на вашем AMD NPU, используя Fedora. В этом руководстве показано, как настроить стек на ASUS ROG Flow Z13 с чипом Ryzen AI Max 390.
Для работы требуется четыре уровня:
- Ядро + драйвер DKMS (amdxdna): создает узел устройства и загружает прошивку.
- XRT base: среда выполнения AMD.
- XRT NPU plugin: позволяет XRT видеть NPU.
- FastFlowLM (flm): инструмент для запуска моделей.
Так как в Fedora отсутствуют готовые пакеты для этого, вам придется собирать всё из исходного кода.
⚠️ Важные исправления перед началом
Включите IOMMU Многие пользователи отключают IOMMU для настройки GPU. Это нарушает работу NPU. Проверьте настройки:
cat /proc/cmdlineЕсли вы видитеamd_iommu=off, удалите этот параметр из/etc/default/grub, перегенерируйте конфигурацию grub и перезагрузите систему.Установите неограниченный лимит memlock NPU требуется заблокированная память. Проверьте лимит:
ulimit -lЕсли он не является неограниченным, добавьте следующее в/etc/security/limits.d/99-memlock.conf:* soft memlock unlimited* hard memlock unlimitedЗатем выйдите из системы и войдите снова.Исправьте путь к xrt-smi Не создавайте символьную ссылку на xrt-smi — это нарушит работу внутреннего скрипта. Вместо этого используйте обертку:
sudo tee /usr/local/bin/xrt-smi <<'EOF'
#!/bin/sh
exec /opt/xilinx/xrt/bin/xrt-smi "$@"
EOF
sudo chmod +x /usr/local/bin/xrt-smi
Краткое описание этапов сборки
- Установка зависимостей: используйте
dnfдля установкиgit,dkms,cmakeи различных библиотек разработки. - Сборка XRT: клонируйте репозиторий
xdna-driver. Создайте оберткуcmake3для Fedora. Соберите и установите RPM-пакеты. - Установка NPU Plugin: соберите
xrt_pluginиз репозиторияxdna-driverи установите полученный RPM-пакет. - Сборка FastFlowLM: клонируйте репозиторий
FastFlowLMи используйтеcmakeдля сборки и установки.
Команды для проверки
Проверка ядра и NPU: flm validate
Проверка оборудования: xrt-smi examine xrt-smi validate
Запуск модели: flm run gemma4-it:e4b
Показатели производительности (Ryzen AI Max 390)
- Время до первого токена: 1,21 с
- Скорость префилза (prefill): 18 токенов/с
- Скорость декодирования: 11 токенов/с
Источник: https://dev.to/ankk98/running-llms-on-amd-npu-with-fastflowlm-fedora-guide-1oo5
Дополнительное сообщество для обучения: https://t.me/GyaanSetuAi
