Multiple threads and parallel challenges for large simulations to accelerate a general Navier-Stokes CFD code on massively parallel systems.

CONCURRENCY AND COMPUTATION-PRACTICE & EXPERIENCE(2013)

引用 2|浏览63
暂无评分
摘要
Computational fluid dynamics is an increasingly important application domain for computational scientists. In this paper, we propose and analyze optimizations necessary to run CFD simulations consisting of multibillion-cell mesh models on large processor systems. Our investigation leverages the general industrial NavierStokes CFD application, Code_Saturne, developed by Electricite de France for incompressible and nearly compressible flows. In this paper, we outline the main bottlenecks and challenges for massively parallel systems and emerging processor features such as many-core, transactional memory, and thread level speculation. We also present an approach based on an octree search algorithm to facilitate the joining of mesh parts and to build complex larger unstructured meshes of several billion grid cells. We describe two parallel strategies of an algebraic multigrid solver and we detail how to introduce new levels of parallelism based on compiler directives with OpenMP, transactional memory and thread level speculation, for finite volume cell-centered formulation and face-based loops. A renumbering scheme for mesh faces is proposed to enhance thread-level parallelism. Copyright (c) 2012 John Wiley & Sons, Ltd.
更多
查看译文
关键词
transactional memory,thread level speculation,finite volume method
AI 理解论文
溯源树
样例
生成溯源树,研究论文发展脉络
Chat Paper
正在生成论文摘要