A Halo abstraction for distributed n-dimensional structured grids within the C++ PGAS library DASH

Research output: Contribution to journalResearch articleContributedpeer-review

Abstract

The Partitioned Global Address Space (PGAS) library DASH provides C++ container classes for distributed N-dimensional structured grids. This article presents enhancements on top of the DASH library to support stencil operations and halo areas to conveniently and efficiently parallelize structured grids. The improvements include definitions of multiple stencil operators, automatic derivation of halo sizes, efficient halo data exchanges, as well as communication hiding optimizations. The main contributions of this article are two-fold. First, the halo abstraction concept and the halo wrapper software components are explained. Second, the code complexity and the runtime of an example code implemented in DASH and pure Message Passing Interface (MPI) are compared.

Details

Original languageEnglish
Article numbere1203
Number of pages20
JournalPeerJ computer science
Volume9
Publication statusPublished - 3 Feb 2023
Peer-reviewedYes

External IDs

dblp journals/peerj-cs/HunichK23
WOS 000933125600003
PubMed 37346733
Scopus 85185720725

Keywords

ASJC Scopus subject areas

Keywords

  • Abstraction, C++, Dash, Distributed memory, Halo, Pgas, Software Engineering, Stencil codes, distribued systems, memory, parallel computing

Library keywords