Developer Guide

Developer Guide for Intel® oneAPI Math Kernel Library macOS*

ID 766688
Date 11/07/2023
Document Table of Contents

Specifying Function Names

In the file with the list of functions for your custom dynamically linked shared library, adjust function names to the required interface. For example, for Fortran functions append an underscore character "_" to the names as a suffix:




For more examples, see domain-specific lists of functions in the <mkl directory>/tools/builder folder.


The lists of functions are provided in the <mkl directory>/tools/builder folder merely as examples. See Composing a List of Functions for how to compose lists of functions for your custom dynamically linked shared library.


Names of Fortran-style routines (BLAS, LAPACK, etc.) can be upper-case, lower-case, or lower-case with the trailing underscore. For example, these names are equivalent:
BLAS: dgemm, DGEMM, dgemm_.
LAPACK: dgetrf, DGETRF, dgetrf_.

Properly capitalize names of C support functions in the function list. To do this, follow the guidelines below:

  1. In the mkl_service.h include file, look up a #define directive for your function
    (mkl_service.h is included in the mkl.h header file).
  2. Take the function name from the replacement part of that directive.

For example, the #define directive for the mkl_disable_fast_mm function is
#define mkl_disable_fast_mm MKL_Disable_Fast_MM.

Capitalize the name of this function in the list like this: MKL_Disable_Fast_MM.

For the names of the Fortran support functions, see the tip.


If selected functions have several processor-specific versions, the builder automatically includes them all in the custom library and the dispatcher manages them.

Product and Performance Information

Performance varies by use, configuration and other factors. Learn more at

Notice revision #20201201