Intel® oneAPI Math Kernel Library (oneMKL) Link Line Advisor v6.23   
Select Intel® product:
Select OS:
Select usage model of Intel® Xeon Phi™ Coprocessor:
Select programming language:
Select compiler:
Select architecture:
Select dynamic or static linking:
Select interface layer:
Select threading layer:
Select OpenMP library:
Enable OpenMP offload feature to GPU:
Select cluster library: Parallel Direct Sparse Solver for Clusters (BLACS required)
Cluster Discrete Fast Fourier Transform (BLACS required)
ScaLAPACK (BLACS required)
BLACS
Select MPI library:
Select the Fortran 95 interfaces: BLAS95
LAPACK95
Select SYCL domain library:
Link with Intel® oneMKL libraries explicitly:
Link with DPC++ debug runtime compatible libraries:

Use this link line:

Compiler options:

Notes:
o Set INCLUDE, MKLROOT, TBBROOT, LD_LIBRARY_PATH, LIBRARY_PATH, CPATH and NLSPATH environment variables in the command shell using the Intel(R) oneAPI setvars script in Intel(R) oneAPI root directory. Please also see the Intel(R) oneMKL Developer Guide.
o Set PATH, LIB, INCLUDE, MKLROOT and TBBROOT environment variables in the command shell using the Intel(R) oneAPI setvars script in Intel(R) oneAPI root directory. Please also see the Intel(R) oneMKL Developer Guide.
o Set the INCLUDE, MKLROOT, LD_LIBRARY_PATH, LIBRARY_PATH, CPATH and NLSPATH environment variables in the command shell using one of mklvars script files in the 'bin' subdirectory of the Intel(R) MKL installation directory. Please see also the Intel(R) oneMKL Developer Guide.
o Set the MIC_LD_LIBRARY_PATH environment variable using one of mklvars script files in the 'bin' subdirectory of the Intel(R) MKL installation directory. Please see also the Intel(R) oneMKL Developer Guide.
o Set the LD_LIBRARY_PATH environment variable using one of mklvars script files in the 'bin' subdirectory of the Intel(R) MKL installation directory. Please see also the Intel(R) oneMKL Developer Guide.
o Set the environment variable: MKL_MIC_ENABLE=1
o Using non-Intel compiler in Automatic Offload mode is possible only when there are no OMP directives in application's code
o Set the INCLUDE, MKLROOT, DYLD_LIBRARY_PATH, LIBRARY_PATH, CPATH and NLSPATH environment variables in the command shell using one of mklvars script files in the 'bin' subdirectory of the Intel(R) MKL installation directory. Please see also the Intel(R) oneMKL Developer Guide.
o Set the PATH, LIB and INCLUDE environment variables in the command shell using one of mklvars script files in the 'bin' subdirectory of the Intel(R) MKL installation directory. Please see also the Intel(R) oneMKL Developer Guide.
o Set the INCLUDE, MKLROOT, LD_LIBRARY_PATH, LIBRARY_PATH, CPATH and NLSPATH environment variables in the command shell using one of mklvars script files in the 'tools/environment' subdirectory of the Intel(R) MKL installation directory. Please see also the Intel(R) oneMKL Developer Guide.
o Set the INCLUDE, MKLROOT, DYLD_LIBRARY_PATH, LIBRARY_PATH, CPATH and NLSPATH environment variables in the command shell using one of mklvars script files in the 'tools/environment' subdirectory of the Intel(R) MKL installation directory. Please see also the Intel(R) oneMKL Developer Guide.
o Set the PATH, LIB and INCLUDE environment variables in the command shell using one of mklvars script files in the 'tools/environment' subdirectory of the Intel(R) MKL installation directory. Please see also the Intel(R) oneMKL Developer Guide.
o You may remove libraries with 'solver' in the name from the link line if you do not use the iterative solver or GMP domain.
o To set the threading layer at run time, use the mkl_set_threading_layer function or set MKL_THREADING_LAYER variable to one of the following values:INTEL, TBB, SEQUENTIAL, PGI. To set interface layer at run time, use the mkl_set_interface_layer function or set the MKL_INTERFACE_LAYER variable to LP64 or ILP64. Please see also the Intel(R) oneMKL Developer Guide.
o Please be sure that you have used the recommended compiler options for the selected interface layer. Caution: linking Intel(R) MKL libraries with your objects compiled for different interface layer may lead to run-time errors.
o Set the F95ROOT variable. Fortran 95 interfaces are compiler-dependent. The Fortran 95 interfaces and wrappers are delivered as sources, build the appropriate library and modules with your compiler. Please see also the Intel(R) oneMKL Developer Guide.
o If you are using a non-default MPI, assign the same appropriate value to MKL_BLACS_MPI on all nodes. Set MKL_BLACS_MPI variable to one of the following values: INTELMPI or MSMPI.
o Support of MPICH1 is deprecated and will be removed starting from Intel(R) MKL 2017.
o This compiler/link line options are provided for dpcpp driver. You may need to add other options if you choose to use another driver.
o Check release notes for current openMP offload feature limitations. This compiler/link line options are provided for icx driver.
o Some domains provide special 64-bit integer API with _64 suffix that can be mixed with 32-bit integer API. Check Using the ILP64 Interface vs. LP64 Interface for more details.
o Vector Math and Random Number Generator functions do not support OpenMP Offload using Single Dynamic Library linking yet.
o "dispatch" construct from OpenMP API Specification 5.1 requires the extra option "-fopenmp-version=51".
o PGI support is deprecated and will be removed in the oneMKL 2025.0 release.
o Compiler option qmkl does not yet support selection for oneMKL domain specific SYCL dynamic libraries, all libraries are linked instead.
o IA-32 support is deprecated and will be removed in the oneMKL 2025.0 release.