Missing cblas_dzgemm

Missing cblas_dzgemm


the documentation of the MKL Library contains the description of the method DZGEMM which is not part of the BLAS Level 3 standard. It seems that the MKL Library contains the Fortran implementation only, is there a reason why a corresponding 'cblas_dzgemm' function is not available?

Kind regards,


6 posts / 0 new
Last post
For more complete information about compiler optimizations, see our Optimization Notice.


Currently, only the Fortran implementation are supported. If the data is column major, it can also be called by the C code with the following function:

void DZGEMM(const char *transa, const char *transb, const MKL_INT *m, const MKL_INT *n, const MKL_INT *k, const MKL_Complex16 *alpha, const double *a, const MKL_INT *lda, const MKL_Complex16 *b, const MKL_INT *ldb, const MKL_Complex16 *beta, MKL_Complex16 *c, const MKL_INT *ldc);

do you want to add a feature request on cblas interface support on this function as well?


Is this different from cblas_zgemm() ?


dzgemm is similar to zgemm but not identically. Matrix A of the operation C := \alpha * op(A) * op(B) + \beta *C contains real numbers in dzgemm, for zgemm complex numbers are assumed. In theory zgemm is more general than dzgemm but one has to cast each element of matrix A to a complex number and to store the results in a working array before calling zgemm.

dzgemm is not part of the BLAS standard, the MKL library supports the Fortran implementation only. It should be an easy task to add the C interface cblas_dzgemm as well. How can I add a feature request for cblas_dzgemm?

Thanks for your reply and rapid response,



I added one feature request into our internal database on this, so it will be reviewed during the future product planning. Thanks for the report.


Hi Markus,

The request was recorded in to DPD200331505  add a  c interface for dzgemm. 

As you know, our product definition review the request and decide if implement or not based on product develop plan. Not all of the request will be implemented.  

I review the record.  As there is workaround  as chao mentioned ( call dzgemm (&n, &alphas, A .. etc), the C interface are not needed, we got only one request since that time,  so it is still open for stronger justification like more user asked.  Do you still need the feature?   If yes, could you please share more info about your project and the feature impact. If it is related to private info, you can send us private message.



Leave a Comment

Please sign in to add a comment. Not a member? Join today