Journal
CONCURRENCY AND COMPUTATION-PRACTICE & EXPERIENCE
Volume 34, Issue 14, Pages -Publisher
WILEY
DOI: 10.1002/cpe.6616
Keywords
code generation; distributed computing; domain-specific languages; numerical algorithms
Funding
- German Federal Ministry of Education and Research (BMBF) [01IH16005]
- Paderborn Center for Parallel Computing (PC2)
Ask authors/readers for more resources
This article introduces the HighPerMeshes DSL, a C++-embedded domain-specific language aimed at improving productivity in code development on multiple target platforms. The usage of HighPerMeshes DSL is demonstrated with three examples, showing the mapping of abstract algorithmic descriptions onto parallel hardware. Performance and scalability of different example problems are also demonstrated.
Solving partial differential equations (PDEs) on unstructured grids is a cornerstone of engineering and scientific computing. Heterogeneous parallel platforms, including CPUs, GPUs, and FPGAs, enable energy-efficient and computationally demanding simulations. In this article, we introduce the HighPerMeshes C++-embedded domain-specific language (DSL) that bridges the abstraction gap between the mathematical formulation of mesh-based algorithms for PDE problems on the one hand and an increasing number of heterogeneous platforms with their different programming models on the other hand. Thus, the HighPerMeshes DSL aims at higher productivity in the code development process for multiple target platforms. We introduce the concepts as well as the basic structure of the HighPerMeshes DSL, and demonstrate its usage with three examples. The mapping of the abstract algorithmic description onto parallel hardware, including distributed memory compute clusters, is presented. A code generator and a matching back end allow the acceleration of HighPerMeshes code with GPUs. Finally, the achievable performance and scalability are demonstrated for different example problems.
Authors
I am an author on this paper
Click your name to claim this paper and add it to your profile.
Reviews
Recommended
No Data Available