LinearSolve.jl: High-Performance Unified Interface for Linear Solvers in Julia. Easily switch between factorization and Krylov methods, add preconditioners, and all in one interface.
Strumpack (https://github.com/pghysels/STRUMPACK) contains dense and sparse linear solvers, with OpenMP/MPI/CUDA backends. It is a relatively new package written by SuperLU developers. It implements a variety of hierarchical low-rank compression algorithms to achieve lower O(n^k) complexity than exact factorization. It is more robust for indefinite matrix where fast AMG solvers fail (as shown in this paper, TABLE IV)
Strumpack (https://github.com/pghysels/STRUMPACK) contains dense and sparse linear solvers, with OpenMP/MPI/CUDA backends. It is a relatively new package written by SuperLU developers. It implements a variety of hierarchical low-rank compression algorithms to achieve lower
O(n^k)
complexity than exact factorization. It is more robust for indefinite matrix where fast AMG solvers fail (as shown in this paper, TABLE IV)There is an unofficial, un-maintained Python interface: https://github.com/sshiraiwa/PySTRUMPACK