The Ubiquitous Sparse Matrix-Matrix Products
By: Aydın Buluç
Potential Business Impact:
Speeds up computer math for science and AI.
Multiplication of a sparse matrix with another (dense or sparse) matrix is a fundamental operation that captures the computational patterns of many data science applications, including but not limited to graph algorithms, sparsely connected neural networks, graph neural networks, clustering, and many-to-many comparisons of biological sequencing data. In many application scenarios, the matrix multiplication takes places on an arbitrary algebraic semiring where the scalar operations are overloaded with user-defined functions with certain properties or a more general heterogenous algebra where even the domains of the input matrices can be different. Here, we provide a unifying treatment of the sparse matrix-matrix operation and its rich application space including machine learning, computational biology and chemistry, graph algorithms, and scientific computing.
Similar Papers
Probably faster multiplication of sparse polynomials
Symbolic Computation
Makes math problems with many parts solve faster.
Identifying Kronecker product factorizations
Numerical Analysis
Finds hidden patterns in big data networks.
Verification Challenges in Sparse Matrix Vector Multiplication in High Performance Computing: Part I
Logic in Computer Science
Speeds up computer math for science.