ECP Leads the Way to Cross-Platform Tested and Verified Compilers for HPC and Exascale Architectures
By Rob Farber
June 9, 2021
The Exascale Computing Project (ECP) is working to combine two key technologies, LLVM and continuous integration (CI), to ensure that current and future compilers are stable and performant on high-performance computing (HPC) and exascale computer systems. The proliferation of new machine architectures has made the continuous testing and verification of software (hence the “continuous” in CI) an essential part of US Department of Energy DOE supercomputing.
Valentin Clement, a software engineer at Oak Ridge National Laboratory who is part of the team working to include LLVM in the ECP CI testing and verification framework, notes, “We are working to add CI for ECP-relevant architectures. This facilitates collaboration as each DOE lab currently has their own separate LLVM fork. Centralizing to one software fork for all the labs avoids wasted effort. It also means we can work to support GPUs from multiple vendors in one LLVM fork, which benefits all DOE sites and the world-wide LLVM community. Additionally, we can work to increase support for offloading to GPUs as GPU support is not really well tested in the current upstream LLVM release.”