Porting Algebraic Multigrid to GPUs in the Chronos Library
Please login to view abstract download link
Large and sparse linear systems arise ubiquitously across scientific and industrial simulations, from computational fluid dynamics to geophysical modelling and engineering design. Their efficient solution remains a critical bottleneck as problem sizes grow alongside the increasing computational power and heterogeneity of modern supercomputers. In this context, Algebraic Multigrid (AMG) [1] methods are among the most scalable solvers for elliptic PDEs. However, their robustness comes at the price of high memory requirements and nontrivial setup costs. This work presents the current state of the Chronos library [2], with a focus on its GPU porting. Chronos provides a range of Krylov solvers and advanced preconditioners, with its most sophisticated method being a classical AMG featuring an adaptive-pattern FSAI smoother, and a prolongation based on long-distance interpolations and parallel energy minimisation [3]. Chronos was initially conceived for large-scale CPU-only supercomputers, combining distributed- and shared-memory parallelism within a modular C++ framework. Its abstract linear algebra layers and object-oriented design have proven well-suited to the extension toward heterogeneous CPU–GPU execution, enabling substantial algorithmic and implementation adaptations without disrupting the overall library structure. The talk will address the algorithmic and implementation challenges encountered in porting AMG to GPUs, focusing on the need to reduce memory footprint, expose fine-grained parallelism, and minimise setup costs. In particular, Chronos explored aggressive coarsening strategies tailored for Poisson-like problems. At the conference, we will present numerical experiments that illustrate the performance of our new aggressive coarsening GPU implementation on real-world problems. REFERENCES: [1] Stüben K., An introduction to algebraic multigrid, in: Trottenberg U., Oosterlee C., Schüller A. (Eds.), Multigrid, pp. 413–532, 1st Edition, London, Elsevier Academic Press, 2001. [2] Chronos webpage: https://www.m3eweb.it/chronos/. [3] Isotton G., Frigo M., Spiezia N., Janna C., Chronos: A General Purpose Classical AMG Solver for High Performance Computing, SIAM Journal on Scientific Computing, 43 (5), C335–C357, 2021.
