19 const float *A,
int lda,
20 const float *B,
int ldb,
25 for (
int i = 0; i < M; ++i) {
26 const float *a_row = A + (size_t)i * lda;
27 float *c_row =
C + (size_t)i * ldc;
28 for (
int j = 0; j < N; ++j) {
29 float sum = bias ? bias[j] : 0.0f;
30 const float *b_row = B + (size_t)j * ldb;
31 for (
int k = 0; k < K; ++k) {
32 sum += a_row[k] * b_row[k];
CKMathBackend ckernel_backend_native(void)
static void ckernel_sgemm_native(int M, int N, int K, const float *A, int lda, const float *B, int ldb, const float *bias, float *C, int ldc)
void(* sgemm)(int M, int N, int K, const float *A, int lda, const float *B, int ldb, const float *bias, float *C, int ldc)