کد مقاله | کد نشریه | سال انتشار | مقاله انگلیسی | نسخه تمام متن |
---|---|---|---|---|
523895 | 868523 | 2012 | 17 صفحه PDF | دانلود رایگان |
In order to exploit the flexibility of OpenMP in parallelizing large scale multi-physics applications where different modes of parallelism are needed for efficient computation, it is first necessary to be able to scale OpenMP codes as well as MPI on large core counts. In this research we have implemented fine grained OpenMP parallelism for a large CFD code GenIDLEST and investigated the performance from 1 to 256 cores using a variety of performance optimization and measurement tools. It is shown through weak and strong scaling studies that OpenMP performance can be made to match that of MPI on the SGI Altix systems for up to 256 cores. Data placement and locality were established to be key components in obtaining good scalability with OpenMP. It is also shown that a hybrid implementation on a dual core system gives the same performance as standalone MPI or OpenMP. Finally, it is shown that in irregular multi-physics applications which do not adhere solely to the SPMD (Single Process, Multiple Data) mode of computation, as encountered in tightly coupled fluid-particulate systems, the flexibility of OpenMP can have a big performance advantage over MPI.
► OpenMP optimization of a CFD code using performance tools.
► Scaling study of OpenMP versus MPI parallelization of the CFD code.
► OpenMP parallelism is competitive with MPI for fluid flow simulations upto 256 cores.
► Application of the tuned code to a fluid-particulate system.
► OpenMP has clear advantage over MPI for dynamic load imbalance case of fluid-particulate system.
Journal: Parallel Computing - Volume 38, Issue 9, September 2012, Pages 501–517