llama.cpp リリース b10676 は、`conv_transpose_2d` のバグを修正しました。このバグでは最初のバッチのみが計算され、以降のバッチがゼロのままになっていました。この修正はコア ggml ライブラリと Metal バックエンドの実装の両方に適用されます。

  • ggml: ソースの置換と計算ループはバッチ次元を反復し、ワークバッファサイズはバッチ数でスケーリングされます。
  • Metal: カーネルグリッドはすべてのバッチをカバーし、z座標からバッチインデックスをデコードして入力および宛先インデックスをオフセットします。
  • 修正を検証するために `test-backend-ops` にマルチバッチテストケースが追加されました。

これにより、CPU および GPU バックエンド間でマルチバッチ畳み込み結果が正しくなります。