【780M向け】Radeon 780Mの推論速度を左右するVulkan最適化2件とStrix Haloの速度低下不具合

目次
  1. 今回の要点
  2. Vulkan RDNA3最適化: KVキャッシュ帯域幅向上とFlashAttention共用体メモリ有効化
  3. Strix Halo (Vulkan) で Speculative Decode の n=4 で速度が半減する不具合
  4. FreeBSD 環境で Vulkan バックエンドが CPU 過負荷/OOM/ハングする重大バグ修正
  5. 780M/890M 固有: MMVQ 量子化で NaN が発生する不具合と対策
  6. Vulkan ビルド修正と Intel Arc Pro B65/B70 サポート追加
  7. 出典

この記事はAIによって編集・作成されています。

llama.cpp は ggml-org が開発する C/C++ の LLM 推論エンジン。Vulkan バックエンドで AMD iGPU でも動く。

今回の要点

  • RDNA3 (780M等) の最適化: KVキャッシュのメモリ帯域幅利用効率と、FlashAttentionの共用体メモリ有効化により、推論速度の改善が期待される。
  • Strix Halo (8060S) の不具合: 分岐推論(Speculative Decode)のドラフト長を4に設定すると、受容率が一定でもスループットが約半分になる重大な速度低下が発生している。
  • FreeBSD の重大バグ修正: VulkanバックエンドでCPU過負荷やOOM(メモリ不足)を引き起こしていた不具合が修正された。
  • 780M/890M固有のNaNバグ: MMVQ量子化でNaN(数値異常)が発生する不具合と対策が報告されている。

Vulkan RDNA3最適化: KVキャッシュ帯域幅向上とFlashAttention共用体メモリ有効化

何が変わったか

RDNA3 アーキテクチャ(Radeon 780M 等)向けの Vulkan バックエンドに2件の最適化が導入された。1件目は、strided f16 の KV キャッシュ読み込みを最適化し、メモリチャネル全体に読み込みを分散させる変更(PR #27703)。2件目は、FlashAttention の共用体メモリ(shmem)ステージングを NVIDIA 限定から AMD RDNA スカラーパスへ拡張した変更(PR #28507)。

なぜ重要か

iGPU はシステムメモリと VRAM を共有するため、メモリ帯域幅の効率的な利用が推論速度に直結する。KVキャッシュの読み込み最適化は帯域幅ボトルネックを緩和し、FlashAttention の共用体メモリ有効化は RDNA3 環境での推論速度向上に寄与する。

根拠のリンク

利用者の報告

ystyle 氏は、Arch Linux 環境(AMD Ryzen 7 7840HS + Radeon 780M、RADV、2048 MB VRAM + 24576 MB GTT)で、Qwen3.5-35B-A3B の UD-Q3_K_XL 量子化モデルにマルチモーダルプロジェクタ(mmproj)をロードした際、生成速度が約 250 倍低下する現象を報告している。具体的には prefill が約 0.3 tok/s、decode が約 0.1 tok/s となり、プロジェクタなしの場合と比較して極めて低速となった。一方、同じプロジェクタを IQ3_XXS 量子化モデルで使用した場合は正常に動作したという。

polter-dev 氏は、Strix Halo (Radeon 8060S, gfx1151) 環境において、vLLM ではなく llama.cpp の Vulkan ビルドを使用して gpt-oss-20b を推論する構成を検討・実装している。64 GB の統一メモリ(LPDDR5X)を備えた環境で、llama-server を介した OpenAI 互換 API 提供を試行している。

Strix Halo (Vulkan) で Speculative Decode の n=4 で速度が半減する不具合

何が変わったか

AMD Strix Halo (Radeon 8060S, gfx1151) 環境において、分岐推論(Speculative Decode)のドラフト長(–spec-draft-n-max)を 3 から 4 に増加させると、受容率がほぼ変化しないにもかかわらず、スループットが約 2 倍低下する現象が確認されている。これはドラフトモデルの品質とは無関係で、(n+1) トークンの検証バッチが高速な Vulkan mat-vec パスから外れることが原因と推測されている。

なぜ重要か

Strix Halo ユーザーにとって、分岐推論による速度向上を期待してパラメータを調整した際に、逆に性能が半減する可能性がある。n=4 での推論を避ける等の対策が必要になる。

根拠のリンク

利用者の報告

karolypaczari-afk 氏は、Windows 11 Pro 環境(AMD Ryzen AI MAX+ 395 / Radeon 8060S、ドライバー 32.0.31041.1004、96 GB UMA フレームバッファ)で、llama.cpp b11574 (Vulkan ビルド) を使用して Qwen3.8-27B MTP を推論した際、–spec-synth-rates で受容率を固定した条件下でも、ドラフト長 n=4 でスループットが n=3 の約半分になることを確認した。Qwen3.8-27B-UD-Q4_K_XL モデルと MTP ドラフトヘッドを使用。

ystyle 氏は、前述の 780M 環境におけるマルチモーダルプロジェクタ負荷の問題を報告している。また、polter-dev 氏は Strix Halo 環境での llama.cpp 利用に関する実装報告を行っており、同環境での Vulkan 利用実例が存在する。

FreeBSD 環境で Vulkan バックエンドが CPU 過負荷/OOM/ハングする重大バグ修正

何が変わったか

FreeBSD 環境において、Vulkan バックエンド使用時に CPU 使用率が 900% に達し、ggml_vk_create_buffer による ErrorOutOfDeviceMemory エラーがスパム出力され、システムがハングする重大な不具合が見つかった。この問題はコミット e0bcaccbe50a773c8addec49bbfc8b7ba953c63b によって引き起こされていた。PR #30468 により、AMD 上での VK_EXT_external_memory_host 拡張機能を無効化することで修正された。

なぜ重要か

FreeBSD 環境で Vulkan を使用していたユーザーは、推論実行時にシステムが使用不能になるリスクがあった。今回の修正により、FreeBSD 環境での Vulkan 利用が可能になる。

根拠のリンク

利用者の報告

FreeBSD 環境における具体的なユーザー報告は、本記事の IR 内では確認できないが、不具合の内容と修正内容が記録されている。

780M/890M 固有: MMVQ 量子化で NaN が発生する不具合と対策

何が変わったか

gfx1103 (780M) および gfx1150 (890M) アーキテクチャ固有の不具合として、MMVQ 量子化モデル使用時に NaN(Not a Number)が発生する報告がある。SGLang の JIT 互換性向上により、780M 環境でのローカル LLM 推論の安定性改善が期待される。Vulkan バックエンドにおける NaN 問題の実用的な対策が示されている。

なぜ重要か

780M や 890M を搭載したユーザーが MMVQ 量子化モデルを使用する際、推論結果が不正な値になるリスクがある。対策を講じることで、これらの GPU での推論安定性が向上する。

根拠のリンク

利用者の報告

具体的なユーザーの報告内容は IR 内に記載されていないが、不具合の内容と対策が記録されている。

Vulkan ビルド修正と Intel Arc Pro B65/B70 サポート追加

何が変わったか

llama.cpp b11617 において、Vulkan ビルドの修正が行われた。PR #29069 が適用された際、PR #29533 による rename 変数の新しい参照がコンパイルエラーを引き起こしていたため、rename を修正して解決した。また、Intel Arc Pro B65 および B70 向けのシェーダーカウントが定義された。

なぜ重要か

Vulkan 環境でのビルド安定性が向上し、Intel Arc Pro B65/B70 ユーザーがシェーダーを正しく認識できるようになる。

根拠のリンク

出典

【宣伝】SwitchBot 購入はこちらから

SwitchBot公式ページ
クーポン「AF-4903」で5%引き(アフィリエイトクーポンになりますのでご協力お願いします)
割引の詳しい仕組みに関してはこちらのページを参照ください。