Weinzierl, Tobias (2019) 'The Peano software---parallel, automaton-based, dynamically adaptive grid traversals.', ACM transactions on mathematical software., 45 (2). p. 14.
Abstract
We discuss the design decisions, design alternatives, and rationale behind the third generation of Peano, a framework for dynamically adaptive Cartesian meshes derived from spacetrees. Peano ties the mesh traversal to the mesh storage and supports only one element-wise traversal order resulting from space-filling curves. The user is not free to choose a traversal order herself. The traversal can exploit regular grid subregions and shared memory as well as distributed memory systems with almost no modifications to a serial application code. We formalize the software design by means of two interacting automata—one automaton for the multiscale grid traversal and one for the application-specific algorithmic steps. This yields a callback-based programming paradigm. We further sketch the supported application types and the two data storage schemes realized before we detail high-performance computing aspects and lessons learned. Special emphasis is put on observations regarding the used programming idioms and algorithmic concepts. This transforms our report from a “one way to implement things” code description into a generic discussion and summary of some alternatives, rationale, and design decisions to be made for any tree-based adaptive mesh refinement software.
Item Type: | Article |
---|---|
Full text: | (AM) Accepted Manuscript Download PDF (1547Kb) |
Status: | Peer-reviewed |
Publisher Web site: | https://doi.org/10.1145/3319797 |
Publisher statement: | © 2019 American Mathematical Society. First published in Weinzierl, Tobias (2019). The Peano software---parallel, automaton-based, dynamically adaptive grid traversals. ACM Transactions on Mathematical Software 45(2): 14 published by the American Mathematical Society. |
Date accepted: | No date available |
Date deposited: | 07 December 2018 |
Date of first online publication: | 18 April 2019 |
Date first made open access: | 18 April 2019 |
Save or Share this output
Export: | |
Look up in GoogleScholar |