Enabling mixed-precision with the help of tools: A Nekbone case study

Yanxiang Chen,Pablo de Oliveira Castro,Paolo Bientinesi,Roman Iakymchuk
2024-05-18
Abstract:Mixed-precision computing has the potential to significantly reduce the cost of exascale computations, but determining when and how to implement it in programs can be challenging. In this article, we consider Nekbone, a mini-application for the CFD solver Nek5000, as a case study, and propose a methodology for enabling mixed-precision with the help of computer arithmetic tools and roofline model. We evaluate the derived mixed-precision program by combining metrics in three dimensions: accuracy, time-to-solution, and energy-to-solution. Notably, the introduction of mixed-precision in Nekbone, reducing time-to-solution by 40.7% and energy-to-solution by 47% on 128 MPI ranks.
Mathematical Software,Distributed, Parallel, and Cluster Computing,Software Engineering
What problem does this paper attempt to address?
The paper primarily addresses the issue of effectively utilizing mixed-precision computation in scientific computing applications, particularly in high-performance computing (HPC) environments. Specifically, the paper studies Nekbone, a mini-application for the fluid dynamics solver Nek5000. The goal of the paper is to propose a methodology to evaluate and implement mixed-precision computation to reduce computational costs, improve time efficiency, and lower energy consumption. The main contributions of the paper include: 1. Introducing a tool-assisted approach that enables application developers to use computer arithmetic tools to evaluate and optimize the precision requirements in floating-point operations. 2. Using the Verificarlo tool to analyze Nekbone and identify potential parts where precision trimming can be applied. Additionally, Monte Carlo arithmetic was used to simulate fluctuations in floating-point operations and assess the accuracy of reduced-precision computations. 3. In two typical examples, a careful mix of double-precision and single-precision computations allowed the solver to run entirely in single precision, resulting in up to 41% reduction in time consumption and 47% reduction in energy consumption. Through the above work, the paper demonstrates how mixed-precision computation can significantly enhance performance and energy efficiency without sacrificing accuracy, which is particularly important for next-generation supercomputers such as exascale computing systems.