In this paper, we analyze the preconditioned GMRES algorithm in detail and decompose it into components to implement on multiple-GPU architecture. The operations of vector updates, dot products and Sparse Matrix-Vector multiplication (SpMV) are implemented in parallel. In addition, a specific communication mechanism for SpMV is designed. The preconditioner is established on the host (CPU) and solved on the devices (GPUs). Validated by a series of numerical experiments, the GPU-based GMRES solver is effective and favorable parallel performance is achieved.
Industrial Consortium in Reservoir Simulation and Modelling, Foundation CMG, Alberta Innovates.