GitPedia

STRUMPACK

Structured Matrix Package (LBNL)

From pghysels·Updated June 13, 2026·View on GitHub·

STRUMPACK -- STRUctured Matrix PACKage, Copyright (c) 2014-2021, The Regents of the University of California, through Lawrence Berkeley National Laboratory (subject to receipt of any required approvals from the U.S. Dept. of Energy). All rights reserved. The project is written primarily in C++, distributed under the Other license, first published in 2017. Key topics include: dense-matrices, hpc, hss, linear-algebra, linear-systems.

Latest release: v8.0.0STRUMPACK v8.0.0
November 6, 2024View Changelog →

STRUMPACK

STRUMPACK -- STRUctured Matrix PACKage, Copyright (c) 2014-2021, The
Regents of the University of California, through Lawrence Berkeley
National Laboratory (subject to receipt of any required approvals from
the U.S. Dept. of Energy). All rights reserved.

Documentation & Installation instructions

http://portal.nersc.gov/project/sparse/strumpack/master/

http://portal.nersc.gov/project/sparse/strumpack/v7.2.0/

Website

http://portal.nersc.gov/project/sparse/strumpack/

Contributors

Overview

STRUMPACK - STRUctured Matrix PACKage - is a software library
providing linear algebra routines and linear system solvers for sparse
and for dense rank-structured linear systems. Many large dense
matrices are rank structured, meaning they exhibit some kind of
low-rank property, for instance in hierarchically defined
sub-blocks. In sparse direct solvers based on LU factorization, the LU
factors can often also be approximated well using rank-structured
matrix compression, leading to robust preconditioners. The sparse
solver in STRUMPACK can also be used as an exact direct solver, in
which case it functions similarly as for instance
SuperLU or
superlu_dist. The
STRUMPACK sparse direct solver delivers good performance and
distributed memory scalability and provides excellent CUDA support.

For large scale dense matrix problems, we recommend ButterflyPACK:
https://github.com/liuyangzhuan/ButterflyPACK

Currently, STRUMPACK has support for the Hierarchically Semi-Separable
(HSS), Block Low Rank (BLR), Hierachically Off-Diagonal Low Rank
(HODLR), Butterfly and Hierarchically Off-Diagonal Butterfly (HODBF)
rank-structured matrix formats. Such matrices appear in many
applications, e.g., the Boundary Element Method for discretization of
integral equations, structured matrices like Toeplitz and Cauchy,
kernel and covariance matrices etc. In the LU factorization of sparse
linear systems arising from the discretization of partial differential
equations, the fill-in in the triangular factors often has low-rank
structure. Hence, the sparse linear solve algorithms in STRUMPACK
exploit the different dense rank-structured matrix formats to compress
the fill-in. This leads to purely algebraic, fast and scalable (both
with problem size and compute cores) approximate direct solvers or
preconditioners. These preconditioners are mostly aimed at large
sparse linear systems which result from the discretization of a
partial differential equation, but are not limited to any particular
type of problem. STRUMPACK also provides preconditioned GMRES and
BiCGStab iterative solvers.

Apart from rank-structured compression, the STRUMPACK sparse solver
also support compression of the factors using the
ZFP
library, a general purpose compression algorithm tuned for floating
point data. This can be used with a specified precision, or with
lossless compression.

The HODLR and Butterfly functionality in STRUMPACK is implemented
through interfaces to the ButterflyPACK package:
https://github.com/liuyangzhuan/ButterflyPACK

NOTICE

This software is owned by the U.S. Department of Energy. As
such, the U.S. Government has been granted for itself and others
acting on its behalf a paid-up, nonexclusive, irrevocable, worldwide
license in the Software to reproduce, prepare derivative works, and
perform publicly and display publicly. Beginning five (5) years after
the date permission to assert copyright is obtained from the
U.S. Department of Energy, and subject to any subsequent five (5) year
renewals, the U.S. Government is granted for itself and others acting
on its behalf a paid-up, nonexclusive, irrevocable, worldwide license
in the Software to reproduce, prepare derivative works, distribute
copies to the public, perform publicly and display publicly, and to
permit others to do so.

If you have questions about your rights to use or distribute this
software, please contact Berkeley Lab's Technology Transfer Department
at TTD@lbl.gov.

Contributors

Showing top 12 contributors by commit count.

View all contributors on GitHub →

This article is auto-generated from pghysels/STRUMPACK via the GitHub API.Last fetched: 6/27/2026