Suivez

la liste

To meet the energy transition challenges, high-fidelity numerical simulation is an indispensable tool requiring efficient usage of high-performance computing resources. The most memory and time-consuming part of such simulation consist in solving, sparse, ill-conditioned systems which can even contribute to a significant percentage of the simulation time. They are in general solved by using iterative Krylov subspace solvers.

This work is founded by EoCoE-III Energy Oriented Center of Excellence and focuses on exploring the usage of lower precisions in preconditioned iterative Krylov subspace methods. It studies how to manage both higher performance and lower energy consumption, as well as the impact of their usage in different homogeneous and heterogeneous hardware computing resources.

The iterative methods based on Krylov subspaces are memory-bound and suffer from high operational complexity. Several studies show that using mixed precision instead of double precision, in the hardware architectures with more and more half and simple precision instructions, can be beneficial for direct methods. However, the use of an iterative preconditioned solver in mixed or reduced precision will require careful consideration of error propagation and numerical aspects. Since the blind use of low precision in an iterative solver could degrade either the achievable level of accuracy or the convergence speed, or both.

The aim of this work is to exploit mixed precision arithmetic (involving half, single and double precision) for preconditioned iterative sparse linear solvers based on Krylov methods. More precisely, the idea is to design low-precision algorithms for the construction of the preconditioner with a special focus on algebraic multi-grid and then to adjust the error propagation related to low-precision computation with a specific iterative solution of the sparse linear system in higher precision based on “Iterative Refinement” techniques.

In this work, we focus on the Krylov subspace-based methods developed in the Maphys++ library (https://gitlab.inria.fr/solverstack/maphys/maphyspp) using an appropriate multigrid preconditioner available via various opensource libraries such as AMGX (https://github.com/NVIDIA/AMGX), Hypre (https://github.com/hypre-space/hypre), or other libraries. The choice of the algebraic multigrid library is not fixed and will be made during this work as an outcome. The numerical behavior, parallel scalability and energy consumption of the proposed solution will also be studied and compared with the fully double-precision solution.