Multi-relaxation-time lattice Boltzmann method implemented on GPU
Zhang Yun,Wang Xiaowei,Ge Wei,Yang Chaohe
DOI: https://doi.org/10.3969/j.issn.1001-4160.2011.03.003
2011-01-01
Abstract:In recent years,with the release of compute unified device architecture(CUDA),high-performance graphical processing units(GPU)have been widely applied to computational science areas,such as computational fluid dynamics,besides the traditional image processing.Lattice Boltzmann method(LBM),as a mesoscopic numerical method,is an alternative technique for computational fluid dynamics(CFD).It has many advantages including simplicity,handling complicated boundary conditions easily and solving pressure directly,which makes it widely applied to many fields,such as multiphase flows,turbulence and flows in porous media.LBM is also very suitable to be implemented on GPUs due to its natural parallelism.LBM with the relaxation-time models of multi-relaxation-time(MRT)is less affected by relaxation factor and posses better numerical stability.In this paper,LBM-MRT is implemented on GPU based on CUDA and the implementation was validated by the classical two-dimensional cavity flow.Altogether 26 cases were calculated with the Reynolds numbers ranging from 10 to 10~4.The center coordinates of main vortex in the cases with the Reynolds numbers Re=10~2,4×10~2,10~3,2×10~3,5×10~3,7.5×l0~3 have been compared with the results reported in literatures.The simulation results not only agree well with previous conclusions but also show good numerical stability.The performance of MRT-LBM on GPU was analyzed and compared with that of CPU.The results indicate that with an NVIDIA Tesla C2050,a nearly 60 fold speedup over that of one core of the Intel Xeon 5430 CPU was achieved.