# Sparse matrix multiplication package (SMMP)

@article{Bank1993SparseMM, title={Sparse matrix multiplication package (SMMP)}, author={Randolph E. Bank and Craig C. Douglas}, journal={Advances in Computational Mathematics}, year={1993}, volume={1}, pages={127-137} }

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.

#### Topics from this paper

#### 52 Citations

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 sparse… Expand

Programming in a high level approach for scientific computing

- Computer Science
- 2003

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
- Mathematical and Computational Applications
- 2019

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

- Computer Science
- 1997

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. It… Expand

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 overhead… Expand

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 the… Expand

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