Performance evaluation of explicit finite difference algorithms with varying amounts of computational and memory intensity

Future architectures designed to deliver exascale performance motivate the need for novel algorithmic changes in order to fully exploit their capabilities. In this paper, the performance of several numerical algorithms, characterised by varying degrees of memory and computational intensity, are evaluated in the context of finite difference methods for fluid dynamics problems. It is shown that, by storing some of the evaluated derivatives as single thread- or process-local variables in memory, or recomputing the derivatives on-the-fly, a speed-up of ~2 can be obtained compared to traditional algorithms that store all derivatives in global arrays.

[1]  Matthew D. Piggott,et al.  Firedrake-Fluids v0.1: numerical modelling of shallow water flows using an automated solution framework , 2015 .

[2]  Neil D. Sandham,et al.  OpenSBLI: A framework for the automated derivation and parallel execution of finite difference solvers on a range of computer architectures , 2016, J. Comput. Sci..

[3]  Neil D. Sandham,et al.  Numerical study of oblique shock-wave/boundary-layer interaction considering sidewall effects , 2015, Journal of Fluid Mechanics.

[4]  W. C. Reynolds,et al.  The potential and limitations of direct and large eddy simulations , 1990 .

[5]  Richard D. Sandberg,et al.  Acoustic and hydrodynamic analysis of the flow around an aerofoil with trailing-edge serrations , 2012, Journal of Fluid Mechanics.

[6]  William Gropp,et al.  CFD Vision 2030 Study: A Path to Revolutionary Computational Aerosciences , 2014 .

[7]  Simon McIntosh-Smith,et al.  The OPS Domain Specific Abstraction for Multi-block Structured Grid Computations , 2014, 2014 Fourth International Workshop on Domain-Specific Languages and High-Level Frameworks for High Performance Computing.

[8]  J. Debonis Solutions of the Taylor-Green Vortex Problem Using High-Resolution Explicit Finite Difference Methods , 2013 .

[9]  Matteo Bernardini,et al.  GPU accelerated flow solver for direct numerical simulation of turbulent flows , 2013, J. Comput. Phys..

[10]  Julien Thibault,et al.  IMPLEMENTATION OF A CARTESIAN GRID INCOMPRESSIBLE NAVIER-STOKES SOLVER ON MULTI-GPU DESKTOP PLATFORMS USING CUDA , 2009 .

[11]  H. C. Yee,et al.  Entropy Splitting for High Order Numerical Simulation of Compressible Turbulence , 2002 .

[12]  John L. Lumley Whither turbulence? : turbulence at the crossroads : proceedings of a workshop held at Cornell University, Ithaca, NY, March 22-24, 1989 , 1990 .

[13]  Rémi Abgrall,et al.  High‐order CFD methods: current status and perspective , 2013 .

[14]  Gregory A. Blaisdell,et al.  The effect of the formulation of nonlinear terms on aliasing errors in spectral methods , 1996 .

[15]  Lawrence Mitchell,et al.  PyOP2: A High-Level Framework for Performance-Portable Simulations on Unstructured Meshes , 2012, 2012 SC Companion: High Performance Computing, Networking Storage and Analysis.

[16]  Matteo Bernardini,et al.  Early evolution of the compressible mixing layer issued from two turbulent streams , 2015, Journal of Fluid Mechanics.

[17]  J. Lumley Whither Turbulence? Turbulence at the Crossroads , 1990 .