llama.cpp b11216リリースでは、512より大きいブロック幅をサポートするSYCLバックエンドにFast Walsh-Hadamard Transform (FWHT) カーネルが導入されました。以前は、より大きな幅はO(n^2)の複雑さを持つ密なGEMMにフォールバックしていましたが、この変更によりこれらのサイズでO(n log n)のパフォーマンスが可能になります。
- 新しい`fwht_kernel_wide`実装は1つのワークグループごとに1行を実行し、バタフライ演算を最適化するためにローカルメモリとレジスタを使用します。
- クロネッカー/ペイリー構成を通じて1024、2048、4096、および8192のブロック幅をサポートします。
- このリリースには、CPU、GPU、およびNPUバックエンド全体でmacOS、Linux、Windows、Android、openEuler用のバイナリが含まれています。
- 検証はIntel oneAPI DPC++ 2026.1 SYCL CPUデバイス上のスタンドアロンハーネスを使用して行われ、参照実装に対して正確性が確認されました。
このアップデートは、既存のハードウェア構成との互換性を維持しながら、SYCL環境での大きなブロックサイズに対する計算効率を向上させます。