# high performance computing on graphics processing units: hgpu.org

## Sparse systems solving on GPUs with GMRES

Raphael Couturier, Stephane Domas
LIFC, IUT Belfort-Montbelliard, University of Franche Comte, BP 527, 90016 Belfort CEDEX, France
The Journal of Supercomputing (10 February 2011), pp. 1-13

@article{couturiersparse,

title={Sparse systems solving on GPUs with GMRES},

author={Couturier, R. and Domas, S.},

journal={The Journal of Supercomputing},

pages={1–13},

issn={0920-8542},

publisher={Springer}

}

Source

841

views

Scientific applications very often rely on solving one or more linear systems. When matrices are sparse, iterative methods are preferred to direct ones. Nevertheless, the value of nonzero elements and their distribution (i.e., the sketch of the matrix) greatly influence the efficiency of those methods (in terms of computation time, number of iterations, result precision) or simply prevent the convergence. Among iterative methods, GMRES (Saad, Iterative methods for sparse linear systems. PWS Publishing, New York, 1996) is often chosen when dealing with general nonsymmetric matrices. Indeed its convergence is very fast and more stable than the biconjugate gradient. Furthermore, it is mainly based on mathematical operations (matrix-vector and dot products, norms, etc.) that can be heavily parallelized and is thus a good candidate to implement a solver for sparse systems on Graphics Processing Units (GPU). This paper presents a GMRES method for such an architecture. It is based on the modified Gram-Schmidt approach and is very similar to that of Sparselib (Barrett et al., Templates for the solution of linear systems: building blocks for iterative methods, SIAM, Philadelphia, 1994). Our version uses restarting and a very basic preconditioning. For its implementation, we have based our code on CUBLAS (NVIDIA, http://developer.download.nvidia.com/compute/cuda/2_1/toolkit/docs/CUBLAS_Library_2.1.pdf, 2008) and SpMV (Bell and Garland, Efficient sparse matrix-vector multiplication on CUDA. NVIDIA technical report NVR-2008-004, 2008) libraries, in order to achieve a good performance whatever the matrix sizes and their sketch are. Our experiments exhibit encouraging results on the comparison between Central Processing Units (CPU) and GPU executions in double precision, obtaining a speedup ranging from 8 up to 23 for a large variety of problems.

* * *
* * *

## Featured events

2018
February
26-28
Singapore

### International Conference on Intelligent Autonomous Systems (ICIAS), 2018

2018
February
21-23
Amsterdam, Netherlands

2018
February
24-26
Hong Kong

2018
January
18-20
Tokyo, Japan

### 8th International Conference on Bioscience, Biochemistry and Bioinformatics (ICBBB), 2018

2018
January
8-10
Sydney, Australia

### The 10th International Conference on Computer Modeling and Simulation (ICCMS), 2018

HGPU group © 2010-2017 hgpu.org

All rights belong to the respective authors