Developer Reference

Contents

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.

Product and Performance Information

1

Intel's compilers may or may not optimize to the same degree for non-Intel microprocessors for optimizations that are not unique to Intel microprocessors. These optimizations include SSE2, SSE3, and SSSE3 instruction sets and other optimizations. Intel does not guarantee the availability, functionality, or effectiveness of any optimization on microprocessors not manufactured by Intel. Microprocessor-dependent optimizations in this product are intended for use with Intel microprocessors. Certain optimizations not specific to Intel microarchitecture are reserved for Intel microprocessors. Please refer to the applicable product User and Reference Guides for more information regarding the specific instruction sets covered by this notice.

Notice revision #20110804