Developer Reference for Intel® oneAPI Math Kernel Library for Fortran

ID 766686
Date 11/07/2023
Public

A newer version of this document is available. Customers should click here to go to the newest version.

Document Table of Contents

mkl_set_interface_layer

Sets the interface layer for Intel® oneAPI Math Kernel Library (oneMKL) at run time. Use with the Single Dynamic Library.

Syntax

interface = mkl_set_interface_layer( required_interface )

Fortran Include Files/Modules

  • Include file: mkl.fi
  • Module (compiled): mkl_service.mod
  • Module (source): mkl_service.f90

Input Parameters

Name

Type

Description

required_interface

INTEGER

Determines the interface layer. Possible values depend on the system architecture. Some of the values are only available on Linux* OS:

  • Intel® 64 architecture:

    MKL_INTERFACE_LP64 for the Intel LP64 interface.

    MKL_INTERFACE_ILP64 for the Intel ILP64 interface.

    MKL_INTERFACE_LP64+MKL_INTERFACE_GNU for the GNU* LP64 interface on Linux OS.

    MKL_INTERFACE_ILP64+MKL_INTERFACE_GNU for the GNU ILP64 interface on Linux OS.

  • IA-32 architecture:

    MKL_INTERFACE_LP64 for the Intel interface on Linux OS.

    MKL_INTERFACE_LP64+MKL_INTERFACE_GNU or

    MKL_INTERFACE_GNU for the GNU interface on Linux OS.

Description

If you are using the Single Dynamic Library (SDL), the mkl_set_interface_layerfunction sets the specified interface layer for Intel® oneAPI Math Kernel Library (oneMKL) at run time.

Call this function prior to calling any other Intel® oneAPI Math Kernel Library (oneMKL) function in your application exceptmkl_set_threading_layer. You can call mkl_set_interface_layer and mkl_set_threading_layer in any order.

The mkl_set_interface_layer function takes precedence over the MKL_INTERFACE_LAYER environment variable.

See Intel® oneAPI Math Kernel Library (oneMKL) Developer Guide for the layered model concept and usage details of the SDL.

Return Values

Type

Description

INTEGER

  • Current interface layer if it is set in a call to mkl_set_interface_layer or specified by environment variables or defaults.

    Possible values are specified in Input Parameters.

  • -1, if the layer was not specified prior to the call and the input parameter is incorrect.