A TensorFlow Simulation Framework for Scientific Computing of Fluid Flows on Tensor Processing Units

A computational fluid dynamics (CFD) simulation framework for fluid-flow prediction is developed on the Tensor Processing Unit (TPU) platform. The TPU architecture is featured with accelerated dense matrix multiplication, large high bandwidth memory, and a fast interchip interconnect, making it attractive for high-performance scientific computing. The CFD framework solves the variable-density Navier-Stokes equation using a low-Mach approximation, and the governing equations are discretized by a finite-difference method on a collocated structured mesh. It uses the graph-based TensorFlow as the programming paradigm. The accuracy and performance of this framework is studied both numerically and analytically, specifically focusing on effects of TPU-native single precision floating point arithmetic. The algorithm and implementation are validated with canonical 2D and 3D Taylor-Green vortex simulations. To demonstrate the capability for simulating turbulent flows, simulations are conducted for two configurations, namely decaying homogeneous isotropic turbulence and a turbulent planar jet. Both simulations show good statistical agreement with reference solutions. The performance analysis shows a linear weak scaling and a superlinear strong scaling up to a full TPU v3 pod with 2048 cores.

[1]  Pradeep Dubey,et al.  A Study of BFLOAT16 for Deep Learning Training , 2019, ArXiv.

[2]  Pierre Lallemand,et al.  Consistent initial conditions for lattice Boltzmann simulations , 2006 .

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

[4]  Yasumasa Ito,et al.  Enstrophy and passive scalar transport near the turbulent/non-turbulent interface in a turbulent planar jet flow , 2014 .

[5]  Natalia Gimelshein,et al.  PyTorch: An Imperative Style, High-Performance Deep Learning Library , 2019, NeurIPS.

[6]  Christopher Dyken,et al.  State-of-the-art in heterogeneous computing , 2010, Sci. Program..

[7]  Nicholas J. Higham,et al.  The Accuracy of Floating Point Summation , 1993, SIAM J. Sci. Comput..

[8]  C. Rhie,et al.  A numerical study of the turbulent flow past an isolated airfoil with trailing edge separation , 1982 .

[9]  P. Yeung,et al.  GPU acceleration of extreme scale pseudo-spectral simulations of turbulence using asynchronism , 2019, SC.

[10]  Kouji Nagata,et al.  VISUALIZATION OF TURBULENT REACTIVE JET BY USING DIRECT NUMERICAL SIMULATION , 2013 .

[11]  John Anderson,et al.  Tensor Processing Units for Financial Monte Carlo , 2019, PPSC.

[12]  Graham Pullan,et al.  Acceleration of a two-dimensional Euler flow solver using commodity graphics hardware , 2007 .

[13]  Petros Koumoutsakos,et al.  A comparison of vortex and pseudo-spectral methods for the simulation of periodic vortical flows at high Reynolds numbers , 2011, J. Comput. Phys..

[14]  Alexander Heinecke,et al.  Leveraging the bfloat16 Artificial Intelligence Datatype For Higher-Precision Computations , 2019, 2019 IEEE 26th Symposium on Computer Arithmetic (ARITH).

[15]  John R. Anderson,et al.  High performance Monte Carlo simulation of ising model on TPU clusters , 2019, SC.

[16]  Alexey L. Lastovetsky,et al.  High Performance Heterogeneous Computing , 2009, Wiley series on parallel and distributed computing.

[17]  B. P. Leonard,et al.  A stable and accurate convective modelling procedure based on quadratic upstream interpolation , 1990 .

[18]  Olivier Terzo,et al.  Heterogeneous Computing Architectures : Challenges and Vision , 2019 .

[19]  R. Fox Computational Models for Turbulent Reacting Flows , 2003 .

[20]  P. Moin,et al.  Application of a Fractional-Step Method to Incompressible Navier-Stokes Equations , 1984 .

[21]  Danna Zhou,et al.  d. , 1840, Microbial pathogenesis.

[22]  이현주 Q. , 2005 .

[23]  A. Sengupta,et al.  Non-linear instability analysis of the two-dimensional Navier-Stokes equation: The Taylor-Green vortex problem , 2018 .

[24]  J. F. Fernández Oro,et al.  Application of Richardson extrapolation method to the CFD simulation of vertical-axis wind turbines and analysis of the flow field , 2019, Engineering Applications of Computational Fluid Mechanics.

[25]  P. Alam ‘K’ , 2021, Composites Engineering.

[26]  C. Pierce,et al.  Progress-variable approach for large-eddy simulation of turbulent combustion , 2001 .

[27]  David Patterson,et al.  A domain-specific supercomputer for training deep neural networks , 2020, Commun. ACM.

[28]  Kouji Nagata,et al.  Simultaneous measurements of reactive scalar and velocity in a planar liquid jet with a second-order chemical reaction , 2012 .

[29]  C. Rhie,et al.  Numerical Study of the Turbulent Flow Past an Airfoil with Trailing Edge Separation , 1983 .

[30]  Mark J. Harris Fast fluid dynamics simulation on the GPU , 2005, SIGGRAPH Courses.

[31]  Eric Darve,et al.  Large calculation of the flow over a hypersonic vehicle using a GPU , 2008, J. Comput. Phys..

[32]  Thomas de Quincey [C] , 2000, The Works of Thomas De Quincey, Vol. 1: Writings, 1799–1820.

[33]  William Kahan,et al.  Pracniques: further remarks on reducing truncation errors , 1965, CACM.

[34]  Tao Wang,et al.  Large-Scale Discrete Fourier Transform on TPUs , 2020, IEEE Access.

[35]  Wang,et al.  In-Datacenter Performance Analysis of a Tensor Processing UnitTM , .

[36]  K. Carlson,et al.  Turbulent Flows , 2020, Finite Analytic Method in Flows and Heat Transfer.

[37]  Peter C. Ma,et al.  Ten Lessons From Three Generations Shaped Google’s TPUv4i : Industrial Product , 2021, 2021 ACM/IEEE 48th Annual International Symposium on Computer Architecture (ISCA).