mkl-service

This package exposes a few functions which are declared in mkl_service.h. The main purpose of the package is to allow the user to change the number of CPU’s MKL is using at runtime.

Example:

In this small example, we first query how many CPU are being used, and then change this number.

>>> import mkl
>>> mkl.get_max_threads()
2
>>> mkl.set_num_threads(1)
>>> mkl.get_max_threads()
1

Reference

mkl service functions:

mkl.get_cpu_clocks() -> int
Return the CPU clocks as an integer.
mkl.get_cpu_frequency() -> float
Return CPU frequency in GHz as a float.
mkl.get_max_threads() -> int
Return the number of threads Intel MKL is targeting for parallelism.
mkl.get_version_string() -> str
Return the MKL library version information as a string.
mkl.mem_stat(n) -> int
Returns an amount of memory, allocated by the MKL Memory Allocator.
mkl.set_num_threads(n)
Set the number of threads MKL should use. This is only a hint, and no guaranteed is made this number of threads will actually be used. This function takes precedence over the environment variable MKL_NUM_THREADS.