Math Kernel Library Developer Guide
The following examples of code and link lines show how to activate direct calls to Intel® oneAPI Math Kernel Library kernels in Fortran applications:
Include mkl_direct_call.fi, to be preprocessed by the Fortran compiler preprocessor
# include "mkl_direct_call.fi"
program DGEMM_MAIN
....
* Call Intel MKL DGEMM
....
call sub1()
stop 1
end
* A subroutine that calls DGEMM
subroutine sub1
* Call Intel MKL DGEMM
end
For multi-threaded Intel® oneAPI Math Kernel Library, compile with-fpp option for Intel Fortran compiler and with MKL_DIRECT_CALL preprocessor macro:
ifort –DMKL_DIRECT_CALL –fpp your_application.f -Wl,--start-group $(MKLROOT)/lib/intel64/libmkl_intel_lp64.a
$(MKLROOT)/lib/intel64/libmkl_core.a $(MKLROOT)/lib/intel64/libmkl_intel_thread.a -Wl,--end-group -lpthread –lm -openmp -I$(MKLROOT)/include
To use Intel® oneAPI Math Kernel Library in the sequential mode, compile with-fpp option for Intel Fortran compiler (or with -Mpreprocess for PGI compilers) and with MKL_DIRECT_CALL_SEQ preprocessor macro:
ifort –DMKL_DIRECT_CALL_SEQ –fpp your_application.f -Wl,--start-group $(MKLROOT)/lib/intel64/libmkl_intel_lp64.a
$(MKLROOT)/lib/intel64/libmkl_core.a $(MKLROOT)/lib/intel64/libmkl_sequential.a -Wl,--end-group -lpthread –lm -I$(MKLROOT)/include
Product and Performance Information |
---|
Performance varies by use, configuration and other factors. Learn more at www.Intel.com/PerformanceIndex. Notice revision #20201201 |