llama.cpp リリース b10676 は、`conv_transpose_2d` のバグを修正しました。このバグでは最初のバッチのみが計算され、以降のバッチがゼロのままになっていました。この修正はコア ggml ライブラリと Metal バックエンドの実装の両方に適用されます。
- ggml: ソースの置換と計算ループはバッチ次元を反復し、ワークバッファサイズはバッチ数でスケーリングされます。
- Metal: カーネルグリッドはすべてのバッチをカバーし、z座標からバッチインデックスをデコードして入力および宛先インデックスをオフセットします。
- 修正を検証するために `test-backend-ops` にマルチバッチテストケースが追加されました。
これにより、CPU および GPU バックエンド間でマルチバッチ畳み込み結果が正しくなります。