Intel® Math Kernel Library 2018 Developer Reference - C

Handling Fatal Errors

A fatal error is a circumstance under which Intel MKL cannot continue the computation. For example, a fatal error occurs when Intel MKL cannot load a dynamic library or confronts an unsupported CPU type. In case of a fatal error, the default Intel MKL behavior is to print an explanatory message to the console and call an internal function that terminates the application with a call to the system exit() function. Intel MKL enables you to override this behavior by setting a custom handler of fatal errors. The custom error handler can be configured to throw a C++ exception, set a global variable indicating the failure, or otherwise handle cannot-continue situations. It is not necessary for the custom error handler to call the system exit() function. Once execution of the error handler completes, a call to Intel MKL returns to the calling program without performing any computations and leaves no memory allocated by Intel MKL and no thread synchronization pending on return.

To specify a custom fatal error handler, call the mkl_set_exit_handler function.