Articles | Volume 11, issue 11
https://doi.org/10.5194/gmd-11-4621-2018
https://doi.org/10.5194/gmd-11-4621-2018
Development and technical paper
 | 
19 Nov 2018
Development and technical paper |  | 19 Nov 2018

The VOLNA-OP2 tsunami code (version 1.5)

Istvan Z. Reguly, Daniel Giles, Devaraj Gopinathan, Laure Quivy, Joakim H. Beck, Michael B. Giles, Serge Guillas, and Frederic Dias

Abstract. In this paper, we present the VOLNA-OP2 tsunami model and implementation; a finite-volume non-linear shallow-water equation (NSWE) solver built on the OP2 domain-specific language (DSL) for unstructured mesh computations. VOLNA-OP2 is unique among tsunami solvers in its support for several high-performance computing platforms: central processing units (CPUs), the Intel Xeon Phi, and graphics processing units (GPUs). This is achieved in a way that the scientific code is kept separate from various parallel implementations, enabling easy maintainability. It has already been used in production for several years; here we discuss how it can be integrated into various workflows, such as a statistical emulator. The scalability of the code is demonstrated on three supercomputers, built with classical Xeon CPUs, the Intel Xeon Phi, and NVIDIA P100 GPUs. VOLNA-OP2 shows an ability to deliver productivity as well as performance and portability to its users across a number of platforms.

Download
Short summary
We present the VOLNA-OP2 tsunami simulation code, built on the OP2 library. It is unique among such solvers in its support for several high-performance computing platforms: CPUs, the Intel Xeon Phi, and GPUs. This is achieved in a way that the scientific code is kept separate from various parallel implementations, enabling easy maintainability. Scalability and efficiency are demonstrated on three supercomputers built with CPUs, Xeon Phi's, and GPUs.