llama.cppプロジェクトはビルドb10863をリリースしました。これは、`ne00`が1024未満の場合にMetal上の`mul_mv_iq3_xxs`カーネルでアイドルスレッドの問題を修正したものです。この更新では、特定の行列次元に対して個別の分割カーネルを導入することで、半分のアイドル状態となるsimdgroupの問題に対処しています。
- `ne00 < 1024`の場合の`kernel_mul_mv_iq3_xxs_f32`における半分のアイドル状態のsimdgroupを修正。
- `N_R0_IQ3_XXS = 4`を維持し、`ne00/32 < 32`かつ32で割り切れる場合に、8行の分割カーネルをディスパッチ。
- 個別のカーネルインスタンス化の代わりに関数定数を使用して`iq3_xxs`の行分割を選択。
このリリースでは、CPU、CUDA、ROCm、Vulkan、OpenVINOを含むさまざまなハードウェアバックエンド向けに、macOS、iOS、Linux、Android、Windows、openEuler用のバイナリが提供されています。