Close

Presentation

Energy-aware performance portability with OpenMP dynamic variants
DescriptionPerformance portability in HPC and embedded systems is often limited by power and thermal constraints. The OpenMP programming model offers a compile-time mechanism known as variants, allowing different function specializations. Previous research extended this concept to the runtime level, enabling dynamic variant selection. We build on these foundations with an energy‑aware runtime that augments variant selection with low‑overhead power and temperature instrumentation and a multi‑criteria policy balancing power caps, thermal headroom, and performance. Implemented in LLVM and publicly available, our mechanism profiles per‑variant energy and thermal behavior, selecting specializations at runtime based on user‑defined thresholds and live system state. Validation on HPC and embedded platforms shows the runtime enforces dynamic power caps with 98.5% compliance on a workstation (versus 67% unconstrained). On thermally constrained edge devices, proactive CPU/GPU migration beats hardware throttling, cutting execution time by 39% while maintaining stability. In a simulated battery‑limited mission, energy‑aware selection extends battery lifetime.