Community
cancel
Showing results for 
Search instead for 
Did you mean: 
r-david-cantwell
Beginner
86 Views

call to gemm( ) for matrix multiply will not compile

I am trying to investigate the MKL for use at my work and tried to compile an example for matrix multiplication but got the compile error

"1>C:\\home\\GPOPS\\correspond\\Spline\\src\\TTFS.f90(91): error #8032: Generic procedure reference has two or more specific procedure with the same type/rank/keyword signature. [GEMM]"

I got the compile error trying to call gemm() to multiply two matrices, so I fell back to an example, but I got the identical error. The example file was "dgemmx.f90". I included the files "blas.f90" and "mkl_blas.fi" in the project. Has anyone out there encountered this and made it work? Any help is appreciated.

David C.

0 Kudos
2 Replies
TimP
Black Belt
86 Views

You should include the MKL lapack95 .mod file by
USE MKL_LAPACK95
and avoid any INCLUDE usage of BLAS function declarations.
There should be no specific GEMM definition.
mecej4
Black Belt
86 Views

> I included the files "blas.f90" and "mkl_blas.fi" in the project.

The effect of doing so, in these circumstances, is : NOTHING.

Including the first file in the project may cause some module files to be produced, but these are already present in the system include directories. The latter is not a separately compilable file and, if no INCLUDE 'mkl_blas.fi' is present in any of your sources, plays no role in the build.

Read the MKL documentation for information on how to make the BLAS and Lapack interfaces available to your Fortran programs.

To build and run the "dgemmx" example, you have to add common_func.f and mkl_blas95.lib to your project.
Reply