Developer Reference for Intel® oneAPI Math Kernel Library for Fortran

ID 766686
Date 3/31/2023
Public

A newer version of this document is available. Customers should click here to go to the newest version.

Document Table of Contents

DSS Implementation Details

To promote portability across platforms and ease of use across different languages, use the mkl_dss.f90 header file.

The header file defines symbolic constants for returned error values, function options, certain defined data types, and function prototypes.

NOTE:

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 ahandle 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.f90" 
TYPE(MKL_DSS_HANDLE) 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.