1

我尝试使用 mklcblas_dgemm来计算矩阵矩阵乘法。

据我所知,lda, ldb,ldc应该是简单行主矩阵的列数。我尝试执行以下操作:

double a[3 * 2] = { 1,2,3,4,5,6 };      // 3 x 2 matrix
double b[2 * 4] = { 1,2,3,4,5,6,7,8 };  // 2 x 4 matrix
double c[3 * 4] = { 0, };               // 3 x 4 matrix

// c <- 1.0 * (a*b) + 0.0 * c
cblas_dgemm(CblasRowMajor, CblasNoTrans, CblasNoTrans, 3, 2, 4, 1.0, a, 2, b, 4, 0.0, c, 4);
//            rowmajor       no trans      no trans    m  k  n  alph A lda B ldb beta C ldc

但它给了我一条错误消息并且c没有更新。

Intel MKL ERROR: Parameter 9 was incorrect on entry to cblas_dgemm.

参数 9 是lda

我的代码有什么问题?

4

1 回答 1

1

我错了。参数排序m,n,k如上所述

于 2016-11-19T07:16:34.520 回答