Developer Guide

Contents

Using
oneMKL
Verbose Mode

When building applications that call
Intel® oneAPI Math Kernel Library
functions, it may be useful to determine:
  • which computational functions are called,
  • what parameters are passed to them, and
  • how much time is spent to execute the functions.
You can get an application to print this information to a standard output device by enabling
Intel® oneAPI Math Kernel Library
Verbose. Functions that can print this information are referred to as
verbose-enabled functions
.
When Verbose mode is activein an
Intel® oneAPI Math Kernel Library
domain, every call of a verbose-enabled function finishes with printing a human-readable line describing the call. However, if your application gets terminated for some reason during the function call, no information for that function will be printed. The first call to a verbose-enabled function also prints a version information line.
To enable the
Intel® oneAPI Math Kernel Library
Verbose mode for an application, do
one of the following:
  • set the environment variable
    MKL_VERBOSE
    to 1, or
  • call the support function
    mkl_verbose
    (1).
To disable the
Intel® oneAPI Math Kernel Library
Verbose mode,call the
mkl_verbose
(0) function.Both enabling and disabling of the Verbose mode using the function call takes precedence over the environment setting. For a full description of the
mkl_verbose
function, see either the
Intel® oneAPI Math Kernel Library
Developer Reference for C
or the
Intel® oneAPI Math Kernel Library
Developer Reference for Fortran.
Both references are available in the Intel® Software Documentation Library.
You can enable
Intel® oneAPI Math Kernel Library
Verbose mode in these domains:
  • BLAS
  • LAPACK
  • ScaLAPACK (selected functionality)
  • FFT
Intel® oneAPI Math Kernel Library
Verbose mode is not a thread-local but a global state. In other words, if an application changes the mode from multiple threads, the result is undefined.
The performance of an application may degrade with the Verbose mode enabled, especially when the number of calls to verbose-enabled functions is large, because every call to a verbose-enabled function requires an output operation.

Product and Performance Information

1

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