Extending ILUPACK with a Task-Parallel Version of BiCG for Dual-GPU Servers
José I. Aliaga, Matthias Bollhöfer, Ernesto Dufrechou, Pablo Ezzatti, Enrique S. Quintana–Ort́ı · 2018
We target the solution of sparse linear systems via iterative Krylov subspace-based methods enhanced with the ILUPACK preconditioner on graphics processing units (GPUs). Concretely, in this work we extend ILUPACK with an implementation of the BiCG solver capable of exploiting dual-GPU systems. We leverage the structure of the BiCG to execute the main stages of the solver in a concurrent manner, and take advantage of the extended memory space to improve the data access patterns. The experimental results on a server with two NVIDIA K40 GPUs show important acceleration factors with respect to a previous single GPU variant.