• 2020
  • 04/01/2020
  • Public Content
Contents

Dynamically Selecting the Interface and Threading Layer

The Single Dynamic Library (SDL) enables you to dynamically select the interface and threading layer for
Intel® MKL
.

Setting the Interface Layer

To set the interface layer at run time, use the
mkl_set_interface_layer
function or the
MKL_INTERFACE_LAYER
environment variable.
Available interface layers depend on the architecture of your system.
The following table lists available interface layers for Intel® 64 architecture along with the values to be used to set each layer.
Specifying the Interface Layer
for Intel® 64 Architecture
Interface Layer
Value of
MKL_INTERFACE_LAYER
Value of the Parameter of
mkl_set_interface_layer
Intel LP64, default
LP64
MKL_INTERFACE_LP64
Intel ILP64
ILP64
MKL_INTERFACE_ILP64
GNU* LP64
GNU,LP64
MKL_INTERFACE_LP64+MKL_INTERFACE_GNU
GNU ILP64
GNU,ILP64
MKL_INTERFACE_ILP64+MKL_INTERFACE_GNU
If the
mkl_set_interface_layer
function is called, the environment variable
MKL_INTERFACE_LAYER
is ignored.
See the
Intel® MKL
Developer Reference
for details of the
mkl_set_interface_layer
function.
The following table lists available interface layers for IA-32 architecture along with the values to be used to set each layer.
Specifying the Interface Layer for IA-32 Architecture
Interface Layer
Value of
MKL_INTERFACE_LAYER
Value of the Parameter of
mkl_set_interface_layer
Intel, default
LP64
MKL_INTERFACE_LP64
GNU
GNU,LP64
or
GNU
MKL_INTERFACE_LP64+MKL_INTERFACE_GNU
or
MKL_INTERFACE_GNU

Setting the Threading Layer

To set the threading layer at run time, use the
mkl_set_threading_layer
function or the
MKL_THREADING_LAYER
environment variable. The following table lists available threading layers along with the values to be used to set each layer.
Specifying the Threading Layer
Threading Layer
Value of
MKL_THREADING_LAYER
Value of the Parameter of
mkl_set_threading_layer
Intel threading, default
INTEL
MKL_THREADING_INTEL
Sequential mode of
Intel® MKL
SEQUENTIAL
MKL_THREADING_SEQUENTIAL
GNU threading
GNU
MKL_THREADING_GNU
PGI threading
PGI
MKL_THREADING_PGI
Intel TBB threading
TBB
MKL_THREADING_TBB
Not supported by the SDL for Intel® Many Integrated Core Architecture.
If the
mkl_set_threading_layer
function is called, the environment variable
MKL_THREADING_LAYER
is ignored.
See the
Intel® MKL
Developer Reference
for details of the
mkl_set_threading_layer
function.
1

Product and Performance Information

1

Intel's compilers may or may not optimize to the same degree for non-Intel microprocessors for optimizations that are not unique to Intel microprocessors. These optimizations include SSE2, SSE3, and SSSE3 instruction sets and other optimizations. Intel does not guarantee the availability, functionality, or effectiveness of any optimization on microprocessors not manufactured by Intel. Microprocessor-dependent optimizations in this product are intended for use with Intel microprocessors. Certain optimizations not specific to Intel microarchitecture are reserverd for Intel microprocessors. Please refer to the applicable product User and Reference Guides for more information regarding the specific instruction sets covered by this notice.

Notice revision #20110804