---
_id: '21587'
abstract:
- lang: eng
  text: Solving partial differential equations on unstructured grids is a cornerstone
    of engineering and scientific computing. Nowadays, heterogeneous parallel platforms
    with CPUs, GPUs, and FPGAs enable energy-efficient and computationally demanding
    simulations. We developed the HighPerMeshes C++-embedded Domain-Specific Language
    (DSL) for bridging the abstraction gap between the mathematical and algorithmic
    formulation of mesh-based algorithms for PDE problems on the one hand and an increasing
    number of heterogeneous platforms with their different parallel programming and
    runtime 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, a Poisson and monodomain problem, respectively,
    solved by the continuous finite element method, and the discontinuous Galerkin
    method for Maxwell’s equation. The mapping of the abstract algorithmic description
    onto parallel hardware, including distributed memory compute clusters, is presented.
    Finally, the achievable performance and scalability are demonstrated for a typical
    example problem on a multi-core CPU cluster.
author:
- first_name: Samer
  full_name: Alhaddad, Samer
  id: '42456'
  last_name: Alhaddad
- first_name: Jens
  full_name: Förstner, Jens
  id: '158'
  last_name: Förstner
  orcid: 0000-0001-7059-9862
- first_name: Stefan
  full_name: Groth, Stefan
  last_name: Groth
- first_name: Daniel
  full_name: Grünewald, Daniel
  last_name: Grünewald
- first_name: Yevgen
  full_name: Grynko, Yevgen
  id: '26059'
  last_name: Grynko
- first_name: Frank
  full_name: Hannig, Frank
  last_name: Hannig
- first_name: Tobias
  full_name: Kenter, Tobias
  id: '3145'
  last_name: Kenter
- first_name: Franz-Josef
  full_name: Pfreundt, Franz-Josef
  last_name: Pfreundt
- first_name: Christian
  full_name: Plessl, Christian
  id: '16153'
  last_name: Plessl
  orcid: 0000-0001-5728-9982
- first_name: Merlind
  full_name: Schotte, Merlind
  last_name: Schotte
- first_name: Thomas
  full_name: Steinke, Thomas
  last_name: Steinke
- first_name: Jürgen
  full_name: Teich, Jürgen
  last_name: Teich
- first_name: Martin
  full_name: Weiser, Martin
  last_name: Weiser
- first_name: Florian
  full_name: Wende, Florian
  last_name: Wende
citation:
  ama: 'Alhaddad S, Förstner J, Groth S, et al. HighPerMeshes – A Domain-Specific
    Language for Numerical Algorithms on Unstructured Grids. In: <i>Euro-Par 2020:
    Parallel Processing Workshops</i>. ; 2021. doi:<a href="https://doi.org/10.1007/978-3-030-71593-9_15">10.1007/978-3-030-71593-9_15</a>'
  apa: 'Alhaddad, S., Förstner, J., Groth, S., Grünewald, D., Grynko, Y., Hannig,
    F., Kenter, T., Pfreundt, F.-J., Plessl, C., Schotte, M., Steinke, T., Teich,
    J., Weiser, M., &#38; Wende, F. (2021). HighPerMeshes – A Domain-Specific Language
    for Numerical Algorithms on Unstructured Grids. In <i>Euro-Par 2020: Parallel
    Processing Workshops</i>. <a href="https://doi.org/10.1007/978-3-030-71593-9_15">https://doi.org/10.1007/978-3-030-71593-9_15</a>'
  bibtex: '@inbook{Alhaddad_Förstner_Groth_Grünewald_Grynko_Hannig_Kenter_Pfreundt_Plessl_Schotte_et
    al._2021, place={Cham}, title={HighPerMeshes – A Domain-Specific Language for
    Numerical Algorithms on Unstructured Grids}, DOI={<a href="https://doi.org/10.1007/978-3-030-71593-9_15">10.1007/978-3-030-71593-9_15</a>},
    booktitle={Euro-Par 2020: Parallel Processing Workshops}, author={Alhaddad, Samer
    and Förstner, Jens and Groth, Stefan and Grünewald, Daniel and Grynko, Yevgen
    and Hannig, Frank and Kenter, Tobias and Pfreundt, Franz-Josef and Plessl, Christian
    and Schotte, Merlind and et al.}, year={2021} }'
  chicago: 'Alhaddad, Samer, Jens Förstner, Stefan Groth, Daniel Grünewald, Yevgen
    Grynko, Frank Hannig, Tobias Kenter, et al. “HighPerMeshes – A Domain-Specific
    Language for Numerical Algorithms on Unstructured Grids.” In <i>Euro-Par 2020:
    Parallel Processing Workshops</i>. Cham, 2021. <a href="https://doi.org/10.1007/978-3-030-71593-9_15">https://doi.org/10.1007/978-3-030-71593-9_15</a>.'
  ieee: 'S. Alhaddad <i>et al.</i>, “HighPerMeshes – A Domain-Specific Language for
    Numerical Algorithms on Unstructured Grids,” in <i>Euro-Par 2020: Parallel Processing
    Workshops</i>, Cham, 2021.'
  mla: 'Alhaddad, Samer, et al. “HighPerMeshes – A Domain-Specific Language for Numerical
    Algorithms on Unstructured Grids.” <i>Euro-Par 2020: Parallel Processing Workshops</i>,
    2021, doi:<a href="https://doi.org/10.1007/978-3-030-71593-9_15">10.1007/978-3-030-71593-9_15</a>.'
  short: 'S. Alhaddad, J. Förstner, S. Groth, D. Grünewald, Y. Grynko, F. Hannig,
    T. Kenter, F.-J. Pfreundt, C. Plessl, M. Schotte, T. Steinke, J. Teich, M. Weiser,
    F. Wende, in: Euro-Par 2020: Parallel Processing Workshops, Cham, 2021.'
date_created: 2021-03-31T19:39:42Z
date_updated: 2023-09-26T11:40:25Z
ddc:
- '004'
department:
- _id: '61'
- _id: '230'
- _id: '429'
- _id: '27'
- _id: '518'
doi: 10.1007/978-3-030-71593-9_15
file:
- access_level: closed
  content_type: application/pdf
  creator: fossie
  date_created: 2021-03-31T19:42:52Z
  date_updated: 2021-03-31T19:42:52Z
  file_id: '21588'
  file_name: 2021-03 Alhaddad2021_Chapter_HighPerMeshesADomain-SpecificL.pdf
  file_size: 564398
  relation: main_file
  success: 1
file_date_updated: 2021-03-31T19:42:52Z
has_accepted_license: '1'
keyword:
- tet_topic_hpc
language:
- iso: eng
place: Cham
project:
- _id: '52'
  name: Computing Resources Provided by the Paderborn Center for Parallel Computing
publication: 'Euro-Par 2020: Parallel Processing Workshops'
publication_identifier:
  isbn:
  - '9783030715922'
  - '9783030715939'
  issn:
  - 0302-9743
  - 1611-3349
publication_status: published
quality_controlled: '1'
status: public
title: HighPerMeshes – A Domain-Specific Language for Numerical Algorithms on Unstructured
  Grids
type: book_chapter
user_id: '15278'
year: '2021'
...
