llama.cppプロジェクトはバージョンb10456をリリースしました。このバージョンには、量子化コピーカーネルの実行におけるSYCLバックエンドの重要な修正が含まれています。

このアップデートでは、スレッド数とブロック数を量子化サイズに比例するように調整し、アンダーサブスクライブおよびオーバーサブスクライブの問題を効果的に軽減しています。

  • 量子化cpyカーネル実行のスレッド/ブロック数を修正(PR #27160)。
  • Arc 70におけるq4_0 -> f32パスのスループットが20.21 GB/sから158.19 GB/sに向上。
  • 他の量子化パスでも、一貫したパフォーマンスの向上が見られる。
  • CPU、CUDA、Vulkan、ROCm、OpenVINO、SYCLバックエンドに対応するバイナリがmacOS、Linux、Windows、Android、openEulerで利用可能。

この変更により、SYCLバックエンドを使用するIntel Arc GPUでのデータ転送効率が大幅に向上し、量子化演算における主要なパフォーマンスボトルネックが解消されました。