Journal cover Journal topic
Geoscientific Model Development An interactive open-access journal of the European Geosciences Union
Journal topic

Journal metrics

IF value: 5.240
IF5.240
IF 5-year value: 5.768
IF 5-year
5.768
CiteScore value: 8.9
CiteScore
8.9
SNIP value: 1.713
SNIP1.713
IPP value: 5.53
IPP5.53
SJR value: 3.18
SJR3.18
Scimago H <br class='widget-line-break'>index value: 71
Scimago H
index
71
h5-index value: 51
h5-index51
Preprints
https://doi.org/10.5194/gmd-2020-257
© Author(s) 2020. This work is distributed under
the Creative Commons Attribution 4.0 License.
https://doi.org/10.5194/gmd-2020-257
© Author(s) 2020. This work is distributed under
the Creative Commons Attribution 4.0 License.

Submitted as: model description paper 22 Oct 2020

Submitted as: model description paper | 22 Oct 2020

Review status
This preprint is currently under review for the journal GMD.

Parallelizing a serial code: open–source module, EZ Parallel 1.0, and geophysics examples

Jason Louis Turner1 and Samuel N. Stechmann1,2 Jason Louis Turner and Samuel N. Stechmann
  • 1Department of Mathematics, University of Wisconsin–Madison, Madison, WI, USA
  • 2Department of Atmospheric and Oceanic Sciences, University of Wisconsin–Madison, Madison, WI, USA

Abstract. Parallel computing can offer substantial speedup of numerical simulations in comparison to serial computing, as parallel computing uses many processors simultaneously rather than a single processor. However, it typically also requires substantial time and effort to convert a serial code into a parallel code. Here, a new module is developed to reduce the time and effort required to parallelize a serial code. The tested version of the module is written in the Fortran programming language,while the framework could also be extended to other languages (C++, Python, Julia, etc.). The Message Passing Interface is used to allow for either shared-memory or distributed-memory computer architectures. The software is designed for solving partial differential equations on a rectangular two-dimensional or three-dimensional domain, using finite difference, finite volume, pseudo-spectral, or other similar numerical methods. Examples are provided for two idealized models of atmospheric and oceanic fluid dynamics: the two-level quasi-geostrophic equations, and the stochastic heat equation as a model for turbulent advection–diffusion of either water vapor and clouds or sea surface height variability. In tests of the parallelized code, the strong scaling efficiency for the finite difference code is seen to be roughly 80 % to 90 %, which is achieved by adding roughly only 10 new lines to the serial code. Therefore, EZ Parallel provides great benefits with minimal additional effort.

Jason Louis Turner and Samuel N. Stechmann

Interactive discussion

Status: open (until 30 Dec 2020)
Status: open (until 30 Dec 2020)
AC: Author comment | RC: Referee comment | SC: Short comment | EC: Editor comment
[Subscribe to comment alert] Printer-friendly Version - Printer-friendly version Supplement - Supplement

Jason Louis Turner and Samuel N. Stechmann

Model code and software

EZ Parallel 1.0 Jason L. Turner and Samuel Stechmann https://doi.org/10.5281/zenodo.4107203

Jason Louis Turner and Samuel N. Stechmann

Viewed

Total article views: 268 (including HTML, PDF, and XML)
HTML PDF XML Total BibTeX EndNote
202 64 2 268 5 5
  • HTML: 202
  • PDF: 64
  • XML: 2
  • Total: 268
  • BibTeX: 5
  • EndNote: 5
Views and downloads (calculated since 22 Oct 2020)
Cumulative views and downloads (calculated since 22 Oct 2020)

Viewed (geographical distribution)

Total article views: 178 (including HTML, PDF, and XML) Thereof 175 with geography defined and 3 with unknown origin.
Country # Views %
  • 1
1
 
 
 
 

Cited

Saved

No saved metrics found.

Discussed

No discussed metrics found.
Latest update: 01 Dec 2020
Publications Copernicus
Download
Short summary
EZ Parallel is a Fortran Message Passing Interface library designed to allow users to easily and quickly turn their serial code into a parallel one for the purpose of obtaining simulations with higher resolutions or larger domain sizes in a shorter amount of time. In tests of the parallelized code, the strong scaling efficiency for the finite difference code is seen to be roughly 80% to 90%, which is achieved by adding roughly only 10 new lines to the serial code.
EZ Parallel is a Fortran Message Passing Interface library designed to allow users to easily and...
Citation