High Performance Computing (HPC) models of heliophysics plays a critical role in many aspects of space weather, from understanding fundamental physics to predicting real-world events. HPC models of heliophysics can also support the development of space weather mitigation technologies and decision making. NASA currently employs HPC models, such as ENLIL, to model the physics of the Sun. However, ENLIL cannot currently fully exploit the parallel processing capabilities of the modern multi-core compute nodes, nor can it utilize the GPU accelerators now common on NASA’s HPC clusters. Maintaining a mission critical code like ENLIL can be a challenge, as both the number of man hours required to enable the code to properly exploit new hardware is non-trivial, and the HPC environment itself is continually evolving. A new Domain Specific Language (DSL), together with a source-to-source translator, is proposed that will allow mission critical NASA codes, like ENLIL, to be written in a form that allows for improved portability between various HPC environments and hardware (including GPU accelerators), and reduce the level of skill and effort required to maintain and extend such codes. A proof-of-concept prototype of the language and source-to-source translator will be developed in Phase I and demonstrated using an in-house CFD solver. The deliverable in Phase I is a report detailing the findings of Phase I, along with a plan for Phase II development. In Phase II, a fully working language specification and source-to-source translator will be developed and demonstrated by rewriting ENLIL. The deliverables for Phase II are progress reports and a rewritten version of ENLIL that can exploit modern, heterogeneous HPC platforms, and will be easier to maintain as the HPC environment continues to evolve.
The proposed work will result in the modernization of ENLIL, a mission critical code used by the NASA CCMC for modeling heliophysics. By improving the performance, portability, and ease of maintenance of ENLIL, the proposed work will support NASA’s role under the National Space Weather Strategy and Action Plan, and have a beneficial impact on NASA’s space weather forecasting and mitigation capabilities.
The Domain Specific Language (DSL) and translator may be applied to any Cartesian grid based PDE solver. In addition to space weather modeling, the tools developed under this work will potentially have application in the financial industry. Since the proposed DSL reduces the skill and effort required to write portable HPC code, the tools developed here may be useful for academic teaching/research.