Chinese Journal of Computational Physics ›› 2024, Vol. 41 ›› Issue (1): 33-39.DOI: 10.19596/j.cnki.1001-246x.8763

• Performance Optimization Techniques and Parallel Numerical Algorithms for Supercomputing • Previous Articles     Next Articles

Auto-tuning for Sparse Matrix-vector Multiplication

Zhen DU1,2(), Guangming TAN2   

  1. 1. School of Computer and Control Engineering, University of Chinese Academy of Sciences, Beijing 101408, China
    2. Institute of Computing Technology, Chinese Academy of Sciences, Beijing 100190, China
  • Received:2023-05-25 Online:2024-01-25 Published:2024-02-05

Abstract:

SpMV (sparse matrix-vector multiplication) is a widely used kernel in scientific computing. Since the performance of specific SpMV program is closely related to the distribution of non-zero elements in sparse matrices, there is no universal SpMV program design that can achieve high performance in all matrices. Therefore, auto-tuning has become a popular method for high SpMV performance. This paper analyzes the difficulties in optimizing SpMV and introduces two representative works of auto-tuning: SMAT, which is based on pre-implemented templates and AlphaSparse which designs SpMV programs from scratch. This paper introduces their designs, implementations, test results, advantages, and disadvantages. Finally, the trend of SpMV auto-tuning is analyzed and predicted.

Key words: high-performance scientific computing, sparse matrix, auto-tuning, sparse matrix-vector multiplication

CLC Number: