Developer Reference for Intel® oneAPI Math Kernel Library for Fortran

ID 766686
Date 6/24/2024
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

AllocatedBytes = mkl_peak_mem_usage( mode )

Fortran Include Files/Modules

  • Include file: mkl.fi
  • Module (compiled): mkl_service.mod
  • Module (source): mkl_service.f90

Input Parameters

Name

Type

Description

mode

INTEGER*4

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

INTEGER*8

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