Intel® oneAPI Math Kernel Library
Ask questions and share information with other developers who use Intel® Math Kernel Library.

Missing cblas_dzgemm

Marcus_W_1
Principiante
832Visualizzazioni

Hi,

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,

Markus

0 Kudos
5 Risposte
Chao_Y_Intel
Moderatore
832Visualizzazioni

Markus,

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?

Thanks,
Chao

TimP
Collaboratore onorario III
832Visualizzazioni

Is this different from cblas_zgemm() ?

Marcus_W_1
Principiante
832Visualizzazioni

Hi,

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,

Markus

Chao_Y_Intel
Moderatore
832Visualizzazioni

Markus,

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.

thanks,
chao

Ying_H_Intel
Dipendente
832Visualizzazioni

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.

Thanks

Ying

Rispondere