Visible to Intel only — GUID: GUID-F23EC9A6-2FD2-4248-BC9A-7D9407F1FB85
Visible to Intel only — GUID: GUID-F23EC9A6-2FD2-4248-BC9A-7D9407F1FB85
mkl_set_memory_limit
On Linux, sets the limit of memory that Intel® oneAPI Math Kernel Library can allocate for a specified type of memory.
int mkl_set_memory_limit (int mem_type, size_t limit);
- mkl.h
Name |
Type |
Description |
---|---|---|
mem_type |
int |
Type of memory to limit. Possible values: MKL_MEM_MCDRAM - Multi-Channel Dynamic Random Access Memory (MCDRAM) (for more details, see https://software.intel.com/content/www/us/en/develop/articles/mcdram-high-bandwidth-memory-on-knights-landing-analysis-methods-tools.html). |
limit |
size_t |
Memory limit in megabytes. |
This function sets the limit for the amount of memory that Intel® oneAPI Math Kernel Library can allocate for the specified memory type. The limit bounds both internal allocations (inside Intel® oneAPI Math Kernel Library computation routines) and external allocations (in a call tomkl_malloc, mkl_calloc, or mkl_realloc). By default no limit is set for memory allocation.
Call mkl_set_memory_limitat most once, prior to calling any other Intel® oneAPI Math Kernel Library function in your application except mkl_set_interface_layer and mkl_set_threading_layer.
- Allocation in MCDRAM requires libmemkind and libjemalloc dynamic libraries which are a part of Intel® Manycore Platform Software Package (Intel® MPSP) for Linux*.
The mkl_set_memory_limit function takes precedence over the MKL_FAST_MEMORY_LIMIT environment variable.
Type |
Description |
---|---|
int |
Status of the function completion:
|