InKS, a Programming Model to Decouple Algorithm from Optimization in HPC Codes

Abstract : Existing programming models tend to tightly interleave algorithm and optimization in HPC simulation codes. This requires scientists to become experts in both the simulated domain and the optimization process and makes the code difficult to maintain or port to new architectures. In this paper, we propose the InKS programming model that decouples these concerns with two distinct languages: InKS pia to express the simulation algorithm and InKS pso for optimizations. We define InKS pia and evaluate the feasibility of defining InKS pso with three test-languages: InKS o/C++ , InKS o/loop , InKS o/XMP. We evaluate the approach on synthetic benchmarks (NAS and heat equation) as well as on a more complex example (6D Vlasov-Poisson solver). Our evaluation demonstrates the soundness of the approach as it improves the separation of algorithmic and optimization concerns at no performance cost. We also identify a set of guidelines for the later full definition of the InKS pso language.
Complete list of metadatas

Cited literature [22 references]  Display  Hide  Download

https://hal.inria.fr/hal-02281963
Contributor : Ksander Ejjaaouani <>
Submitted on : Monday, September 9, 2019 - 3:57:43 PM
Last modification on : Wednesday, September 11, 2019 - 1:15:40 AM

File

papier.pdf
Files produced by the author(s)

Identifiers

Citation

Ksander Ejjaaouani, Olivier Aumage, Julien Bigot, Michel Mehrenberger, Hitoshi Murai, et al.. InKS, a Programming Model to Decouple Algorithm from Optimization in HPC Codes. Journal of Supercomputing, Springer Verlag, 2019, ⟨10.1007/s11227-019-02950-2⟩. ⟨hal-02281963⟩

Share

Metrics

Record views

38

Files downloads

107