# Sparse matrix multiplication package (SMMP)

@article{Bank1993SparseMM,
title={Sparse matrix multiplication package (SMMP)},
author={Randolph E. Bank and Craig C. Douglas},
year={1993},
volume={1},
pages={127-137}
}
• Published 1993
• Computer Science
Routines callable fromFortran and C are described which implement matrix-matrix multiplication and transposition for a variety of sparse matrix formats. Conversion routines between various formats are provided.
51 Citations

#### Topics from this paper

GPU-Accelerated Sparse Matrix-Matrix Multiplication by Iterative Row Merging
• Computer Science
• SIAM J. Sci. Comput.
• 2015
We present an algorithm for general sparse matrix-matrix multiplication (SpGEMM) on many-core architectures, such as GPUs. SpGEMM is implemented by iterative row merging, similar to merge sort, exc...
An overview of the sparse basic linear algebra subprograms
• Mathematics
• 2002
We discuss the interface design for the Sparse Basic Linear Algebra Subprograms (BLAS), the kernels in the recent standard from the BLAS Technical Forum that are concerned with unstructured sparse ...
Exposing Fine-Grained Parallelism in Algebraic Multigrid Methods
• Computer Science
• SIAM J. Sci. Comput.
• 2012
Algebraic multigrid methods for large, sparse linear systems are a necessity in many computational simulations, yet parallel algorithms for such solvers are generally decomposed into coarse-grained...
Optimizing Sparse Matrix—Matrix Multiplication for the GPU
• Computer Science
• TOMS
• 2015
The implementation is fully general and the optimization strategy adaptively processes the SpGEMM workload row-wise to substantially improve performance by decreasing the work complexity and utilizing the memory hierarchy more effectively. Expand
The Sparse BLAS 1
• 2001
We discuss the interface design for the Sparse Basic Linear Algebra Subprograms BLAS the kernels in the recent standard from the BLAS Technical Forum that are concerned with unstructured sparseExpand
Programming in a high level approach for scientific computing
A high level, hybrid approach to numerical computations is discussed with examples focused on sparse matrix computations. Expand
Practical Sparse Matrices in C++ with Hybrid Storage and Template-Based Expression Optimisation
• Computer Science
• 2018
A user-friendly and open-source sparse matrix class for the C++ language, with a high-level application programming interface deliberately similar to the widely used MATLAB language, that facilitates prototyping directly in C++ and aids the conversion of research code into production environments. Expand
User-Friendly Sparse Matrices with Hybrid Storage and Template-Based Expression Optimisation
• Computer Science, Mathematics
• ArXiv
• 2018
To facilitate relatively quick conversion of research code into production environments, the class and its associated functions provide a suite of essential sparse linear algebra functionality as well as high-level functions for sparse eigendecompositions and linear equation solvers. Expand
An overview of the sparse basic linear algebra subprograms: The new standard from the BLAS technical forum
• Computer Science, Mathematics
• TOMS
• 2002
The interface design for the Sparse Basic Linear Algebra Subprograms (BLAS) is discussed, the kernels in the recent standard that are concerned with unstructured sparse matrices are discussed, and how this interface can shield one from concern over the specific storage scheme for the sparse matrix. Expand
A Relational Approach to the Automatic Generation of Sequential Sparse Matrix Codes
This thesis presents techniques for automatically generating sparse codes from dense matrix algorithms through a process called sparse compilation, and discusses the Bernoulli Sparse Compiler, which provides a novel mechanism that allows the user to extend its repertoire of sparse matrix storage formats. Expand

#### References

SHOWING 1-10 OF 13 REFERENCES
A proposal for user level sparse BLAS
• Computer Science
• 1992
The design, implementation and use of subprograms for the multiplication of a full matrix by a sparse one and for the solution of triangular systems with one or more (full) right-hand sides are discussed. Expand
Constructive interference in parallel algorithms
• Mathematics
• 1988
Parallel algorithms are developed in the setting of iterative multilevel methods. The constituent parts of the algorithms are dependent rather than independent as in conventional parallel algorithms.Expand
Yale sparse matrix package I: The symmetric codes
• Computer Science
• 1982
This report presents a package of efficient, reliable, well-documented, and portable FORTRAN subroutines for solving NxN system of linear equations M x = b, where the coefficient matrix M is large, sparse, and nonsymmetric. Expand
The (New) Yale Sparse Matrix Package
• Mathematics, Computer Science
• 1984
This chapter describes the Yale Sparse Matrix Package as a collection of routines for solving the n × n system of linear equations Mx = b when the coefficient matrix M is large and sparse. ItExpand
General sparse elimination requires no permanent integer storage
• Mathematics
• 1987
General sparse elimination is designed to take maximum advantage of the sparsity of an $N \times N$ matrix ${\bf A}$. Only the nonzeros of ${\bf A}$ are stored, along with some extra integer overheadExpand
Using symmetrics and antisymmetrics to analyze a parallel multigrid algorithm: the elliptic boundary value problem case
• Mathematics
• 1989
Symmetry and antisymmetry properties of a class of elliptic partial differential equations are exploited to prove when a particular parallel multilevel algorithm is a direct method rather than theExpand
SPARSKIT: a basic tool kit for sparse matrix computations, preliminary version
• SPARSKIT: a basic tool kit for sparse matrix computations, preliminary version
• 1990
SPARSKIT: a basic tool kit for sparse matrix computations, preliminary version, 1990. Available by anonymous ftp from riacs.edu
• 1990
Using symmetries and antisymmetries to analyze a parallel multigrid algorithm: the elliptic boundary value case
• SIAM J. Numer. Anal.,
• 1989
Using symmetries and antisymmetries to analyze a parallel multigrid algorithm: the elliptic boundary value case SIAM
• J. Numer. Anal
• 1989