Developer Reference for Intel® oneAPI Math Kernel Library for C

ID 766684
Date 3/22/2024
Public

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

Document Table of Contents

pardisoinit

Initialize Intel® oneAPI Math Kernel Library (oneMKL) PARDISO with default parameters in accordance with the matrix type.

Syntax

void pardisoinit (_MKL_DSS_HANDLE_t pt, const MKL_INT *mtype, MKL_INT *iparm );

Include Files

  • mkl.h

Description

This function initializes the solver handle pt for Intel® oneAPI Math Kernel Library (oneMKL) PARDISO with zero values (as needed for the very first call of pardiso) and sets default iparm values in accordance with the matrix type mtype.

The recommended way is to avoid using pardisoinit and to initialize pt and set the values of the iparm array manually as the default parameters might not be the best for a particular use case.

An alternative method to set default iparm values is to call pardiso in the analysis phase with iparm(1)=0. In this case, the solver handle pt must be initialized with zero values.

The pardisoinit routine initializes only the in-core version of Intel® oneAPI Math Kernel Library (oneMKL) PARDISO. Switching to the out-of-core version of Intel® oneAPI Math Kernel Library (oneMKL) PARDISO as well as changing default iparm values can be done after the call to pardisoinit but before the first call to pardiso.

The pardisoinit routine cannot be used together with the pardiso_64 routine.

Input Parameters

mtype

Matrix type. Based on this value pardisoinit chooses default values for the iparm array. Refer to the section oneMKL PARDISO Parameters in Tabular Formfor more details about the default values of Intel® oneAPI Math Kernel Library (oneMKL) PARDISO.

Output Parameters

pt

Array of size 64. Handle to internal data structure. The pardisoinit routine nullifies the array pt.

NOTE:

It is very important that pt is initialized with zero before the first call of Intel® oneAPI Math Kernel Library (oneMKL) PARDISO. After that first call you must never modify the array, because it could cause a serious memory leak or a crash.

iparm

Array of size 64. This array is used to set various options for Intel® oneAPI Math Kernel Library (oneMKL) PARDISO and to return some useful information after execution of the solver. Thepardisoinit routine fills in the iparm array with the default values. Refer to the section oneMKL PARDISO Parameters in Tabular Form for more details about the default values of Intel® oneAPI Math Kernel Library (oneMKL) PARDISO.