Highlighted notes on:
Accelerating sparse matrix-vector multiplication in iterative methods using GPU.
All Authors:
Kiran Kumar Matam; Kishore Kothapalli
Multiplying a sparse matrix with a vector (spmv for short) is a fundamental operation in many linear algebra kernels. Having an efficient spmv kernel on modern architectures such as the GPUs is therefore of principal interest. The computational challenges that spmv poses are significantly different compared to that of the dense linear algebra kernels. Recent work in this direction has focused on designing data structures to represent sparse matrices so as to improve the efficiency of spmv kernels. However, as the nature of sparseness differs across sparse matrices, there is no clear answer as to which data structure to use given a sparse matrix. In this work, we address this problem by devising techniques to understand the nature of the sparse matrix and then choose appropriate data structures accordingly. By using our technique, we are able to improve the performance of the spmv kernel on an Nvidia Tesla GPU (C1060) by a factor of up to 80% in some instances, and about 25% on average compared to the best results of Bell and Garland [3]
on the standard dataset (cf. Williams et al. SC'07) used in recent literature. We also use our spmv in the conjugate gradient method and show an average 20% improvement compared to using HYB spmv of [3]
, on the dataset obtained from the The University of Florida Sparse Matrix Collection [9]
.
Published in: 2011 International Conference on Parallel Processing
Date of Conference: 13-16 Sept. 2011
Date Added to IEEE Xplore: 17 October 2011
INSPEC Accession Number: 12316254
DOI: 10.1109/ICPP.2011.82
Publisher: IEEE
Conference Location: Taipei City, Taiwan