Developer Reference for Intel® oneAPI Math Kernel Library for C

ID 766684
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_mpi

Sets the implementation of the message-passing interface to be used by Intel® oneAPI Math Kernel Library (oneMKL).

Syntax

int mkl_set_mpi (int vendor, const char *custom_library_name);

Include Files

  • mkl.h

Input Parameters

Name

Type

Description

vendor

int

Specifies the implementation of the message-passing interface (MPI) to use:

Possible values:

  • MKL_BLACS_CUSTOM - a custom MPI library. Requires a prebuilt custom MPI BLACS library.

  • MKL_BLACS_MSMPI - Microsoft MPI library.

  • MKL_BLACS_INTELMPI - Intel® MPI library.

  • MKL_BLACS_MPICH - MPICH MPI library.

custom_library_namevendor

const char *

The filename (without a directory name) of the custom BLACS dynamic library to use. This library must be located in the directory with your application executable or with Intel® oneAPI Math Kernel Library (oneMKL) dynamic libraries. Can beNULL or an empty string.

Description

Call this function to set the MPI implementation to be used by Intel® oneAPI Math Kernel Library (oneMKL) on Windows* OS when dynamic Intel® oneAPI Math Kernel Library (oneMKL) libraries are used. For all other configurations, the function returns an error indicating that you cannot set the MPI implementation. You can specify your own prebuilt dynamic BLACS library for a custom MPI by settingvendor to MKL_BLACS_CUSTOM and optionally passing the name of the custom BLACS dynamic library. If the custom_library_path parameter is NULLor an empty string, Intel® oneAPI Math Kernel Library (oneMKL) uses the default platform-specific library name:mkl_blacs_custom_lp64.dll or mkl_blacs_custom_ilp64.dll, depending on whether the BLACS interface linked against your application is LP64 or ILP64.

Return Values

Name

Type

Description

status

int

The return status:

  • 0 - The function completed successfully.

  • -1 - The vendor parameter is invalid.

  • -2 - The custom_library_name parameter is invalid.

  • -3 - The MPI library cannot be set at this point.

Product and Performance Information

Performance varies by use, configuration and other factors. Learn more at www.Intel.com/PerformanceIndex.

Notice revision #20201201