Font Size: a A A

MRT-LBM Parallelization And Its Application In Groundwater Flow Simulation

Posted on:2020-03-30Degree:MasterType:Thesis
Country:ChinaCandidate:S B TianFull Text:PDF
GTID:2370330575978230Subject:Engineering
Abstract/Summary:PDF Full Text Request
Lattice Boltzmann Method(LBM)is a numerical simulation method.It is based on statistical mechanics and molecular motion theory and builds a bridge between micro and macro,discrete and continuous.The algorithm of LBM is simple and easy to implement.Meanwhile,it can handle complex boundary conditions and has good experimental results.In order to reduce the simulation time using LBM,we combines parallel technology with LBM and applies it to fluid simulation.Before the parallel algorithm,we need to select the LBM model to determine the basic process of fluid simulation.According to the relaxation time,LBM can be divided into single relaxation time(SRT)and multiple-relaxation-time(MRT).Because the MRT model has high simulation precision and few iterations,it can effectively reduce non-physical oscillations and has higher numerical stability.Therefore,the three-dimensional groundwater flow is used as a test case,and the D3Q19 multi-relaxation LBM model is used to simulate the fluid.In the parallel process of MPI implementing multiple slack LBM(MRT-LBM),we divide the entire mesh along the X direction to achieve load balancin g between processes.Then,we analyze the parallelism of the MRT-LBM algor ithm in detail and find the dependency data between the steps.Furthermore,bl ocking and non-blocking are used for message delivery,only the data in the fi ve directions required for the adjacent grid points are communicated,and the c ommunication parameters are reduced by using the method of counting paramet ers,and finally the algorithm of the two-node multi-process is realized.parallel.The experimental results show that the MPI program has certain scalability.A s the CPU core increases,the speedup ratio also increases.For intensive tasks,a single GPU has more computing power than a single CPU.Therefore,based on the blocking MPI program,this paper combines CUDA to realize the parallelism of MRT-LBM algorithm of two-node multi-GPU.We divide the entire discrete grid equalization to each CPU core,one CPU core dispatches one GPU device,and multiple GPUs compute simultaneously,thereby implementingparallelism of two-node multi-GPU.The experimental results show that under the cluster environment of four P100 GPUs and four Intel(R)Xeon(R)E5-2620 v4 CPUs,the speedup ratio is 182.66 times,and the effect is obviously better than the MPI parallel of the same number of CPUs.In order to reduce the delay of MPI communication time and context switching,we use OpenMP technology to replace the process with threads in the node based on blocking MPI+CUDA,and then realize multi-level parallelism of MRT-LBM algorithm.The experimental results show that under the condition of four P100 GPUs participating in the calculation,the parallel MPI+OpenMP+CUDA multi-level parallelism is more than 8% more efficient than the blocking MPI+CUDA.
Keywords/Search Tags:LBM, MRT, MPI, OpenMP, CUDA
PDF Full Text Request
Related items