Computational & Technology Resources
an online resource for computational,
engineering & technology publications |
|
Civil-Comp Proceedings
ISSN 1759-3433 CCP: 95
PROCEEDINGS OF THE SECOND INTERNATIONAL CONFERENCE ON PARALLEL, DISTRIBUTED, GRID AND CLOUD COMPUTING FOR ENGINEERING Edited by:
Paper 63
An Automatic Joining Mesh Approach for Computational Fluid Dynamics to Reach a Billion Cell Simulations Y. Fournier1, J. Bonelle1, P. Vezolle2, C. Moulinec3 and A.G. Sunderland3
1EDF R&D, MFEE, Chatou, France
Y. Fournier, J. Bonelle, P. Vezolle, C. Moulinec, A.G. Sunderland, "An Automatic Joining Mesh Approach for Computational Fluid Dynamics to Reach a Billion Cell Simulations", in , (Editors), "Proceedings of the Second International Conference on Parallel, Distributed, Grid and Cloud Computing for Engineering", Civil-Comp Press, Stirlingshire, UK, Paper 63, 2011. doi:10.4203/ccp.95.63
Keywords: non-conformal meshes, unstructured, joining, high-performance computing, petascale.
Summary
To attain this goal substantial increases in mesh resolution are required, alongside an
increase in the complexity of the geometry that is represented.
This leads to very large mesh sizes, of the order of several billions of cells, throughout
which the Navier-Stokes equations must be solved. During recent years, the
scalability of Code_Saturne, EDF's general purpose CFD code,
has been improved with regard to computing speed, memory usage and I/O.
Code_Saturne is a general purpose co-located finite volume solver
parallelised using MPI, which has been under development since 1997. It has been made
available under the General Public Licence since 2007. Code_Saturne has also
been designated one of the principal CFD benchmark codes in the European-wide PRACE
initiative and has been benchmarked on several of the available PRACE tier-0 prototype systems.
As most meshing tools available today are not parallel, memory limitations make it difficult to build a mesh made of more than 200 million cells on a typical front-end machine, even for top of-the line tools. To work around these limitations, Code_Saturne has been designed to load multiple meshes and join them together, irrespective of whether those meshes are conforming. This allows the meshing of a geometry to be done in separate pieces, and thus works around some of the limitations of serial meshing tools. This paper describes how this step may now be done in parallel, which has allowed us to test calculations with nearly 2 billion cells. The non-conforming interfaces are detected by an octree-based algorithm, and surface faces are subdivided according to their intersection so as to obtain conforming subfaces, which may be any type of simple polygon. Cells adjacent to those faces thus become general polyhedral cells, even if they were initially tetrahedral, prisms, or hexahedra. A large scale demonstration case has been set up, consisting of sixteen meshes. The initial grid meshes a rectangular domain containing a submarine and is made of 122M tetrahedral cells. It has been generated on an SGI machine with 96 GBytes RAM. This mesh has then been stacked to create a collection of sixteen submarines flowing in parallel, thereby obtaining a 1.96 billion cell mesh. Most cells are tetrahedral, but cells along the non-conforming joined interface are more complex polyhedra. purchase the full-text of this paper (price £20)
go to the previous paper |
|