2016-11-19 6 views
0

Ich versuchte MKL cblas_dgemm zu berechnen Matrix-Matrix-Multiplikation zu verwenden.mkl cblas_dgemm falsche Parameter

Wie ich weiß, lda, ldb, ldc sollte die Anzahl der Spalten für einfache Zeile Hauptmatrix sein. Ich habe versucht, folgendes zu tun:

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 

aber es gab mir eine Fehlermeldung und c wird nicht aktualisiert.

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

Parameter 9 ist lda

was mit meinem Code falsch?

+1

Sie angegebene Dimension kommentierte falsch ist, die drei Dimension Argumente 'm',' n', 'k'. –

+0

OH !!! Ich war sooooooo dumm! – Dohyun

Antwort

0

Ich lag falsch. Das Argument Bestellung ist m,n,k wie oben