Freely Available Software for Linear Algebra (May 2013)
Here is a list of freely available software for the solution of linear algebra problems. The interest is in software for high-performance computers that’s available in “open source” form on the web for solving problems in numerical linear algebra, specifically dense, sparse direct and iterative systems, and sparse iterative eigenvalue problems. Please let me know about updates and corrections.
Additional pointers to software can be found at:
http://www.nhse.org/rib/repositories/nhse/catalog/#Numerical_Programs_and_Routines 
A survey of Iterative Linear System Solver Packages can be found at:
http://www.netlib.org/utk/papers/iterative-survey/
Thanks,
Jack and
Mark
SUPPORT ROUTINES License Support Type Language Mode Dense Sparse           Last release date
      Real Complex F77 C C++ Shared GPU Dist      
Armadillo Mozilla yes X X     X X     X   2013-04-19
ATLAS BSD like yes X X X X   X     X   2013-01-08
BLAS PD yes X X X X   X     X   2011-04-19
BLIS BSD yes X X X X   X     X   2013-04-13
Blitz++ LGBL, etc. yes X X     X X     X   2012-07-04
librsb LGPL yes X X X X X X       X 2013-04-07
LINALG * ?                       n/a
MR3-SMP BSD yes X X X X   X     X   2013-02-28
MTL Own yes X       X X     X   2012-10-17
NEWMAT Own yes X       X X     X   2008-11-20
NIST Sparse BLAS PD yes X X   X X X       X 2009-04-27
OpenBLAS BSD yes X X X X   X     X   2013-03-02
PMRRR BSD yes X X X X   X     X   2011-07-26
(p)OSKI BSD yes X X X X X X       X 2012-04-27
PSBLAS BSD yes X X F90     X   M   X 2012-06-27
Scotch CeCILL-C yes     X X   X   M   X 2012-12-02
SparseLib++ PD yes X X   X X X       X 2008-10-30
Trilinos/Epetra BSD yes X   X X X X   M X   2013-04-17
Trilinos/Tpetra BSD yes X X     X X   M X   2013-04-17
Trilinos/Kokkos BSD yes X X     X X     X   2013-04-17
Trilinos/Teuchos BSD yes X X     X X   M X   2013-04-17
uBLAS Boost yes X X   X X X     X             2012-11-05  
LINALG *: This is a collection of software that is available but too varied to describe.
DIRECT SOLVERS License Support Type Language Mode Dense Sparse Direct Sparse Iterative Sparse Eigenvalue Last release date
      Real Complex F77 C C++ Shared GPU Dist   SPD Gen SPD Gen Sym Gen  
Eigen Mozilla yes X X     X X     X X X X X     2013-04-16
Elemental BSD yes X X     X     M X             2013-03-27
FLAME LGPL yes X X X X   X     X             ?
FLENS BSD yes X X     X X     X             2012-10-01
LAPACK BSD yes X X X X   X     X             2012-09-25
LAPACK95 BSD yes X X F95     X     X             2000-11-30
MAGMA BSD yes X X X X   X C/O/X                 2012-11-14
NAPACK BSD yes X   X     X     X     X   X   ?
PLAPACK ? no X X X X       M X             2007-06-12
PLASMA BSD yes X X X X   X     X             2012-11-14
PRISM ? no X   X     X   M X             ?
rejtrix by-nc-sa yes X       X X     X     P P     2012-01-01
ScaLAPACK BSD yes X X X X       M/P X             2012-05-01
Trilinos/Pliris BSD yes X X   X X     M X             2013-04-17
ViennaCL MIT yes X       X X C/O/X   X     X X     2013-02-22
SPARSE DIRECT SOLVERS License Support Type Language Mode Dense Sparse Direct Sparse Iterative Sparse Eigenvalue Last release date
      Real Complex F77 C C++ Shared GPU Dist   SPD Gen SPD Gen Sym Gen  
CHOLMOD GPL yes X X   X   X C     X           2013-04-15
DSCPACK PD yes X     X   X   M   X           ?
KKTDirect PD yes X     X X X       LDLT           2010-04-21
MUMPS PD yes X X X X   X   M   X X         2011-05-01
PaStiX CeCILL-C yes X X X X X X   M   X X X X     2012-11-22
PSPASES  Own yes X   X X       M   X           1999-05-09
Quern PD yes X     X X X         X   X     2009-02-04
SPARSE Own ? X X   X   X       X X         1988-04-01
SPOOLES PD ? X X   X   X   M     X   X     1999-01-26
SuperLU Own yes X X X X   X   M     X         2011-10-27
TAUCS Own yes X X   X   X       X X X X     2003-09-04
Trilinos/Amesos LGPL yes X     X X X   M   X X         2013-04-17
Trilinos/Amesos2 BSD yes X X     X X   M   X X         2013-04-17
UMFPACK GPL yes X X   X   X         X         2012-07-08
Y12M ? yes X   X     X       X X         ?
PRECONDITIONERS License Support Type Language Mode Dense Sparse Direct Sparse Iterative Sparse Eigenvalue Last release date
      Real Complex F77 C C++ Shared GPU Dist   SPD Gen SPD Gen Sym Gen  
BPKIT LGPL yes X   X X X X   M               2007-03-17
MLD2P4 BSD yes X X F90     X   M               2011-03-10
MSPAI LGPL yes X X     X X   M               2009-09-17
Trilinos/IFPACK LGPL yes X       X X   M               2013-04-17
Trilinos/IFPACK2 LGPL yes X X     X X   M               2013-04-17
Trilinos/ML LGPL yes X     X X X   M               2013-04-17
Trilinos/Teko BSD yes X X     X X   M               2013-04-17
SPARSE ITERATIVE SOLVERS License Support Type Language Mode Dense Sparse Direct Sparse Iterative Sparse Eigenvalue Last release date
      Real Complex F77 C C++ Shared GPU Dist   SPD Gen SPD Gen Sym Gen  
BILUM ? no X   X     X           X X     1998-03-01
BlockSolve95 ? ? X   X X X     M       X X     1997-07-08
CERFACS ? yes X X X     X           X X     2007-07-01
DUNE / ISTL LGPL yes X X     X X   M       X X     2013-02-26
GMM++ LGPL yes X X     X X       X X X X     2012-08-01
HIPS CeCILL-C yes X X X X X X   M       X X     2010-10-13
HYPRE LGPL yes X   X X   X   M       P P P   2012-10-30
IML++ PD ? X       X X           X X     1995-01-05
ITL Own yes X       X X           X X     2001-10-26
ITPACK PD ? X   X     X           X X     1989-05-01
ITSOL GPL yes X   X     X             X     2012-10-25
LASPack (see netlib) Own ? X     X   X           X X     1996-01-17
Lis BSD yes X   X X   X   M       P P P P 2013-04-19
PARALUTION GPL yes X       X X C/O         X X     2013-04-06
pARMS LGPL yes X   X X   X   M       X X     2011-01-14
PETSc Own yes X X X X   X   M       P P     2012-06-05
PIM Own yes X X X     X   M       X X     2003-06-20
QMRPACK (tar.gz) ? ? X X X     X           X X X X 1996-04-15
SLAP PD ? X   X                 X X     1998-07-21
SOL CPL or BSD yes X   X X   X           X X     2012-10-26
SPARSKIT LGPL yes X   X     X             X     2009-11-18
SPLIB (tar.gz) ? ? X   X     X           X X     1999-04-01
Trilinos/AztecOO BSD yes X   X X X X   M       X X     2013-04-17
Trilinos/Belos BSD yes X X     X X   M       X X     2013-04-17
Trilinos/Komplex BSD yes   X   X X X   M       X X     2013-04-17
Templates BSD yes X   X X   X           X X     1998-07-21
SPARSE EIGENVALUE SOLVERS License Support Type Language Mode Dense Sparse Direct Sparse Iterative Sparse Eigenvalue Last release date
      Real Complex F77 C C++ Shared GPU Dist   SPD Gen SPD Gen Sym Gen  
ARPACK BSD yes X X X X X X   M/P           X X 2002-09-18
BLOPEX  LGPL yes X X   X   X   M           P    2011-08-25
FEAST BSD yes X X X X   X               X   2013-02-20
FILTLAN LGPL yes       X X X               X   2012-05-07
LASO PD ? X   X     X               X   1983-06-01
PRIMME LGPL yes X X   X   X   M/P           X   2006-10-18
PROPACK BSD yes X X X                       SVD 2005-04-20
SLEPc LGPL yes X X X X   X   M           X X 2012-10-03
Trilinos/Anasazi LGPL yes X X     X X   M           P P 2013-04-17
TRLan Own yes X X F90 X   X   M           X   2010-10-10
Free for academic use only (not open source) License Support Type Language Mode Dense Sparse Direct Sparse Iterative Sparse Eigenvalue Last release date
AGMG Own yes X X F90     X   M       X X     2012-10-01
HSL Own yes X X X X   X   M   X X X X X X 2013-04-15
No longer available License Support Type Language Mode Dense Sparse Direct Sparse Iterative Sparse Eigenvalue Last release date
SPAI ? yes X     X   X   M               ---
Notes:
     Type:
          Real = Real arithmetic
          Complex = Complex arithmetic
     Support: Contact information for where you can send questions and bug reports.
     Language: F77 (Fortran 95), C, C++
     Mode:
          Shared = shared memory, sequential, vector or SMP/multithreaded versions
          Dist = distributed memory message passing (M = MPI, P = PVM)
          GPU/Accel. = GPU or Accelerator (C=CUDA, O=OpenCL, X=Intel Xeon Phi)
     Dense: Dense, triangular, banded, tridiagonal matrices
     Sparse: A sparse matrix representation is used to contain the data.
          Direct: A direct approach is used to factor and solve the system.
               SPD: The matrix is symmetric and positive definite
               Gen: The matrix is general
          Iterative: An iterative method is used to solve the system.
               SPD: The matrix is symmetric and positive definite
               Gen: The matrix is general
               P indicates preconditioners
     Sparse eigenvalue: An iterative method is used to find some of the eigenvalues
          Sym: The matrix is symmetric (Hermitian in the complex case)
          Gen: The matrix is general
11/14/2013 4:29:30 PM