English

Automated Generation of High-Performance Computational Fluid Dynamics Codes

Mathematical Software 2022-04-28 v2 Computational Engineering, Finance, and Science Distributed, Parallel, and Cluster Computing

Abstract

Domain-Specific Languages (DSLs) improve programmers productivity by decoupling problem descriptions from algorithmic implementations. However, DSLs for High-Performance Computing (HPC) have two additional critical requirements: performance and scalability. This paper presents the automated process of generating, from abstract mathematical specifications of Computational Fluid Dynamics (CFD) problems, optimised parallel codes that perform and scale as manually optimised ones. We consciously combine within Saiph, a DSL for solving CFD problems, low-level optimisations and parallelisation strategies, enabling high-performance single-core executions which effectively scale to multi-core and distributed environments. Our results demonstrate how high-level DSLs can offer competitive performance by transparently leveraging state-of-the-art HPC techniques.

Keywords

Cite

@article{arxiv.2204.12120,
  title  = {Automated Generation of High-Performance Computational Fluid Dynamics Codes},
  author = {Sandra Macià and Pedro J. Martıínez-Ferrer and Eduard Ayguadé and Vicenç Beltran},
  journal= {arXiv preprint arXiv:2204.12120},
  year   = {2022}
}

Comments

30 pages, 18 figures. Postprint submitted to the Journal of Computational Science (Elsevier). Article updated with reviewers' comments, additional material in section 4.3 including figures and correction of typos

R2 v1 2026-06-24T10:58:40.237Z