English

Fast multiplication of random dense matrices with fixed sparse matrices

Computational Engineering, Finance, and Science 2024-05-14 v2 Distributed, Parallel, and Cluster Computing Data Structures and Algorithms

Abstract

This work focuses on accelerating the multiplication of a dense random matrix with a (fixed) sparse matrix, which is frequently used in sketching algorithms. We develop a novel scheme that takes advantage of blocking and recomputation (on-the-fly random number generation) to accelerate this operation. The techniques we propose decrease memory movement, thereby increasing the algorithm's parallel scalability in shared memory architectures. On the Intel Frontera architecture, our algorithm can achieve 2x speedups over libraries such as Eigen and Intel MKL on some examples. In addition, with 32 threads, we can obtain a parallel efficiency of up to approximately 45%. We also present a theoretical analysis for the memory movement lower bound of our algorithm, showing that under mild assumptions, it's possible to beat the data movement lower bound of general matrix-matrix multiply (GEMM) by a factor of M\sqrt M, where MM is the cache size. Finally, we incorporate our sketching algorithm into a randomized least squares solver. For extremely over-determined sparse input matrices, we show that our results are competitive with SuiteSparse; in some cases, we obtain a speedup of 10x over SuiteSparse.

Keywords

Cite

@article{arxiv.2310.15419,
  title  = {Fast multiplication of random dense matrices with fixed sparse matrices},
  author = {Tianyu Liang and Riley Murray and Aydın Buluç and James Demmel},
  journal= {arXiv preprint arXiv:2310.15419},
  year   = {2024}
}
R2 v1 2026-06-28T12:59:40.239Z