Using GPUs to Improve Multigrid Solver Performance on a Cluster
Institute of Applied Mathematics, University of Dortmund, Germany
International Journal of Computational Science and Engineering, Vol. 4, Number 1, 2008, p.36-55
@article{Goeddeke:2008:UGT,
author={Dominik G{“o}ddeke and Robert Strzodka and Jamaludin Mohd-Yusof and Patrick S. McCormick and Hilmar Wobker and Christian Becker and Stefan Turek},
title={Using {GPUs} to Improve Multigrid Solver Performance on a Cluster},
journal={International Journal of Computational Science and Engineering},
year={2008},
volume={4},
number={1},
pages={36–55},
month={nov},
doi={10.1504/IJCSE.2008.021111}
}
This article explores the coupling of coarse and fine-grained parallelism for Finite Element simulations based on efficient parallel multigrid solvers. The focus lies on both system performance and a minimally invasive integration of hardware acceleration into an existing software package, requiring no changes to application code. Because of their excellent price performance ratio, we demonstrate the viability of our approach by using commodity graphics processors (GPUs) as efficient multigrid preconditioners. We address the issue of limited precision on GPUs by applying a mixed precision, iterative refinement technique. Other restrictions are also handled by a close interplay between the GPU and CPU. From a software perspective, we integrate the GPU solvers into the existing MPI-based Finite Element package by implementing the same interfaces as the CPU solvers, so that for the application programmer they are easily interchangeable. Our results show that we do not compromise any software functionality and gain speedups of two and more for large problems. Equipped with this additional option of hardware acceleration we compare different choices in increasing the performance of a conventional, commodity based cluster by increasing the number of nodes, replacement of nodes by a newer technology generation, and adding powerful graphics cards to the existing nodes.
March 1, 2011 by hgpu