The BiConjugate gradient method on GPUs
Dpt. of Comput. Archit. and Electron., Univ. of Almeria, Agrifood Campus of Int. Excell., ceiA3, 04120 Almeria, Spain
The Journal of Supercomputing, 2012
@article{ortega2012biconjugate,
title={The BiConjugate gradient method on GPUs},
author={Ortega, G. and Garz{‘o}n, EM and V{‘a}zquez, F. and Garc{‘i}a, I.},
journal={The Journal of Supercomputing},
pages={1–10},
year={2012},
publisher={Springer}
}
In a wide variety of applications from different scientific and engineering fields, the solution of complex and/or nonsymmetric linear systems of equations is required. To solve this kind of linear systems the BiConjugate Gradient method (BCG) is especially relevant. Nevertheless, BCG has a enormous computational cost. GPU computing is useful for accelerating this kind of algorithms but it is necessary to develop suitable implementations to optimally exploit the GPU architecture. In this paper, we show how BCG can be effectively accelerated when all operations are computed on a GPU. So, BCG has been implemented with two alternative routines of the Sparse Matrix Vector product (SpMV): the CUSPARSE library and the ELLR-T routine. Although our interest is focused on complex matrices, our implementation has been evaluated on a GPU for two sets of test matrices: complex and real, in single and double precision data. Experimental results show that BCG based on ELLR-T routine achieves the best performance, particularly for the set of complex test matrices. Consequently, this method can be useful as a tool to efficiently solve large linear system of equations (complex and/or nonsymmetric) involved in a broad range of applications.
May 15, 2012 by hgpu