HPC-cloud native framework for concurrent simulation, analysis and visualization of CFD workflows

Abstract Analysis and rendering of high-resolution computational fluid dynamics (CFD) simulations often requires execution of multiple parallel data-processing pipelines. In this paper we present a hybrid cloud solution for efficient simulation and analysis of drop dispersions. The simulation component runs on a high-performance computing (HPC) cluster and cloud native framework performs the processing of CFD outputs. To facilitate some of the cloud features, we broke down the CFD data analysis pipeline into small microservice-like processes. In this way, a given resource can be set-up and shared between different simulations, codes and locations to minimize idle times and dynamically adjust the capacity to the workload while producing results on the fly, independent of the simulation engine. A combination of HPC and cloud technologies allows us to create agile and highly scalable solutions for CFD purposes. We focus on HPC-cloud infrastructure; however, other arrangements such as cloud-cloud or desktop-cloud can be easily adapted depending on the needs. This enables a framework for centralizing services for collaborative use between different users as well as for automatically providing data from different sources to machine learning algorithms. We describe a proof of concept implementation of the proposed framework and provide detailed analysis of its performance applied to a real two-phase flow application.

[1]  Hrvoje Jasak,et al.  A computational method for sharp interface advection , 2016, Royal Society Open Science.

[2]  H. Rusche Computational fluid dynamics of dispersed two-phase flows at high phase fractions , 2003 .

[3]  Adrien Leygue,et al.  Proper Generalized Decomposition based dynamic data-driven control of thermal processes ☆ , 2012 .

[4]  Hong Yi,et al.  A survey of the marching cubes algorithm , 2006, Comput. Graph..

[5]  William J. Schroeder,et al.  The Visualization Toolkit , 2005, The Visualization Handbook.

[6]  Andrew H. Gee,et al.  Regularised marching tetrahedra: improved iso-surface extraction , 1999, Comput. Graph..

[7]  Keichi Takahashi,et al.  ADIOS 2: The Adaptable Input Output System. A framework for high-performance data management , 2020, SoftwareX.

[8]  K. Koyama,et al.  Flow transition criteria of a liquid jet into a liquid pool , 2017 .

[9]  William E. Lorensen,et al.  Marching cubes: A high resolution 3D surface construction algorithm , 1987, SIGGRAPH.

[10]  John D. Hunter,et al.  Matplotlib: A 2D Graphics Environment , 2007, Computing in Science & Engineering.

[11]  Marko Lukša Kubernetes in Action , 2018 .

[12]  William Schroeder,et al.  The Visualization Toolkit: An Object-Oriented Approach to 3-D Graphics , 1997 .

[13]  M. Soteriou,et al.  Investigation of the impact of high liquid viscosity on jet atomization in crossflow via high-fidelity simulations , 2017 .

[14]  Prashant Khare,et al.  Data-driven surrogate modeling of multiphase flows using machine learning techniques , 2020, Computers & Fluids.

[15]  Freddie D. Witherden,et al.  PyFR: An open source framework for solving advection-diffusion type problems on streaming architectures using the flux reconstruction approach , 2013, Comput. Phys. Commun..

[16]  F. Archambeau,et al.  Code Saturne: A Finite Volume Code for the computation of turbulent incompressible flows - Industrial Applications , 2004 .

[17]  Khee Poh Lam,et al.  Data-driven model for cross ventilation potential in high-density cities based on coupled CFD simulation and machine learning , 2019, Building and Environment.

[18]  Boris Schling The Boost C++ Libraries , 2011 .

[19]  Tsuhan Chen,et al.  Efficient feature extraction for 2D/3D objects in mesh representation , 2001, Proceedings 2001 International Conference on Image Processing (Cat. No.01CH37205).

[20]  Ian T. Foster,et al.  Designing and building parallel programs - concepts and tools for parallel software engineering , 1995 .

[21]  J. Brackbill,et al.  A continuum method for modeling surface tension , 1992 .

[22]  M. Trujillo,et al.  A computational study of an atomizing liquid sheet , 2014 .

[23]  Gaël Varoquaux,et al.  Scikit-learn: Machine Learning in Python , 2011, J. Mach. Learn. Res..

[24]  S. Zaleski,et al.  A two-phase mixing layer between parallel gas and liquid streams: multiphase turbulence statistics and influence of interfacial instability , 2018, Journal of Fluid Mechanics.

[25]  Jeremy S. Meredith,et al.  Parallel in situ coupling of simulation with a fully featured visualization system , 2011, EGPGV '11.

[26]  Scott Klasky,et al.  In Situ Methods, Infrastructures, and Applications on High Performance Computing Platforms , 2016, Comput. Graph. Forum.

[27]  Aleksandar Jemcov,et al.  OpenFOAM: A C++ Library for Complex Physics Simulations , 2007 .