Developer Reference


DSS Implementation Details

To promote portability across platforms and ease of use across different languages, use the
header file.
The header file defines symbolic constants for returned error values, function options, certain defined data types, and function prototypes.
Constants for options, returned error values, and message severities must be referred only by the symbolic names that are defined in these header files. Use of the
Intel® oneAPI Math Kernel Library
DSS software without including one of the above header files is not supported.

Memory Allocation and Handles

You do not need to allocate any temporary working storage in order to use the
Intel® oneAPI Math Kernel Library
DSS routines, because the solver itself allocates any required storage. To enable multiple users to access the solver simultaneously, the solver keeps track of the storage allocated for a particular application by using a
data object.
Each of the
Intel® oneAPI Math Kernel Library
DSS routines creates, uses, or deletes a handle. Consequently, any program calling an
Intel® oneAPI Math Kernel Library
DSS routine must be able to allocate storage for a handle. The exact syntax for allocating storage for a handle varies from language to language. To standardize the handle declarations, the language-specific header files declare constants and defined data types that must be used when declaring a handle object in your code.
#include "mkl_dss.h" _MKL_DSS_HANDLE_t handle;
In addition to the definition for the correct declaration of a handle, the include file also defines the following:
  • function prototypes for languages that support prototypes
  • symbolic constants that are used for the returned error values
  • user options for the solver routines
  • constants indicating message severity.

Product and Performance Information


Performance varies by use, configuration and other factors. Learn more at