Mixed-Precision and Energy-Efficient Computations

Mixed-Precision and Energy-Efficient Computations

Tuesday, June 10, 2025 3:00 PM to Thursday, June 12, 2025 4:00 PM · 2 days 1 hr. (Europe/Berlin)
Foyer D-G - 2nd floor
Research Poster
Compiler and Tools for Parallel ProgrammingDiversity and InclusionEngineeringMixed PrecisionOptimizing for Energy and Performance

Information

Poster is on display and will be presented at the poster pitch session.
High Performance Computing has traditionally focused on optimizing between memory usage, arithmetic intensity, parallelism, and communication costs. However, as simulations grow, energy consumption has surged, presenting significant sustainability challenges for large-scale computing infrastructures. Addressing these challenges requires innovative strategies that enhance energy efficiency without compromising computational accuracy or performance.

We explore mixed-precision computing as a strategy to reduce energy consumption while maintaining accuracy and performance in HPC applications. The central issue lies in identifying which computational routines can operate effectively with reduced precision without degrading the overall accuracy of simulation results. Achieving this balance necessitates a systematic methodology to detect precision-insensitive regions within applications and strategically apply lower precision where feasible, thereby optimizing both energy usage and computational efficiency. Hence, we propose a methodology comprising of a few key steps:

- Performance profiling: Identify performance hotspots within applications.

- Numerical hotspot analysis: Employing Verificarlo to perform sensitivity analyses, thereby assessing numerical stability and error accumulation in targeted functions. This analysis determines the minimal precision required for each function to maintain overall application accuracy.

- Candidate selection: to choose the most promising candidates.

- Implementation of mixed-precision: Gradually converting selected code sections to lower precision and validating the accuracy of these implementations against double-precision reference results.

We verify this methodology on three distinct use cases: one implicit solver in Nekbone, and two explicit solvers in LULESH and the Reactor Simulator. Nekbone is a mini-application replicating the structure of Nek5000 that solves Poisson equations using the Conjugate Gradient (CG) method with the identity and multigrid preconditioners. Although Nekbone is traditionally developed entirely in double precision, our methodology identified that critical sections of the CG loop could be executed in single precision without adversely affecting accuracy, leading to the 40% reduction in time-to-solution and 47% decrease in energy-to-solution.

LULESH is a proxy application developed to simulate the computational behavior of hydrodynamics codes, employing finite element approximation and stencil operations, while Reactor Simulator is a probabilistic system developed using Monte Carlo simulation techniques to model interactions between particles emitted from a neutron source and a slab. By targeting the most time-intensive regions in these codes for precision reduction, we achieved about 30% reduction in time-to-solution for both, and 25.6% for LULESH and 37.6% for the reactor simulator decrease in energy consumption.

By applying mixed-precision computing across these diverse applications, we demonstrate the versatility and effectiveness of our approach in different computational contexts. In all three use cases, precision reduction led to significant reductions in time-to-solution and energy-to-solution with minimal to no loss in accuracy. These results underscore the efficacy of our methodology in enhancing the sustainability of HPC applications through strategic precision optimization.
Contributors:
Format
On DemandOn Site