Abstract: Scientific software used on high performance computing (HPC) platforms is in a phase of transformation because of combined increase in the heterogeneity and complexity of models and hardware platforms. The need for performance portability is urgent, however, all viable solutions are either too specialized, or based on template meta-programming in C++. As a part of the Exastar project under ECP we are developing a language agnostic performance portability solution that relies on a tool-chain where each individual tool is relatively simple, but together they deliver a complete solution. Additionally, unlike other performance portability solutions we keep the developers in the loop by letting them dictate code transformations and configuration options instead of inferring them automatically from the source code. This design choice allows our tools to remain simple.
In this seminar we will present our tool-chain and how we are applying it to Flash-X, the code being developed for Exastar.