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_peak_mem_usage

Reports the peak memory allocated by the Intel® oneAPI Math Kernel Library (oneMKL) Memory Allocator.

Syntax

MKL_INT64 mkl_peak_mem_usage (intmode);

Include Files

  • mkl.h

Input Parameters

Name

Type

Description

mode

int

Requested mode of the function's operation. Possible values:

  • MKL_PEAK_MEM_ENABLE - start gathering the peak memory data

  • MKL_PEAK_MEM_DISABLE - stop gathering the peak memory data

  • MKL_PEAK_MEM - return the peak memory

  • MKL_PEAK_MEM_RESET - return the peak memory and reset the counter to start gathering the peak memory data from scratch

Description

The mkl_peak_mem_usagefunction reports the peak memory allocated by the Intel® oneAPI Math Kernel Library (oneMKL) Memory Allocator.

Gathering the peak memory data is turned off by default. If you need to know the peak memory, explicitly turn the data gathering mode on by calling the function with the MKL_PEAK_MEM_ENABLE value of the parameter. Use the MKL_PEAK_MEM and MKL_PEAK_MEM_RESET values only when the data gathering mode is turned on. Otherwise the function returns -1. The data gathering mode leads to performance degradation, so when the mode is turned on, you can turn it off by calling the function with the MKL_PEAK_MEM_DISABLE value of the parameter.

NOTE:
  • If Intel® oneAPI Math Kernel Library (oneMKL) is running in a threaded mode, themkl_peak_mem_usage function may return different amounts of memory from run to run.

  • The function reports the peak memory for the entire application, not just for the calling thread.

Return Values

Name

Type

Description

AllocatedBytes

MKL_INT64

The peak memory allocated by the Memory Allocator (in bytes) or -1 in case of errors.