A unified object-oriented framework for CPU+GPU explicit hyperbolic solvers

Abstract A unified design solution for heterogeneous explicit hyperbolic solvers is herein introduced. The proposed design is entirely cross-compatible between CPUs and GPUs, through an intuitive object-oriented approach. The advantages of a unified CPU+GPU development approach are discussed and exemplified, and a complete description of the data and code structures are provided and benchmarked. The benefits of different object-oriented designs are quantified under static and dynamic loads in terms of parallel performance and scalability. A fair comparison with graphics processors provides a realistic measure of achievable GPU implementation benefits. Both automatically and manually tuned GPU executions are compared and shown to also have a significant impact on the obtained performance. Overall, the proposed design combines a good sequential performance with a supra-linear scalability on modern CPUs. On GPUs, execution is shown to be up to 40 times faster than its single-threaded counterpart, opening a wider range of applicable model scales and resolutions.

[1]  Rui M. L. Ferreira,et al.  Severity and exposure associated with tsunami actions in urban waterfronts: the case of Lisbon, Portugal , 2015, Natural Hazards.

[2]  James R. Larus,et al.  Cache-conscious structure layout , 1999, PLDI '99.

[3]  Carlos Parés,et al.  On the well-balance property of Roe?s method for nonconservative hyperbolic systems , 2004 .

[4]  Javier Murillo,et al.  A Riemann solver for unsteady computation of 2D shallow flows with variable density , 2012, J. Comput. Phys..

[5]  Ji Yueh Liu,et al.  Hybrid OpenMP/AVX acceleration of a Split HLL Finite Volume Method for the Shallow Water and Euler Equations , 2015 .

[6]  Ralph Johnson,et al.  design patterns elements of reusable object oriented software , 2019 .

[7]  Wen-mei W. Hwu,et al.  DL: A data layout transformation system for heterogeneous computing , 2012, 2012 Innovative Parallel Computing (InPar).

[8]  P. LeFloch,et al.  Hyperbolic Systems of Conservation Laws: The Theory of Classical and Nonclassical Shock Waves , 2002 .

[9]  Javier Murillo,et al.  Weak solutions for partial differential equations with source terms: Application to the shallow water equations , 2010, J. Comput. Phys..

[10]  Serge Guillas,et al.  The VOLNA-OP2 tsunami code (version 1.5) , 2018, Geoscientific Model Development.

[11]  R. Ferreira,et al.  A shallow-flow model for the propagation of tsunamis over complex geometries and mobile beds , 2013 .

[12]  Jeffrey S. Vetter Contemporary High Performance Computing: From Petascale toward Exascale , 2013 .

[13]  Alessandro Dal Palù,et al.  GPU-enhanced Finite Volume Shallow Water solver for fast flood simulations , 2014, Environ. Model. Softw..

[14]  Xiaoming Jiang,et al.  Parallel computation of a dam-break flow model using OpenMP on a multi-core computer , 2014 .

[15]  James Demmel,et al.  the Parallel Computing Landscape , 2022 .

[16]  William N. Dawes,et al.  A practical demonstration of scalable, parallel mesh generation , 2009 .

[17]  Javier Murillo,et al.  An optimized GPU implementation of a 2D free surface simulation model on unstructured meshes , 2014, Adv. Eng. Softw..

[18]  Javier Murillo,et al.  Conservative numerical simulation of multi-component transport in two-dimensional unsteady shallow water flow , 2009, J. Comput. Phys..

[19]  Marc de la Asunción,et al.  Efficient GPU implementation of a two waves TVD-WAF method for the two-dimensional one layer shallow water system on structured meshes , 2013 .

[20]  Eleuterio F. Toro,et al.  Flux splitting schemes for the Euler equations , 2012 .

[21]  M. Franca,et al.  Mathematical modelling of shallow flows: Closure models drawn from grain-scale mechanics of sediment transport and flow hydrodynamicsThis paper is one of a selection of papers in this Special Issue in honour of Professor M. Selim Yalin (1925–2007). , 2009 .

[22]  Ye-In Chang,et al.  Neighbor-finding based on space-filling curves , 2005, Inf. Syst..

[23]  Jorge Macías,et al.  Comparison and Computational Performance of Tsunami-HySEA and MOST Models for LANTEX 2013 Scenario: Impact Assessment on Puerto Rico Coasts , 2016, Pure and Applied Geophysics.

[24]  Rui M. L. Ferreira,et al.  Two-dimensional depth-averaged modelling of dam-break flows over mobile beds , 2013 .

[25]  R. LeVeque,et al.  HIGH-RESOLUTION FINITE VOLUME METHODS FOR THE SHALLOW WATER EQUATIONS WITH BATHYMETRY AND DRY STATES , 2008 .

[26]  P. Roe Approximate Riemann Solvers, Parameter Vectors, and Difference Schemes , 1997 .