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, except that elements with duplicate column indices are aggregated on the fly. The main kernel merges small numbers of sparse rows at once using subwarps of threads to realize an early compression effect which reduces the overhead of global memory accesses. The performance is compared with a parallel CPU implementation as well as with three GPU-based implementations. Measurements performed for computing the matrix square for 21 sparse matrices show that the proposed method consistently outperforms the other methods. Analysis showed that the performanc...
The sparse matrix-vector (SpMV) multiplication routine is an important building block used in many i...
Sparse matrix matrix (SpMM) multiplication is involved in a wide range of scientific and technical a...
Sparse matrix computations are ubiquitous in scientific computing; General-Purpose computing on Grap...
Abstract—General sparse matrix-matrix multiplication (SpGEMM) is a fundamental building block for nu...
We implement two novel algorithms for sparse-matrix dense-matrix multiplication (SpMM) on the GPU. O...
This repository contains the code and scripts for verifying the claims in the paper "Design Principl...
We implement a promising algorithm for sparse-matrix sparse-vector multiplication (SpMSpV) on the GP...
General sparse matrix–matrix multiplication (SpGEMM) is a fundamental building block of a number of ...
Sparse matrix-matrix multiplication (SpMM) is a key operation in numerous ar- eas from information ...
Sparse matrix multiplication is a common operation in linear algebra and an important element of oth...
AbstractThe sparse matrix-vector multiplication (SpMV) is a fundamental kernel used in computational...
The multiplication of a sparse matrix by a dense vector (SpMV) is a centerpiece of scientific comput...
Many important problems in science and engineering today deal with sparse data. Examples of sparse d...
The massive parallelism of graphics processing units (GPUs) offers tremendous performance in many hi...
Sparse matrix-vector multiplication is an integral part of many scientific algorithms. Several studi...
The sparse matrix-vector (SpMV) multiplication routine is an important building block used in many i...
Sparse matrix matrix (SpMM) multiplication is involved in a wide range of scientific and technical a...
Sparse matrix computations are ubiquitous in scientific computing; General-Purpose computing on Grap...
Abstract—General sparse matrix-matrix multiplication (SpGEMM) is a fundamental building block for nu...
We implement two novel algorithms for sparse-matrix dense-matrix multiplication (SpMM) on the GPU. O...
This repository contains the code and scripts for verifying the claims in the paper "Design Principl...
We implement a promising algorithm for sparse-matrix sparse-vector multiplication (SpMSpV) on the GP...
General sparse matrix–matrix multiplication (SpGEMM) is a fundamental building block of a number of ...
Sparse matrix-matrix multiplication (SpMM) is a key operation in numerous ar- eas from information ...
Sparse matrix multiplication is a common operation in linear algebra and an important element of oth...
AbstractThe sparse matrix-vector multiplication (SpMV) is a fundamental kernel used in computational...
The multiplication of a sparse matrix by a dense vector (SpMV) is a centerpiece of scientific comput...
Many important problems in science and engineering today deal with sparse data. Examples of sparse d...
The massive parallelism of graphics processing units (GPUs) offers tremendous performance in many hi...
Sparse matrix-vector multiplication is an integral part of many scientific algorithms. Several studi...
The sparse matrix-vector (SpMV) multiplication routine is an important building block used in many i...
Sparse matrix matrix (SpMM) multiplication is involved in a wide range of scientific and technical a...
Sparse matrix computations are ubiquitous in scientific computing; General-Purpose computing on Grap...