The Community for Technology Leaders
RSS Icon
Subscribe
Issue No.05 - May (2014 vol.25)
pp: 1112-1123
Po Chen , Dept. of Geol. & Geophys., Univ. of Wyoming, Laramie, WY, USA
ABSTRACT
This paper presents a performance modeling and optimization analysis tool to predict and optimize the performance of sparse matrix-vector multiplication (SpMV) on GPUs. We make the following contributions: 1) We present an integrated analytical and profile-based performance modeling to accurately predict the kernel execution times of CSR, ELL, COO, and HYB SpMV kernels. Our proposed approach is general, and neither limited by GPU programming languages nor restricted to specific GPU architectures. In this paper, we use CUDA-based SpMV kernels and NVIDIA Tesla C2050 for our performance modeling and experiments. According to our experiments, for 77 out of 82 test cases, the performance differences between the predicted and measured execution times are less than 9 percent; for the rest five test cases, the differences are between 9 and 10 percent. For CSR, ELL, COO, and HYB SpMV CUDA kernels, the average differences are 6.3, 4.4, 2.2, and 4.7 percent, respectively. 2) Based on the performance modeling, we design a dynamic-programming based SpMV optimal solution auto-selection algorithm to automatically report an optimal solution (i.e., optimal storage strategy, storage format(s), and execution time) for a target sparse matrix. In our experiments, the average performance improvements of the optimal solutions are 41.1, 49.8, and 37.9 percent, compared to NVIDIA's CSR, COO, and HYB CUDA kernels, respectively.
INDEX TERMS
Benchmark testing, Kernel, Strips, Graphics processing units, Computational modeling, Sparse matrices, Analytical models,CUDA, Performance modeling, sparse matrix-vector multiplication, GPU
CITATION
Po Chen, "A Performance Modeling and Optimization Analysis Tool for Sparse Matrix-Vector Multiplication on GPUs", IEEE Transactions on Parallel & Distributed Systems, vol.25, no. 5, pp. 1112-1123, May 2014, doi:10.1109/TPDS.2013.123
152 ms
(Ver 2.0)

Marketing Automation Platform Marketing Automation Tool