Summary of Sparse Linear Solvers Available from PETSc

Requests and contributions welcome

Click on the package name in the "External Package" column for manual pages for that package (e.g. Euclid/hypre).
    Algorithm Matrix types External Package*

Parallel

Complex

Preconditioners Jacobi aij,baij,sbaij,bdiag,dense   --- X X
point block Jacobi baij, bs = 2,3,4,5 X X
SOR seqdense,seqaij,seqsbaij,
seqbdiag,mpiaij**
  --- X
point block SOR*** seqbaij, bs = 2,3,4,5 X
block Jacobi aij,baij,sbaij,bdiag   --- X X
additive Schwarz aij,baij,sbaij   --- X X
  Incomplete factorizations ILU(k) seqaij,seqbaij   ---   X
    ICC(k) seqaij,seqbaij   ---   X
    ILU dt seqaij Sparsekit    
    ILU(k) aij Euclid/hpypre (LLNL) X  
ILU dt aij Euclid/pilut (LLNL) X
    ILU(0)/ICC(0) aij BlockSolve95 X  
  Matrix-free infrastructure   X X
  Multigrid infrastructure   X X
    geometric structured grid   X X
    algebraic aij BoomerAMG/hypre (LLNL) X  
      aij ML/Trilinos (SNL) X  
      baij Prometheus (LBNL) X  
  Approximate inverses aij Parasails/hypre (LLNL) X  
      aij SPAI X  
Substructuring balancing Neumann-Neumann is    --- X X
Direct solvers LU LU seqaij,seqbaij    ---   X
    LU matlab MATLAB   X
      aijspooles SpoolesSequential/Parallel X X
superlu
superlu_dist
SuperLU (BNL) Sequential/Parallel X X
aijmumps MUMPS X X
essl ESSL (IBM)
umfpack UMFPACK (U. Florida)
lusol LUSOL
plapack PLAPACK X X
Cholesky Cholesky seqaij,seqsbaij      --- X
sbaijspooles SpoolesSequential/Parallel X X
sbaijmumps MUMPS X X
dscpack DSCPACK (Penn State) X
plapack PLAPACK X X
  QR   matlab Matlab    
      aijspooles SpoolesSequential/Parallel   X
  XXt and XYt   aij   --- X  
Krylov methods   Richardson    --- X X
Chebychev   --- X X
conjugate gradients   --- X X
GMRES   --- X X
Bi-CG-stab   --- X X
transpose free QMR   --- X X
conjugate residuals   --- X X
conjugate gradient squared   --- X X
bi-conjugate gradient   --- X X
MINRES   --- X X
flexible GMRES   --- X X
LSQR   --- X X
SYMMLQ   --- X X
LGMRES   --- X X
Conjugate gradient on the normal equations   --- X X

*External Package If this column is filled in you must install the external package indicated to use this feature. See instructions

**A "block Jacobi" style SOR with lits local smoothing followed by update of ghost points from other processors, see MatRelax()

***Use PCType of PCSOR

This page was inspired by Jack Dongarra's freely available software for linear algebra list