Radeon 780M向けVulkan修正:MoE回帰の解消、メモリバグ修正、FlashAttentionのVRAM最適化提案

ローカルLLMAMDVulkaniGPULLM最適化

目次
  1. Vulkan MoE推論の重大な性能回帰修正とRDNA4チューニング
  2. Vulkanシェーダーのメモリバッファ再利用バグ修正
  3. Vulkan MoE expert ID重複時の計算不具合修正
  4. Vulkan FlashAttentionのVRAM最適化と780M向け機能リクエスト
  5. Vulkan FWHTカーネルの高速化とブロック幅拡張
  6. 出典

今回の要点

  • MoE推論でIntelとRDNA3/4 iGPUの速度が大幅低下する重大な回帰修正(PR #29936)
  • RDNA4向けに過剰だったmat_vecチューニングを修正し、RDNA3(780M)にも恩恵(PR #29934)
  • FlashAttentionとsoft_max間で古いメモリバッファを再利用するバグを修正(commit 806eee9841)
  • MoEexpert ID重複時に計算がスキップされる不具合を修正(PR #29822)
  • 780M向けにFlashAttentionの頭部グループ化によるVRAM節約が提案中(Issue #29965)

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

Vulkan MoE推論の重大な性能回帰修正とRDNA4チューニング

前提

MoE(Mixture of Experts)モデルは、入力ごとに異なる「専門家」を選択して推論を行うアーキテクチャ。Vulkanバックエンドでは、これらの選択された専門家への行列計算(mul_mat_id)を効率的に実行する必要がある。

何が変わったか

PR #29936により、MoE推論の速度低下を招いていた重大な回帰が修正された。これはPR #29182で導入されたMoE対応のtile選択ロジックに起因し、Git bisectで回帰が確認された。修正により、B70 Arc Pro + gemma-4-26B-A4Bの環境で正常な速度が回復した。また、PR #29934ではRDNA4(gfx115x)のmat_vecカーネルチューニングが修正された。これは元々PR #27952でRDNA4追加時に過剰だった設定を修正するものだが、mat_vecチューニングパスはRDNA3(gfx1103 = 780M)と共有されているため、iGPUの性能向上にも寄与する可能性がある。

なぜ重要か

Radeon 780M(gfx1103)ユーザーは、MoEモデルの推論速度が大幅に低下する問題を回避できる。また、RDNA4搭載のRX 7600/7700 XTやRX 7900 XTX、9000シリーズユーザーも、mat_vec演算の最適化により推論速度が改善する。

根拠のリンク

利用者の報告

Radeon 780M(gfx1103)ユーザーのSkimmenthal13は、CachyOS(kernel 7.2.8)、Mesa 26.2.4、RADVドライバー環境で、GLM-4.7-Flash Q4_K_MモデルをVulkanバックエンドで実行した際、コンテキストが長くなるとトークン生成速度が低下する問題を報告している。この問題はIssue #19081でも報告されていたが、iGPUの制限により自動クローズされていた。今回の修正により、この速度低下が解消される可能性がある。Issue #29965

Windows 11環境でRDNA4 GPU(RX 9070 XT)を使用するthevaprroomops-cmykは、Hermes Agentがピン留めしているllama.cpp Vulkanビルド(b10964)が、LM StudioのVulkanビルドと比較して約4倍遅い(7.4–8.0 tok/s vs 30.5 tok/s)と報告している。特に、GPUオフロード(-ngl 99)とCPU実行(-ngl 0)で速度差がない点が問題視されている。Hermes Agent Issue #133259

Linux Mint 22.3環境でRadeon 780M(Phoenix / gfx1103)を使用するPaco1960は、Unsloth StudioでVulkanバックエンドを用いてGGUF推論を試みた際、VulkanがGPUを正しく検知するも、モデル読み込み時にメモリ割り当てに失敗しErrorOutOfDeviceMemoryが発生すると報告している。環境はllama.cpp build 11160、Mesa 25.2.8、Vulkan API 1.3.275。Unsloth Issue #12695

Vulkanシェーダーのメモリバッファ再利用バグ修正

前提

FlashAttentionとsoft_max演算では、中間結果を保持するための一時バッファ(prealloc_y)が再利用される。このバッファの管理が不適切だと、古いデータが新しい計算に混入し、推論結果が不正になる可能性がある。

何が変わったか

commit 806eee9841により、FlashAttentionとsoft_max間で古いprealloc_yバッファを再利用するバグが修正された。これにより、Vulkanシェーダーでの推論結果の不正が解消される。また、b11407リリースでは、Vulkanテストスイート実行時に未宣言の識別子が発生するビルドエラーも修正された。

なぜ重要か

推論結果の不正は、モデルの出力品質に直接影響する。特にMoEモデルやFlashAttentionを使用する際、この修正により正確な推論が保証される。

根拠のリンク

利用者の報告

Radeon 780M(gfx1103)ユーザーのSkimmenthal13は、CachyOS(kernel 7.2.8)、Mesa 26.2.4、RADVドライバー環境で、GLM-4.7-Flash Q4_K_MモデルをVulkanバックエンドで実行した際、コンテキストが長くなるとトークン生成速度が低下する問題を報告している。この問題はIssue #19081でも報告されていたが、iGPUの制限により自動クローズされていた。今回の修正により、この速度低下が解消される可能性がある。Issue #29965

Windows 11環境でRDNA4 GPU(RX 9070 XT)を使用するthevaprroomops-cmykは、Hermes Agentがピン留めしているllama.cpp Vulkanビルド(b10964)が、LM StudioのVulkanビルドと比較して約4倍遅い(7.4–8.0 tok/s vs 30.5 tok/s)と報告している。特に、GPUオフロード(-ngl 99)とCPU実行(-ngl 0)で速度差がない点が問題視されている。Hermes Agent Issue #133259

Linux Mint 22.3環境でRadeon 780M(Phoenix / gfx1103)を使用するPaco1960は、Unsloth StudioでVulkanバックエンドを用いてGGUF推論を試みた際、VulkanがGPUを正しく検知するも、モデル読み込み時にメモリ割り当てに失敗しErrorOutOfDeviceMemoryが発生すると報告している。環境はllama.cpp build 11160、Mesa 25.2.8、Vulkan API 1.3.275。Unsloth Issue #12695

Vulkan MoE expert ID重複時の計算不具合修正

前提

MoEモデルでは、複数の「専門家」が重複して選択されることがある。Vulkanバックエンドでは、これらの重複IDに対して行列計算(mul_mm_id)を正しく実行する必要がある。

何が変わったか

PR #29822により、入力IDに重複がある場合、各expertのすべての行に対して計算を実行するよう修正された。これにより、重複IDで計算がスキップされていた不具合が解消され、MoEモデルの出力品質が担保される。

なぜ重要か

MoEモデルを使用する際、expert IDの重複が原因で推論結果が不正になる問題を回避できる。特に、780Mのようなリソースが限られた環境では、正確な計算が重要。

根拠のリンク

利用者の報告

Radeon 780M(gfx1103)ユーザーのSkimmenthal13は、CachyOS(kernel 7.2.8)、Mesa 26.2.4、RADVドライバー環境で、GLM-4.7-Flash Q4_K_MモデルをVulkanバックエンドで実行した際、コンテキストが長くなるとトークン生成速度が低下する問題を報告している。この問題はIssue #19081でも報告されていたが、iGPUの制限により自動クローズされていた。今回の修正により、この速度低下が解消される可能性がある。Issue #29965

Windows 11環境でRDNA4 GPU(RX 9070 XT)を使用するthevaprroomops-cmykは、Hermes Agentがピン留めしているllama.cpp Vulkanビルド(b10964)が、LM StudioのVulkanビルドと比較して約4倍遅い(7.4–8.0 tok/s vs 30.5 tok/s)と報告している。特に、GPUオフロード(-ngl 99)とCPU実行(-ngl 0)で速度差がない点が問題視されている。Hermes Agent Issue #133259

Linux Mint 22.3環境でRadeon 780M(Phoenix / gfx1103)を使用するPaco1960は、Unsloth StudioでVulkanバックエンドを用いてGGUF推論を試みた際、VulkanがGPUを正しく検知するも、モデル読み込み時にメモリ割り当てに失敗しErrorOutOfDeviceMemoryが発生すると報告している。環境はllama.cpp build 11160、Mesa 25.2.8、Vulkan API 1.3.275。Unsloth Issue #12695

Vulkan FlashAttentionのVRAM最適化と780M向け機能リクエスト

前提

FlashAttentionは、VRAMの効率的な使用を目的としたAttention機構の実装。しかし、Vulkanバックエンドではタイルサイズに制限があり、頭部(heads)を適切にグループ化しないとVRAMを過剰に消費する可能性がある。

何が変わったか

Issue #29965で、Skimmenthal13がVulkanバックエンドのFlashAttentionにおいて、頭部を等しいグループに分割する機能リクエストを提出した。グループサイズは、qk_ratioの最大約数で、max_gqaを超えない値に設定される。これは、VRAMが限られたiGPU(特に780M)で大きなモデルを動かす際のボトルネックを解消するもの。

なぜ重要か

Radeon 780Mは共有メモリを使用するため、VRAMが限られる。FlashAttentionの頭部グループ化により、VRAM使用量が削減され、より大きなモデルや長いコンテキストを処理可能になる。

根拠のリンク

利用者の報告

Radeon 780M(gfx1103)ユーザーのSkimmenthal13は、CachyOS(kernel 7.2.8)、Mesa 26.2.4、RADVドライバー環境で、GLM-4.7-Flash Q4_K_MモデルをVulkanバックエンドで実行した際、コンテキストが長くなるとトークン生成速度が低下する問題を報告している。この問題はIssue #19081でも報告されていたが、iGPUの制限により自動クローズされていた。今回の修正により、この速度低下が解消される可能性がある。Issue #29965

Windows 11環境でRDNA4 GPU(RX 9070 XT)を使用するthevaprroomops-cmykは、Hermes Agentがピン留めしているllama.cpp Vulkanビルド(b10964)が、LM StudioのVulkanビルドと比較して約4倍遅い(7.4–8.0 tok/s vs 30.5 tok/s)と報告している。特に、GPUオフロード(-ngl 99)とCPU実行(-ngl 0)で速度差がない点が問題視されている。Hermes Agent Issue #133259

Linux Mint 22.3環境でRadeon 780M(Phoenix / gfx1103)を使用するPaco1960は、Unsloth StudioでVulkanバックエンドを用いてGGUF推論を試みた際、VulkanがGPUを正しく検知するも、モデル読み込み時にメモリ割り当てに失敗しErrorOutOfDeviceMemoryが発生すると報告している。環境はllama.cpp build 11160、Mesa 25.2.8、Vulkan API 1.3.275。Unsloth Issue #12695

Vulkan FWHTカーネルの高速化とブロック幅拡張

前提

FWHT(Fast Walsh-Hadamard Transform)は、Vulkanバックエンドで使用される変換演算。従来はF32のみ対応で、ブロック幅も512までだった。

何が変わったか

PR #29101により、FWHTがF16入力をサポートし、変換オーバーヘッドが削減された。また、PR #29772により、ブロック幅が64〜8192に拡張され、より広いHadamardブロックでも密なf32行列乗算にフォールバックしなくなった。

なぜ重要か

変換オーバーヘッドの削減と、より大きなブロック幅のサポートにより、Vulkanバックエンドの全GPUで推論速度が改善する可能性がある。

根拠のリンク

出典

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

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