FastFlowLM ile AMD NPU üzerinde LLM Çalıştırma - Fedora Kılavuzu

Artık Fedora kullanarak Büyük Dil Modellerini (LLM) doğrudan AMD NPU'nuz üzerinde çalıştırabilirsiniz. Bu kılavuz, Ryzen AI Max 390 çipli bir ASUS ROG Flow Z13 üzerinde bu yığını (stack) nasıl kuracağınızı göstermektedir.

Kurulum dört çalışma katmanı gerektirir:

  • Kernel + DKMS sürücüsü (amdxdna): Cihaz düğümünü (device node) oluşturur ve donanım yazılımını (firmware) yükler.
  • XRT base: AMD çalışma zamanı (runtime).
  • XRT NPU eklentisi: XRT'nin NPU'yu görmesini sağlar.
  • FastFlowLM (flm): Modelleri çalıştıran araç.

Fedora'da bunun için önceden oluşturulmuş paketler bulunmadığından, kaynak koddan derlemeniz gerekmektedir.

⚠️ Başlamadan Önce Kritik Düzeltmeler

  1. IOMMU'yu Etkinleştirin Birçok kullanıcı GPU ayarları için IOMMU'yu devre dışı bırakır. Bu durum NPU'yu bozar. Ayarlarınızı kontrol edin: cat /proc/cmdline Eğer amd_iommu=off görüyorsanız, bunu /etc/default/grub dosyasından kaldırın, grub yapılandırmanızı yeniden oluşturun ve sistemi yeniden başlatın.

  2. Sınırsız Memlock Ayarlayın NPU'nun kilitli belleğe (locked memory) ihtiyacı vardır. Limitlerinizi kontrol edin: ulimit -l Eğer sınırsız (unlimited) değilse, şu satırları /etc/security/limits.d/99-memlock.conf dosyasına ekleyin:

  • soft memlock unlimited
  • hard memlock unlimited Ardından oturumu kapatıp tekrar açın.
  1. xrt-smi Yolunu Düzeltin xrt-smi için sembolik bağlantı (symlink) oluşturmayın. Bu, dahili betiği (script) bozar. Bunun yerine bir sarmalayıcı (wrapper) kullanın: 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

Derleme Adımları Özeti

  • Bağımlılıkları yükleyin: git, dkms, cmake ve çeşitli geliştirme kütüphanelerini yüklemek için dnf kullanın.
  • XRT'yi derleyin: xdna-driver deposunu klonlayın. Fedora için bir cmake3 sarmalayıcısı oluşturun. RPM'leri derleyin ve yükleyin.
  • NPU Eklentisini yükleyin: xdna-driver deposundan xrt_plugin'i derleyin ve ortaya çıkan RPM'i yükleyin.
  • FastFlowLM'i derleyin: FastFlowLM deposunu klonlayın ve derleyip yüklemek için cmake kullanın.

Doğrulama Komutları

Çekirdeği (kernel) ve NPU'yu kontrol edin: flm validate

Donanımı kontrol edin: xrt-smi examine xrt-smi validate

Bir model çalıştırın: flm run gemma4-it:e4b

Performans Testleri (Ryzen AI Max 390)

  • İlk token süresi: 1.21 s
  • Prefill hızı: 18 tok/s
  • Kod çözme (decoding) hızı: 11 tok/s

Kaynak: https://dev.to/ankk98/running-llms-on-amd-npu-with-fastflowlm-fedora-guide-1oo5

İsteğe bağlı öğrenme topluluğu: https://t.me/GyaanSetuAi