Developer Guide

  • 2021.1
  • 12/04/2020
  • Public Content
Contents

Call Description Line

In
Intel® oneAPI Math Kernel Library
Verbose mode, each verbose-enabled function called from your application prints a call description line. The line begins with the
MKL_VERBOSE
character string and uses spaces as delimiters. The format of the rest of the line may change in a future release.
The following table lists information contained in a call description line and provides available links for more information:
Information
Description
Related Links
The name of the function.
Although the name printed may differ from the name used in the source code of the application (for example, the
cblas_
prefix of CBLAS functions is not printed), you can easily recognize the function by the printed name.
Values of the arguments.
  • The values are listed in the order of the formal argument list. The list directly follows the function name, it is parenthesized and comma-separated.
  • Arrays are printed as addresses (to see the alignment of the data).
  • Integer scalar parameters passed by reference are printed by value. Zero values are printed for
    NULL
    references.
  • Character values are printed without quotes.
  • For all parameters passed by reference, the values printed are the values
    returned by the function
    . For example, the printed value of the
    info
    parameter of a LAPACK function is its value after the function execution.
  • For verbose-enabled functions in the ScaLAPACK domain, in addition to the standard input parameters, information about blocking factors, MPI rank, and process grid is also printed.
Time taken by the function.
  • The time is printed in convenient units (seconds, milliseconds, and so on), which are explicitly indicated.
  • The time may fluctuate from run to run.
  • The time printed may occasionally be larger than the time actually taken by the function call, especially for small problem sizes and multi-socket machines.
    To reduce this effect, bind threads that call
    Intel® oneAPI Math Kernel Library
    to CPU cores by setting an affinity mask.
Managing Multi-core Performance for options to set an affinity mask.
Value of the
MKL_CBWR
environment variable.
The value printed is prefixed with
CNR:
Value of the
MKL_DYNAMIC
environment variable.
The value printed is prefixed with
Dyn:
Status of the
Intel® oneAPI Math Kernel Library
memory manager.
The value printed is prefixed with
FastMM:
Avoiding Memory Leaks in
oneMKL
for a description of the
Intel® oneAPI Math Kernel Library
memory manager
OpenMP* thread number of the calling thread.
The value printed is prefixed with
TID:
Values of
Intel® oneAPI Math Kernel Library
environment variables defining the general and domain-specific numbers of threads, separated by a comma.
The first value printed is prefixed with
NThr:
The following is an example of a call description line:
MKL_VERBOSE DGEMM(n,n,1000,1000,240,0x7ffff708bb30,0x7ff2aea4c000,1000,0x7ff28e92b000,240,0x7ffff708bb38,0x7ff28e08d000,1000) 1.66ms CNR:OFF Dyn:1 FastMM:1 TID:0 NThr:16,FFT:2
The following information is not printed because of limitations of
Intel® oneAPI Math Kernel Library
Verbose mode:
  • Input values of parameters passed by reference if the values were changed by the function.
    For example, if a LAPACK function is called with a workspace query, that is, the value of the
    lwork
    parameter equals -1 on input, the call description line prints the result of the query and not -1.
  • Return values of functions.
    For example, the value returned by the function
    ilaenv
    is not printed.
  • Floating-point scalars passed by reference.

Product and Performance Information

1

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