Developer Guide

Developer Guide for Intel® oneAPI Math Kernel Library Windows*

ID 766692
Date 3/31/2025
Public
Document Table of Contents

Using MKL_DIRECT_CALL in Fortran Applications

The following examples of code and link lines show how to activate direct calls to Intel® oneAPI Math Kernel Library (oneMKL) 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 (oneMKL), compile with/fpp option for Intel® Fortran compiler and with MKL_DIRECT_CALL preprocessor macro:

    ifx /DMKL_DIRECT_CALL /fpp your_application.f mkl_intel_lp64.lib mkl_core.lib mkl_intel_thread.lib /Qopenmp -I%MKLROOT%/include
  • To use Intel® oneAPI Math Kernel Library (oneMKL) in the sequential mode, compile with/fpp option for Intel® Fortran compiler and with MKL_DIRECT_CALL_SEQ preprocessor macro:

    ifx /DMKL_DIRECT_CALL_SEQ /fpp your_application.f mkl_intel_lp64.lib mkl_core.lib mkl_sequential.lib -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