Poseidon: A Source-to-Source Translator for Holistic HPC Optimizations of Ocean Models on Regular Grids
Résumé
Ocean simulation models often underperform on modern high-performance computing (HPC) architectures, necessitating costly and time-consuming code rewrites.
We introduce Poseidon, an HPC-oriented source-to-source translator for Fortran-based fluid dynamics solvers used in ocean and weather models with regular grid structures. Poseidon aims to recover high-level information and semantics lost during the process of converting numerics to source code.
We demonstrate Poseidon's approach using a research code implementing the 2D fast barotropic solver of full 3D ocean simulation models, which involves over 20 stencil-like kernels. Kernel fusion-based code optimization can already lead to a high combinatorial complexity.
Preliminary results include various performance studies with and without data flow graph-based modifications based on an exhaustive search for kernel fusion. Measurements show that Poseidon can generate optimized Fortran code.
In future work, Poseidon automatic code rewrite should help to: port existing code to GPU, hide process communications latency and apply automatic differentiation.
Fichier principal
poster_final.pdf (927.9 Ko)
Télécharger le fichier
summary_final.pdf (85.26 Ko)
Télécharger le fichier
Origine | Fichiers produits par l'(les) auteur(s) |
---|
Origine | Fichiers produits par l'(les) auteur(s) |
---|