Abstract:
Direct simulation Monte Carlo (DSMC) method is currently the most widely used numerical method for rarefied flow calculation. Based on the Fortran programming platform of GPU (Graphics Processing Unit) and CUDA (Compute Unified Device Architecture), the DSMC method was optimized. Taking the calculation of high supersonic aerodynamic heating as an example, the effect of serial and parallel computing speed and simulation molecules on parallel efficiency was studied. The comparison shows that the parallel results are consistent with each other and parallel program achieved an acceleration of 4 to 10 times. And accelerating performance is proportional to the size of calculation. The application of GPU parallel technology will greatly promote the development of DSMC method.
Key words:
direct simulation Monte Carlo (DSMC),
Fortran,
graphic processing unit (GPU),
compute unified device architecture (CUDA),
aerodynamic heating
严立,戴欣怡,陈佳洛,王平阳,欧阳华. 基于计算统一设备架物Fortran的直接模拟蒙特卡洛方法并行优化[J]. 上海交通大学学报(自然版), 2013, 47(08): 1198-1204.
YAN Li,DAI Xinyi,CHEN Jialuo,WANG Pingyang,OUYANG Hua. Parallel Optimization of Direct Simulation Monte Carlo Method Using Compute Unified Device Architecture Fortran[J]. Journal of Shanghai Jiaotong University, 2013, 47(08): 1198-1204.
[1]Bird G A. Molecular gas dynamics and the direct simulation of gas flows [M]. Oxford: Clarendon Press, 1994.
[2]Wilmoth R G. Direct simulation monte carlo analysis of rarefied flows on parallel processors [J]. Thermophysics, 1991, 5(3): 292300.
[3]Patnaik G, Obenschain K S. Using GPU on HPC applications to satisfy lowpower computational requirement[C]// 48th AIAA Aerospace Sciences Meeting Including the New Horizons Forum and Aerospace Exposition. Orlando, Florida:AIAA,2010: AIAA2010524.
[4]Su C C. Parallel direct simulation Monte Carlo computation using CUDA on GPUs[C]// 27th International Symposium on Rarefied Gas Dynamics. California: American Institute of Physics, 2011: 343347.
[5]Phillips E H. Acceleration of 2D compressible flow solvers with graphics processing unit clusters [J]. Journal of Aerospace Computing, 2011, 8: 237249.
[6]Lohner R, Corrigan A. Semiautomatic porting of a general Fortran CFD code to GPUs: The difficult modules [J]. International Journal for Numerical Methods in Fluids, 2012, 69: 314331.
[7]黄昌盛,张文欢,侯志敏,等.基于CUDA的格子Boltzmann方法:算法设计与程序优化[J]. 科学通报, 2011, 56(2829): 24342444.
HUANG Changsheng, ZHANG Wenhuan, HOU Zhimin, et al. CUDA based lattice Boltzmann method: Algorithm design and program optimization [J]. Chinese Sci Bull, 2011, 56(2829): 24342444.
[8]曾胜田,刘羽,马梦琦. 基于CUDA 的Prewitt算子并行实现[J]. 微计算机应用, 2011,32(11):7175.
ZENG Shengtian, LIU Yu, MA Mengqi. Parallel achieve prewitt operator based on CUDA [J]. Microcomputer Applications, 2011, 32(11): 7175.
[9]Owens J D, Luebke D. A survey of general purpose computation on graphics hardware [J]. Computer Graphics Forum, 2007, 26(1): 80113.
[10]王平阳,程慧尔,杨卫华. DSMC方法模拟双组元姿态发动机喷管流动[J]. 推进技术, 2003, 24(2): 111115.
WANG Pingyang, CHENG Huier, YANG Weihua. DSMC simulation of nozzle flow of bipropellant attitude control engine [J]. Journal of Propulsion Technology, 2003, 24(2): 111115.
[11]Boyd I D, Penko P F, Meissner D L, et al. Experimental and numerical investigations of lowdensity nozzle and plume flows of nitrogen [J]. AIAA Journal, 1992, 30(10): 24532461.
[12]Kirk D B, Hwu W W. Programming massively parallel processors—A handson approach [M]. Burlington: Morgan, 2010.
[13]GladKov D. Graphics processing unit based direct simulation Monte Carlo [J]. Simulation, 2012,88(6): 680693.