pardiso iparm Parameter
This table describes all individual components of the
PARDISO
Intel® oneAPI Math Kernel Library
iparm
parameter. Components which are not used must be initialized with 0. Default values are denoted with an asterisk (*).
Component
| Description
| |
---|---|---|
iparm [0]input
| Use default values.
| |
0
| iparm [1]iparm [63] | |
≠ 0
| You must supply all values in components
iparm [1]iparm [63] | |
iparm [1]input
| Fill-in reducing ordering for the input matrix.
You can control the parallel execution of the solver by explicitly setting the
MKL_NUM_THREADS environment variable. If fewer OpenMP threads are available than specified, the execution may slow down instead of speeding up. If
MKL_NUM_THREADS is not defined, then the solver uses all available processors.
| |
0
| The minimum degree algorithm
[Li99].
| |
2*
| The nested dissection algorithm from the METIS package
[Karypis98].
| |
3
| The parallel (OpenMP) version of the nested dissection algorithm. It can decrease the time of computations on multi-core computers, especially when
Intel® oneAPI Math Kernel Library Setting
iparm [1] = 3 prevents the use of CNR mode (iparm [33] > 0 ) because
Intel® oneAPI Math Kernel Library | |
iparm [2] | Reserved. Set to zero.
| |
iparm [3]input
| Preconditioned CGS/CG.
This parameter controls preconditioned CGS
[Sonn89] for nonsymmetric or structurally symmetric matrices and Conjugate-Gradients for symmetric matrices.
iparm [3]iparm [3]10* .
L +K | |
K =0
| The factorization is always computed as required by
phase .
| |
K =1
| CGS iteration replaces the computation of
LU . The preconditioner is
LU that was computed at a previous step (the first step or last step with a failure) in a sequence of solutions needed for identical sparsity patterns.
| |
K =2
| CGS iteration for symmetric positive definite matrices replaces the computation of
LL T . The preconditioner is
LL T that was computed at a previous step (the first step or last step with a failure) in a sequence of solutions needed for identical sparsity patterns.
| |
The value
L controls the stopping criterion of the Krylov Subspace iteration:
eps is used in the stopping criterion
CGS -L || dx i dx 0 CGS where
|| for
dx i L *U )*r i K = 1|| for
dx i L *L T )*r i K = 2r i i of the preconditioned Krylov Subspace iteration.
A maximum number of 150 iterations is fixed with the assumption that the iteration will converge before consuming half the factorization time. Intermediate convergence rates and residue excursions are checked and can terminate the iteration process. If
phase =23A is automatically recomputed in cases where the Krylov Subspace iteration failed, and the corresponding direct solution is returned. Otherwise the solution from the preconditioned Krylov Subspace iteration is returned. Using
phase =33error =-4iparm [19]The default is
iparm [3]=0 , and other values are only recommended for an advanced user.
iparm [3]Examples:
| ||
iparm [4]input
| User permutation.
This parameter controls whether user supplied fill-in reducing permutation is used instead of the integrated multiple-minimum degree or nested dissection algorithms. Another use of this parameter is to control obtaining the fill-in reducing permutation vector calculated during the reordering stage of
Intel® oneAPI Math Kernel Library This option is useful for testing reordering algorithms, adapting the code to special applications problems (for instance, to move zero diagonal elements to the end of
P *A *P T perm parameter.
| |
0*
| User permutation in the
perm array is ignored.
| |
1
| Intel® oneAPI Math Kernel Library perm array.
iparm [1]Setting
iparm [4] | |
2
| Intel® oneAPI Math Kernel Library perm array.
| |
iparm [5]input
| Write solution on
x .
The array
x is always used.
| |
0*
| The array
x contains the solution; right-hand side vector
b is kept unchanged.
| |
1
| The solver stores the solution on the right-hand side
b .
| |
iparm [6]output
| Number of iterative refinement steps performed.
Reports the number of iterative refinement steps that were actually performed during the solve step.
| |
iparm [7]input
| Iterative refinement step.
On entry to the solve and iterative refinement step,
iparm [7] | |
0*
| The solver automatically performs two steps of iterative refinement when perturbed pivots are obtained during the numerical factorization.
| |
>0
| Maximum number of iterative refinement steps that the solver performs. The solver performs not more than the absolute value of
iparm [7]
The number of executed iterations is reported in
iparm [6] | |
<0
| Same as above, but the accumulation of the residuum uses extended precision real and complex data types.
Perturbed pivots result in iterative refinement (independent of
iparm [7]=0 ) and the number of executed iterations is reported in
iparm [6] | |
iparm [8] | Reserved. Set to zero.
| |
iparm [9]input
| Pivoting perturbation.
This parameter instructs
Intel® oneAPI Math Kernel Library mtype =11mtype =13mtype =-2mtype =-4mtype =6Small pivots are perturbed with
eps = 10 .
- iparm [9]The magnitude of the potential pivot is tested against a constant threshold of
alpha = eps*|| A2 ||inf ,where
eps = 10 ,
(- iparm [9]A2 =
P *P MPS *D r *A *D c *P || is the infinity norm of the scaled and permuted matrix
A2 ||inf A . Any tiny pivots encountered during elimination are set to the sign
( , which trades off some numerical stability for the ability to keep pivots from getting too small. Small pivots are therefore perturbed with
l I I A2 ||inf eps = 10 .
(- iparm [9] | |
13*
| The default value for nonsymmetric matrices( mtype =11,
mtype =13),
eps = 10 .
-13 | |
8*
| The default value for symmetric indefinite matrices ( mtype =-2,
mtype =-4,
mtype =6),
eps = 10 .
-8 | |
iparm [10]input
| Scaling vectors.
Intel® oneAPI Math Kernel Library mtype = 11 or
mtype = 13). The scaling can also be used for symmetric indefinite matrices (mtype = -2,
mtype =-4, or
mtype = 6) when the symmetric weighted matchings are applied (iparm [12] Use
iparm [10]iparm [12]phase =11 ) you must provide the numerical values of the matrix
A in array
a in case of scaling and symmetric weighted matching.
| |
0*
| Disable scaling. Default for symmetric indefinite matrices.
| |
1*
| Enable scaling. Default for nonsymmetric matrices.
Scale the matrix so that the diagonal elements are equal to 1 and the absolute values of the off-diagonal entries are less or equal to 1. This scaling method is applied to nonsymmetric matrices ( mtype = 11,
mtype = 13). The scaling can also be used for symmetric indefinite matrices (mtype = -2,
mtype = -4,
mtype = 6) when the symmetric weighted matchings are applied (iparm [12]Note that in the analysis phase ( phase =11) you must provide the numerical values of the matrix
A in case of scaling.
| |
iparm [11]input
| Solve with transposed or conjugate transposed matrix
A .
For real matrices, the terms
transposed and
conjugate transposed are equivalent.
| |
0*
| Solve a linear system
AX =
B .
| |
1
| Solve a conjugate transposed system
A H X =
B based on the factorization of the matrix
A .
| |
2
| Solve a transposed system
A T X =
B based on the factorization of the matrix
A .
| |
iparm [12]input
| Improved accuracy using (non-) symmetric weighted matching.
Intel® oneAPI Math Kernel Library | |
0*
| Disable matching. Default for symmetric indefinite matrices.
| |
1*
| Enable matching. Default for nonsymmetric matrices.
Maximum weighted matching algorithm to permute large elements close to the diagonal.
It is recommended to use
iparm [10]iparm [12]Note that in the analysis phase ( phase =11) you must provide the numerical values of the matrix
A in case of symmetric weighted matching.
| |
iparm [13]output
| Number of perturbed pivots.
After factorization, contains the number of perturbed pivots for the matrix types: 1, 3, 11, 13, -2, -4 and 6.
| |
iparm [14]output
| Peak memory on symbolic factorization.
The total peak memory in kilobytes that the solver needs during the analysis and symbolic factorization phase.
This value is only computed in phase 1.
| |
iparm [15]output
| Permanent memory on symbolic factorization.
Permanent memory from the analysis and symbolic factorization phase in kilobytes that the solver needs in the factorization and solve phases.
This value is only computed in phase 1.
| |
iparm [16]output
| Size of factors/Peak memory on numerical factorization and solution.
This parameter provides the size in kilobytes of the total memory consumed by in-core
Intel® oneAPI Math Kernel Library iparm [62]The total peak memory consumed by
Intel® oneAPI Mat |