Efficiently simulating Lagrangian particles in large-scale ocean flows — Data structures and their impact on geophysical applications
Kehl, Christian; Nooteboom, Peter D.; Kaandorp, Mikael L.A.; van Sebille, Erik
(2023) Computers and Geosciences, volume 175
(Article)
Abstract
Studying oceanography by using Lagrangian simulations has been adopted for a range of scenarios, such as the determining the fate of microplastics in the ocean, simulating the origin locations of microplankton used for palaeoceanographic reconstructions, and for studying the impact of fish aggregation devices on the migration behaviour of tuna.
... read more
These simulations are complex and represent a considerable runtime effort to obtain trajectory results, which is the prime motivation for enhancing the performance of Lagrangian particle simulators. This paper assesses established performance enhancing techniques from Eulerian simulators in light of computational conditions and demands of Lagrangian simulators. A performance enhancement strategy specifically targeting physics-based Lagrangian particle simulations is outlined to address the performance gaps, and techniques for closing the performance gap are presented and implemented. Realistic experiments are derived from three specific oceanographic application scenarios, and the suggested performance-enhancing techniques are benchmarked in detail, so to allow for a good attribution of speed-up measurements to individual techniques. The impacts and insights of the performance enhancement strategy are further discussed for Lagrangian simulations in other geoscience applications. The experiments show that I/O-enhancing techniques, such as dynamic loading and buffering, lead to considerable speed-up on-par with an idealised parallelisation of the process over 20 nodes. Conversely, while the cache-efficient structure-of-arrays collection yields a visible speed-up, other alternative data structures fail in fulfilling the theoretically-expected performance increase. This insight demonstrates the importance of good data alignment in memory and caches for Lagrangian physics simulations.
show less
Download/Full Text
Keywords: Lagrangian simulations, Particle systems, Performance enhancement, Physical oceanography, Information Systems, Computers in Earth Sciences
ISSN: 0098-3004
Publisher: Elsevier
Note: Funding Information: All authors thank the OceanParcels group of Utrecht University's IMAU for their valuable feedback and the provided, interesting application scenarios. The research is supported by the “Tracking Of Plastic In Our Seas” (TOPIOS) project (grant agreement no. 715386), and partly by the IMMERSE project (grant agreement no. 821926), both funded by ERC's Horizon 2020 Research and Innovation program. Furthermore, the NWO Groot-funded nanoplastics project, Netherlands (ref. no. OCENW.GROOT.2019.043) supported the outlined development. Simulations were carried out on the Dutch National e-Infrastructure with the support of SURF Cooperative (project no. 16371 and 2019.034). We thank Phillipe Delandmeter, a former group member, for his considerable early contributions to the HPC developments in parcels. We further thank Delphine M.A. Lobelle, Stefanie L. Ypma and Reint P.B. Fischer for their microbiological- and physics curation of the biofouling study and the Galapagos cleanup project. Code availability section, Package name: parcels, Contact: e.vansebille@uu.nl, Hardware requirements: laptop or workstation for small, synthetic examples; high-throughput workstation or cluster for realistic scenarios; scales to HPC facilities with MPI support via SGE, SLURM or PBS, Program language: Python, Software required: python package dependencies are lists in github's environment file; requires mpi4py for MPI distribution; requires portalocker for the hardware buffer branch. Program size: 7.7 megabytes, The source codes are available for downloading at the link: https://github.com/oceanparcels/parcels, Installation guide, tutorials, training material and literature overview available at https://oceanparcels.org. The package is available at conda-forge under https://anaconda.org/conda-forge/parcels. Funding Information: All authors thank the OceanParcels group of Utrecht University’s IMAU for their valuable feedback and the provided, interesting application scenarios. The research is supported by the “Tracking Of Plastic In Our Seas” (TOPIOS) project (grant agreement no. 715386 ), and partly by the IMMERSE project (grant agreement no. 821926 ), both funded by ERC’s Horizon 2020 Research and Innovation program . Furthermore, the NWO Groot-funded nanoplastics project, Netherlands (ref. no. OCENW.GROOT.2019.043 ) supported the outlined development. Simulations were carried out on the Dutch National e-Infrastructure with the support of SURF Cooperative (project no. 16371 and 2019.034 ). We thank Phillipe Delandmeter, a former group member, for his considerable early contributions to the HPC developments in parcels. We further thank Delphine M.A. Lobelle, Stefanie L. Ypma and Reint P.B. Fischer for their microbiological- and physics curation of the biofouling study and the Galapagos cleanup project. Publisher Copyright: © 2023
(Peer reviewed)