Font Size: a A A

Research And Application Of Parallel Algorithm Based On Immersed Boundary-lattice Boltzmann Method

Posted on:2022-09-18Degree:MasterType:Thesis
Country:ChinaCandidate:H C LiuFull Text:PDF
GTID:2480306527498634Subject:Computer technology
Abstract/Summary:PDF Full Text Request
Computational Fluid Dynamics(CFD)is an efficient and accurate method for studying the flow and energy exchange in fluids.In the past few decades,many different computational fluid dynamics numerical simulation methods have been proposed by scholars.These methods can be effectively applied to a wide range of complex threedimensional flow and energy exchange problems.Including finite volume method(Finite Volume Method,FVM),finite difference method(Finite Difference Method,FDM),finite element method(Finite Element Method,FEM),reduced-order model(Reduced Order Modeling,ROM),basic solution method(Method of Fundamental Solution,MFS),Lattice Boltzmann Method(LBM),etc.Among them,the lattice Boltzmann Method performs partial calculations when performing numerical calculations,and has high parallelism.Therefore,the parallel calculation method can be used to accelerate the numerical simulation of the lattice Boltzmann method.After the Immersed Boundary Method(IBM)was proposed,it was combined with the lattice Boltzmann method to form the Immersed Boundary-Lattice Boltzmann Method(IBLBM),which has become a research A popular method for fluid-structure interaction(FSI)problems.According to the calculation characteristics of LBM,the IB-BLM method can perform good parallel acceleration simulation.This article focuses on the IB-LBM method,the research,and the application of parallel acceleration under different programming models.The main research contents are as follows:(1)Use Open MP(Open Multi-Processing)to perform a multi-threaded parallel simulation of IB-LBM.There are three different task scheduling methods in Open MP:static task scheduling,dynamic task scheduling,and guide task scheduling.According to the three task scheduling methods,different parallel optimizations are performed for IB-LBM in different evolution steps.When evolving the flow field,the calculation amount of different calculation processes is different.In the optimization process,the three task scheduling methods are mixed to make up for the load imbalance caused by only using a single task scheduling.The IB-LBM evolution process is structurally decomposed,and the performance test of different task scheduling is performed on each structural part,and the best task scheduling combination is selected.At the same time,the same test is performed when parallel simulations with different numbers of threads are performed,and the best combination of task scheduling methods under different parallel scales is obtained.(2)Use the Graphics Processing Unit(GPU)to accelerate the simulation of IBLBM.Using the CUDA programming model can the realize multi-threaded parallel simulation of IB-LBM on GPU.The traditional GPU accelerated IB-LBM algorithm is to calculate the entire calculation process on the GPU.According to the characteristics of the CUDA programming model,this paper proposes a new parallel algorithm.In the CUDA programming model,the calculation of the kernel function on the device side is asynchronous with the host side,that is,after the kernel function is started,the control of the program returns to the CPU immediately.According to this characteristic,this article divides the entire evolutionary flow field into two computational domains-GPU computational domain and the CPU computational domain.CUDA is used for parallel simulation in the GPU computing domain,and Open MP is used for parallel simulation in the CPU computing domain,which can make full use of the computing resources of GPU and CPU.To reduce the number of synchronous data exchanges,this article introduces the concept of buffers.You can use suitable buffers to reduce the number of synchronizations and improve the overall performance of parallelism.(3)Use message passing interface(Message passing interface,MPI)to perform parallel acceleration simulation of IB-LBM on multiple nodes.MPI is a parallel programming technology based on information transfer,which can realize cross-node calculations.This article uses MPI to optimize IB-LBM in parallel on multiple GPUs and uses MPI to implement data communication between GPUs.Using multiple GPUs for parallel simulation requires the entire flow field to be divided into equal parts,and each GPU is responsible for the evolution of a part of the flow field.After the evolution is over,at the junction of the flow fields of different parts,data is exchanged through MPI.Using a single GPU for parallel simulation of IB-LBM can achieve better results.When multiple GPUs are used for simulation,although multiple GPUs need to be synchronized for data exchange,they can still achieve a good parallel optimization effect.
Keywords/Search Tags:immersed boundary-lattice Boltzmann method, parallel algorithm, buffer, programming model
PDF Full Text Request
Related items