基于GPU并行计算的格子Boltzmann方法研究

来源 :哈尔滨工业大学 | 被引量 : 0次 | 上传用户:kk345
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
格子Boltzmann方法(LBM)是国际上近几十年发展起来的一种比较新颖的数值模拟方法。边界条件易处理、良好的计算稳定性、天然的数据并行性等优点,使其在计算流体力学方面发挥着重要的作用。  随着模拟规模的日益庞大,计算量的增加,仅靠增加CPU的核数来提高计算性能是很有局限性的,使得用传统的多核并行的计算方法是无法完成超大规模计算任务的。因此人们考虑把图形处理器GPU应用到数值计算领域,传统上,GPU只负责图形渲染,多数工作都交由中央处理器 CPU去完成,但GPU与CPU相比有着不同的设计理念,在并行计算方面,GPU有着独有的优势。因此,对于大规模计算量的模拟任务,基于GPU并行计算将有着广阔的前景。考虑到格子Boltzmann方法是适合并行计算的,所以基于GPU高性能计算的格子Boltzmann方法为人们提供了新思路。  本文首先对不同阶数的矩阵相乘进行了基于GPU并行的计算,实验结果表明阶数越大,并行计算相对于串行计算的加速比越显著,充分揭示了GPU在计算速度上的优越性。而且,我们验证了使用不同的存储类型对计算速度是有影响的,使用共享存储器能进一步提高计算速度。然后,设计了基于GPU并行计算的二维单组分双相流相分离的LBM算法,边界条件采用周期边界条件,模型采用D2Q9模型。在二维算法的基础上,提出了基于GPU并行计算的三维单组分双相流相分离的LBM算法,采用D3Q19模型和周期边界条件。基于上述并行算法,在GPU高性能计算平台上,模拟了单组分双相流二维相分离和三维相分离过程,实验结果表明采用GPU并行计算比 CPU串行计算快大约10.2倍左右。最后,采用基于GPU计算平台的LBM并行算法模拟了人们生活中普遍存在的空化现象,实验显示出水体中微小气核的形成、胀大和溃灭的全过程,实验结果同样体现出GPU并行计算的速度优势。
其他文献
当今的生物技术快速发展,生物学大数据每天以爆炸式的速度增长,这无疑给生物学研究和发展带来前所未有的机遇,然而传统的生物学分析方法已经无法处理如此庞大的数据。生物信息学
在过去的几十年里,随着在自然科学和工程中出现的非线性问题不断地增加,Sobolev空间已经不能满足实际应用对系统描述的需求。这时,有关具有非标准增长条件不等式问题,特别是
布尔函数的r阶非线性度是分析流密码和分组密码安全性的重要密码学准则,而且它与Reed-Muller码的覆盖半径有关,因此在编码理论中占有重要地位.Bent函数和半bent函数具有很高的