24 std::vector<int> batch_shape,
25 std::vector<size_t> batch_strides,
26 size_t A_batch_stride,
27 size_t B_batch_stride,
28 size_t matrix_stride_out,
29 std::vector<array>& copies);
45 std::vector<array>& copies,
46 std::vector<int> batch_shape = {},
47 std::vector<size_t> A_batch_stride = {},
48 std::vector<size_t> B_batch_stride = {});
void steel_matmul_regular(const Stream &s, metal::Device &d, const array &a, const array &b, array &out, int M, int N, int K, int batch_size_out, int lda, int ldb, int ldd, bool transpose_a, bool transpose_b, std::vector< int > batch_shape, std::vector< size_t > batch_strides, size_t A_batch_stride, size_t B_batch_stride, size_t matrix_stride_out, std::vector< array > &copies)
void steel_matmul(const Stream &s, metal::Device &d, const array &a, const array &b, array &out, int M, int N, int K, int batch_size_out, int lda, int ldb, bool transpose_a, bool transpose_b, std::vector< array > &copies, std::vector< int > batch_shape={}, std::vector< size_t > A_batch_stride={}, std::vector< size_t > B_batch_stride={})