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,dense   --- X X
point block Jacobi baij, bs = 2,3,4,5 X X
SOR seqdense,seqaij,seqsbaij,
mpiaij**
  --- X
point block SOR*** seqbaij, bs = 2,3,4,5 X
block Jacobi aij,baij,sbaij   --- 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 seqaij MATLAB   X
      aij Spooles X X
      aij PaStiX X X
aij
SuperLU (BNL) Sequential/Parallel X X
aij MUMPS X X
seqaij ESSL (IBM)
seqaij UMFPACK (U. Florida)
seqaij LUSOL
dense PLAPACK X X
Cholesky Cholesky seqaij,seqsbaij      --- X
sbaij Spooles X X
sbaij PaStiX X X
sbaij MUMPS X X
seqsbaij DSCPACK (Penn State) X
dense PLAPACK X X
  QR   matlab Matlab    
  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