GPU-accelerated atmospheric chemical kinetics in the ECHAM/MESSy (EMAC) Earth system model (version 2.52)
Open Access
- 10 October 2017
- journal article
- research article
- Published by Copernicus GmbH in Geoscientific Model Development
- Vol. 10 (10), 3679-3693
- https://doi.org/10.5194/gmd-10-3679-2017
Abstract
This paper presents an application of GPU accelerators in Earth system modeling. We focus on atmospheric chemical kinetics, one of the most computationally intensive tasks in climate–chemistry model simulations. We developed a software package that automatically generates CUDA kernels to numerically integrate atmospheric chemical kinetics in the global climate model ECHAM/MESSy Atmospheric Chemistry (EMAC), used to study climate change and air quality scenarios. A source-to-source compiler outputs a CUDA-compatible kernel by parsing the FORTRAN code generated by the Kinetic PreProcessor (KPP) general analysis tool. All Rosenbrock methods that are available in the KPP numerical library are supported. Performance evaluation, using Fermi and Pascal CUDA-enabled GPU accelerators, shows achieved speed-ups of 4. 5 × and 20. 4 × , respectively, of the kernel execution time. A node-to-node real-world production performance comparison shows a 1. 75 × speed-up over the non-accelerated application using the KPP three-stage Rosenbrock solver. We provide a detailed description of the code optimizations used to improve the performance including memory optimizations, control code simplification, and reduction of idle time. The accuracy and correctness of the accelerated implementation are evaluated by comparing to the CPU-only code of the application. The median relative difference is found to be less than 0.000000001 % when comparing the output of the accelerated kernel the CPU-only code. The approach followed, including the computational workload division, and the developed GPU solver code can potentially be used as the basis for hardware acceleration of numerous geoscientific models that rely on KPP for atmospheric chemical kinetics applications.This publication has 16 references indexed in Scilit:
- MEDINA: MECCA Development in Accelerators – KPP Fortran to CUDA source-to-source Pre-processorJournal of Open Research Software, 2017
- Earth system modelling on system-level heterogeneous architectures: EMAC (version 2.42) on the Dynamical Exascale Entry Platform (DEEP)Geoscientific Model Development, 2016
- Accelerated chemical kinetics in the EMAC chemistry-climate modelPublished by Institute of Electrical and Electronics Engineers (IEEE) ,2016
- Numerical reproducibility: Feasibility issuesPublished by Institute of Electrical and Electronics Engineers (IEEE) ,2015
- 5.1 POWER8TM: A 12-core server-class processor in 22nm SOI with 7.6Tb/s off-chip bandwidthPublished by Institute of Electrical and Electronics Engineers (IEEE) ,2014
- Exploring Multi-level Parallelism in Atmospheric ApplicationsPublished by Institute of Electrical and Electronics Engineers (IEEE) ,2012
- Development cycle 2 of the Modular Earth Submodel System (MESSy2)Geoscientific Model Development, 2010
- Multi-core acceleration of chemical kinetics for simulation and predictionPublished by Association for Computing Machinery (ACM) ,2009
- The OpenCL specificationPublished by Institute of Electrical and Electronics Engineers (IEEE) ,2009
- Technical note: Simulating chemical systems in Fortran90 and Matlab with the Kinetic PreProcessor KPP-2.1Atmospheric Chemistry and Physics, 2006