Parcels v0.9: prototyping a Lagrangian ocean analysis framework for the petascale age
As ocean general circulation models (OGCMs) move into the petascale age,
where the output of single simulations exceeds petabytes of storage space,
tools to analyse the output of these models will need to scale up too.
Lagrangian ocean analysis, where virtual particles are tracked through
hydrodynamic fields, is an increasingly popular way to analyse OGCM output,
by mapping pathways and connectivity of biotic and abiotic particulates.
However, the current software stack of Lagrangian ocean analysis codes is not
dynamic enough to cope with the increasing complexity, scale and need for
customization of use-cases. Furthermore, most community codes are developed
for stand-alone use, making it a nontrivial task to integrate virtual
particles at runtime of the OGCM. Here, we introduce the new Parcels code,
which was designed from the ground up to be sufficiently scalable to cope
with petascale computing. We highlight its API design that combines
flexibility and customization with the ability to optimize for HPC workflows,
following the paradigm of domain-specific languages. Parcels is primarily
written in Python, utilizing the wide range of tools available in the
scientific Python ecosystem, while generating low-level C code and using
just-in-time compilation for performance-critical computation. We show a
worked-out example of its API, and validate the accuracy of the code against
seven idealized test cases. This version 0.9 of Parcels is focused on laying
out the API, with future work concentrating on support for curvilinear grids,
optimization, efficiency and at-runtime coupling with OGCMs.
Document Type: Research Article
Affiliations: 1: Grantham Institute & Department of Earth Science and Engineering, Imperial College London, London, UK 2: Institute for Marine and Atmospheric research Utrecht, Utrecht University, Utrecht, the Netherlands 3: Grantham Institute & Department of Physics, Imperial College London, London, UK
Publication date: 01 January 2017
- Access Key
- Free content
- Partial Free content
- New content
- Open access content
- Partial Open access content
- Subscribed content
- Partial Subscribed content
- Free trial content