1. tpSpMV: A two-phase large-scale sparse matrix-vector multiplication kernel for manycore architectures.
- Author
-
Chen, Yuedan, Xiao, Guoqing, Wu, Fan, Tang, Zhuo, and Li, Keqin
- Subjects
- *
NUMERICAL solutions for linear algebra , *MULTIPLICATION , *SPARSE matrices , *COMPUTING platforms , *DATA structures , *CREMATORIUMS , *DATA reduction - Abstract
• We propose tpSpMV to alleviate the three main difficulties in parallel SpMV on multicore and manycore architectures. • We propose the two-phase parallel execution technique for tpSpMV to overcome the computational scale limitation. • We respectively propose the adaptive partitioning methods and parallelization designs for tpSpMV to exploit the architectural advantages. • We design several optimizations for tpSpMV to improve bandwidth usage and optimize tpSpMV's performance. • Experimental results on the SW26010 CPU show that tpSpMV yields performance improvements over existing work. Sparse matrix-vector multiplication (SpMV) is one of the important subroutines in numerical linear algebras widely used in lots of large-scale applications. Accelerating SpMV on multicore and manycore architectures based on Compressed Sparse Row (CSR) format via row-wise parallelization is one of the most popular directions. However, there are three main challenges in optimizing parallel CSR-based SpMV: (a) limited local memory of each computing unit can be overwhelmed by assignments to long rows of large-scale sparse matrices; (b) irregular accesses to the input vector result in expensive memory access latency; (c) sparse data structure leads to low bandwidth usage. This paper proposes a two-phase large-scale SpMV, called tpSpMV, based on the memory structure and computing architecture of multicore and manycore architectures to alleviate the three main difficulties. First, we propose the two-phase parallel execution technique for tpSpMV that performs parallel CSR-based SpMV into two separate phases to overcome the computational scale limitation. Second, we respectively propose the adaptive partitioning methods and parallelization designs using the local memory caching technique for the two phases to exploit the architectural advantages of the high-performance computing platforms and alleviate the problem of high memory access latency. Third, we design several optimizations, such as data reduction, aligned memory accessing, and pipeline technique, to improve bandwidth usage and optimize tpSpMV's performance. Experimental results on SW26010 CPUs of the Sunway TaihuLight supercomputer prove that tpSpMV achieves up to 28.61 speedups and yields the performance improvement of 13.16% over the state-of-the-art work on average. [ABSTRACT FROM AUTHOR]
- Published
- 2020
- Full Text
- View/download PDF