• 中国计算机学会会刊
  • 中国科技核心期刊
  • 中文核心期刊

Computer Engineering & Science ›› 2021, Vol. 43 ›› Issue (05): 773-781.

Previous Articles     Next Articles

OPS based automatic parallelization of a computational fluid dynamics software on multiple platforms

WANG Wei,CHE Yong-gang,XU Chuan-fu,WANG Zheng-hua   

  1. (Institute of Quantum Information and State Key Laboratory of High Performance Computing,

    College of Computer Science and Technology,National University of Defense Technology,Changsha 410073,China)

  • Received:2020-06-11 Revised:2020-07-28 Accepted:2021-05-25 Online:2021-05-25 Published:2021-05-19

Abstract: Current High Performance Computing (HPC) systems exhibit diverse architectures, posing great pressure to the development of parallel applications. This paper uses OPS (Oxford parallel library for structured mesh Solvers), a Domain Specific Language, to parallelize a Computational Fluid Dynamics (CFD) software named HNSC (High order Navier-Stokes simulator for Compressible flow). The code is restructured based on OPS API. The pure MPI, pure OpenMP, MPI + OpenMP and MPI+CUDA versions of executables are automatically generated based on OPS frontend and backend. Performance evaluation is performed on a server consisting of two Intel Xeon CPU E5-2660 V3 CPUs and one NVIDIA Tesla K80 GPU. The results show that the parallel codes generated automatically based on OPS have comparable or superior performance when compared to the manual versions of codes. Furthermore, the OPS generated GPU code achieves significant performance acceleration over the OPS generat- ed CPU codes. From the results, we can affirm that using OPS like DSLs for multiplatform oriented programming parallelizing of CFD application is feasible and efficient.




Key words: domain specific language, computational fluid dynamics software, multiple platforms, automatic code generation ,