Abstract
Models simulating the state of the biological and physical environment can be built using frameworks that contain pre-developed data structures and operations. To achieve good model performance it is important that individual modelling operations perform and scale well. Flow accumulation operations that support the use of criteria for selecting how much material flows downstream are an important part in several Earth surface simulation models. For these operations, no algorithms exist that perform, scale, and compose well. The objective of this study is to develop these algorithms, and evaluate their performance, scalability, and composability. We base our algorithms on the asynchronous many-task approach for parallel and concurrent computations, which avoids the use of synchronization points and supports composability of modelling operations. The relative strong and weak scaling efficiencies when scaling a flow accumulation operation over six CPU cores in a NUMA node are 83% and 84% respectively. The relative strong and weak scaling efficiencies when scaling a case-study model over four cluster nodes are 73% and 84%. Our algorithms are composable: the latency of executing two flow accumulation operations combined is lower than the sum of their individual latencies.
Original language | English |
---|---|
Article number | 105083 |
Pages (from-to) | 1-12 |
Number of pages | 12 |
Journal | Computers & Geosciences |
Volume | 162 |
DOIs | |
Publication status | Published - May 2022 |
Bibliographical note
Funding Information:This work was supported by the Research IT innovation programme (Utrecht University, The Netherlands). The authors would like to thank Oliver Schmitz for creating the LUE Conda packages. The LUE scalable modelling framework is hosted on GitHub at https://github.com/computationalgeography/lue. The framework is implemented by Kor de Jong (corresponding author) in C?? and the source code is freely available under the MIT open source license. A document called README.md is included in the root of the source code repository detailing the instructions for building the software. LUE is portable software and has been successfully built on various platforms (operating systems: Linux, macOS; compilers: Clang, GCC; architecture: x86-64). A project containing the version of LUE used in this work (de Jong and Schmitz, 2021), and containing additional information about the commands used for the described experiments can also be found on GitHub, at https://github.com/computationalgeography/paper_2021_routing.
Funding Information:
This work was supported by the Research IT innovation programme (Utrecht University, The Netherlands) .
Publisher Copyright:
© 2022 The Author(s)
Keywords
- Modelling framework
- Flow accumulation
- High-performance computing
- Asynchronous many-tasks
- HPX
- LUE