llama.cppのリリースb11980では、q4_0およびq8_0の量子化キー・バリュー(KV)キャッシュを使ったデコード向けに、SYCLフラッシュアテンションカーネルが追加された。クエリトークン数が1~31のバッチを処理でき、呼び出しごとにスカラーで逆量子化したり、キャッシュ全体をf16に変換したりする必要がない。
リリースノートによると、Intel Arc B580でLlama 3.1 8B Q4_K_Mを実行し、q4_0キャッシュを使った場合、16Kコンテキストで毎秒54.2トークンに達し、従来の毎秒31.3トークンから向上した。これは特定の構成で得られた結果で、プロンプト処理には引き続き既存のカーネルが使われる。新しいカーネルはGGML_SYCL_FA_DPAS=0で無効にできる。
なぜ重要か
量子化キャッシュを使ってIntel Arc B580でデコードするユーザーは、検証された構成でトークン生成が速くなる可能性がある。一方、プロンプト処理やほかのハードウェアでも同様に高速化するという根拠は、リリースノートには示されていない。