:orphan: # MATSOLVERMKL_CPARDISO A matrix type providing direct solvers (LU) for parallel matrices via the external package MKL_CPARDISO. Works with `MATMPIAIJ` matrices Use `-pc_type lu` `-pc_factor_mat_solver_type mkl_cpardiso` to use this direct solver ## Options Database Keys - ***-mat_mkl_cpardiso_65 -*** Suggested number of threads to use within MKL_CPARDISO - ***-mat_mkl_cpardiso_66 -*** Maximum number of factors with identical sparsity structure that must be kept in memory at the same time - ***-mat_mkl_cpardiso_67 -*** Indicates the actual matrix for the solution phase - ***-mat_mkl_cpardiso_68 -*** Message level information, use 1 to get detailed information on the solver options - ***-mat_mkl_cpardiso_69 -*** Defines the matrix type. IMPORTANT: When you set this flag, iparm parameters are going to be set to the default ones for the matrix type - ***-mat_mkl_cpardiso_1 -*** Use default values - ***-mat_mkl_cpardiso_2 -*** Fill-in reducing ordering for the input matrix - ***-mat_mkl_cpardiso_4 -*** Preconditioned CGS/CG - ***-mat_mkl_cpardiso_5 -*** User permutation - ***-mat_mkl_cpardiso_6 -*** Write solution on x - ***-mat_mkl_cpardiso_8 -*** Iterative refinement step - ***-mat_mkl_cpardiso_10 -*** Pivoting perturbation - ***-mat_mkl_cpardiso_11 -*** Scaling vectors - ***-mat_mkl_cpardiso_12 -*** Solve with transposed or conjugate transposed matrix A - ***-mat_mkl_cpardiso_13 -*** Improved accuracy using (non-) symmetric weighted matching - ***-mat_mkl_cpardiso_18 -*** Numbers of non-zero elements - ***-mat_mkl_cpardiso_19 -*** Report number of floating point operations - ***-mat_mkl_cpardiso_21 -*** Pivoting for symmetric indefinite matrices - ***-mat_mkl_cpardiso_24 -*** Parallel factorization control - ***-mat_mkl_cpardiso_25 -*** Parallel forward/backward solve control - ***-mat_mkl_cpardiso_27 -*** Matrix checker - ***-mat_mkl_cpardiso_31 -*** Partial solve and computing selected components of the solution vectors - ***-mat_mkl_cpardiso_34 -*** Optimal number of threads for conditional numerical reproducibility (CNR) mode - ***-mat_mkl_cpardiso_60 -*** Intel MKL_CPARDISO mode ## Notes Use `-mat_mkl_cpardiso_68 1` to display the number of threads the solver is using. MKL does not provide a way to directly access this information. For more information on the options check the MKL_CPARDISO manual ## See Also [](ch_matrices), `Mat`, `PCFactorSetMatSolverType()`, `MatSolverType`, `MatMkl_CPardisoSetCntl()`, `MatGetFactor()` ## Level beginner ## Location src/mat/impls/aij/mpi/mkl_cpardiso/mkl_cpardiso.c --- [Edit on GitLab](https://gitlab.com/petsc/petsc/-/edit/release/src/mat/impls/aij/mpi/mkl_cpardiso/mkl_cpardiso.c) [Index of all Mat routines](index.md) [Table of Contents for all manual pages](/manualpages/index.md) [Index of all manual pages](/manualpages/singleindex.md)