基于GPU集群的格子Boltzmann流体模拟并行计算的设计与实现

上传人:细水****9 文档编号:244833358 上传时间:2024-10-06 格式:PPT 页数:26 大小:1.46MB
收藏 版权申诉 举报 下载
基于GPU集群的格子Boltzmann流体模拟并行计算的设计与实现_第1页
第1页 / 共26页
基于GPU集群的格子Boltzmann流体模拟并行计算的设计与实现_第2页
第2页 / 共26页
基于GPU集群的格子Boltzmann流体模拟并行计算的设计与实现_第3页
第3页 / 共26页
资源描述:

《基于GPU集群的格子Boltzmann流体模拟并行计算的设计与实现》由会员分享,可在线阅读,更多相关《基于GPU集群的格子Boltzmann流体模拟并行计算的设计与实现(26页珍藏版)》请在装配图网上搜索。

1、单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,*,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,*,作 者:,俸 毅 苏智彬 徐杨,指导老师:,覃章荣,广西师范大学 计算机科学与信息工程学院,基于GPU集群的格子Boltzmann流体模拟,并行算法的设计与实现,目录,作品简介,设,设计方案,实验分析,创新特色,1,2,3,4,一 作品简介,2.但是目前在基于LBM流体模拟中,使用GPU集群并行计算方面的研究,很少,。单个计算机由于硬件资源的限制,不能用于大规模流场的计算。集群并行计算成为实现低成本,高性能计算的

2、重要途径之一,1.基于,LBM,(Lattice,Boltzmann,Method),的现代计算流体力学在航空、气象、化工等领域获得了广泛的应用。目前利用,CUDA,技术在单,GPU,上进行,LBM,加速计算的研究也,越来越多,通过对单机,CPU,、多机,CPU,、多机,GPU,三种方案的计算结果和效率对比分析,验证其可行性及加速性能。为在普通计算机群上进行大规模复杂计算,提供一种,低成本、高性能,的解决方案,本项目,使用MPI+CUDA技术,在由,多GPU,组成的集群上,进行LBM,流体模拟,并行计算,,,并以方腔,流为,算例,验证,在多,GPU,集群上进行,LBM并行计算的可行性和加速性能

3、,一 项目简介,项目背景,项目目标,二 特色创新,格子玻尔,兹曼方法,使用配置有支持,CUDA,技术,的,GPU,显卡的普通计算机组成,集群,,并在集群上使用,MPI+CUDA,技术实现了基于,LBM,流体模拟的并行计算,实验验证了其可行性和加速性能,我们最高获得,72.32,倍的加速比。该方案解决了目前基于单,GPU,计算机由于硬件资源限制而无法处理大规模计算流场的问题,同时获得非常可观的加速性能。为在普通计算机群上进行大规模复杂科学计算,提供一种,低成本、高性能,的解决方案。,三 设计方案,实现流程,(1),1,设计一个正确的,单CPU,程序,。用于实现单机计,算方腔流算例,实现流,程如右

4、图所示。,2,在,单CPU程序的基础上,通过使用MPI技术,扩展到CPU集群上,实现基于,MPI,的多CPU程序,。,实现流程如右图所示。,三 设计方案,实现流程,(2),3,在实现基于,MPI,的多,CPU程序的基础上,通过使用,CUDA,技术,扩展到,G,PU集群上,实现,MPI+GPU,集群程序,。,实现流程如右图所示。,三 设计方案,实现流程,(3),三 设计方案,关键技术,(1),集群中多机通信方案,交换机,网卡,CPU,GPU,计算机,1,网卡,CPU,GPU,计算机,2,网卡,CPU,GPU,计算机,3,网卡,CPU,GPU,计算机,4,实验方案的集群构成示例如下所示,集群中各计

5、算机之间的数据通信,我们采用目前流行的,MPI,(,Message Passing Interface,,消息传递接口)来实现。,三 设计方案,关键技术,(2),计算流场网格子区块划分方案,对于,LBM,来说,计算流场网格子区块的划分通常包括纵向划分、横向划分、棋盘划分,3,种方案。棋盘划分方案会造成边界格点数据交换时通信量增多,增大了程序开发难度,降低了计算效率。横向和纵向划分时边界格点交换数据时通信量均较少,而纵向划分比较符合常人的习惯,因此,我们选择,纵向划分方案,。,(,b,)横向划分,(,c,)棋盘划分,(,a,)纵向划分,三 设计方案,关键技术,(3),集群中各子计算区块边界格点数

6、据交换方案,当计算流场网格划分为多个子区块并分配到集群的各计算机中,在格点粒子分布函数流动时,各子区块边界格点的数据要交换到邻居计算机的子区块的边界中。为了能够计算方便,在每个子区块两侧边界处,各增加一层虚边界,用来存放从从其他计算机迁移过来的数据,这样可以使得在每个计算机内都可以完成子区块数据的碰撞和流动,过程如下图所示(图中每个子区块的蓝色为实际边界,白色为增加的虚边界)。,三 设计方案,关键技术,(4),基于CUDA的并行数据存储结构设计方案,根据,CUDA,的要求,为了高效地访问,GPU,全局内存,必须把要访问数据存储在同一连续地址内,实现合并访问。我们的方案是在,GPU,的全局内存中

7、创建一个一维数组用来存放全部,D2Q9,模型格子,9,个方向的粒子分布函数值,先顺序存放所有格点的,0,方向的粒子分布函数,f0,,接着是,1,方向的,f1,依次类推一直到,f8(,如下图所示,),,这样可以实现合并访问,提高效率,。,.,f0,f1,f8,所有格点,f0,所有格点,f1,f2f7,所有格点,f8,D2Q9,模型,三 设计方案,关键技术,(5),基于CUDA内核函数的设计与实现,CUDA,程序中在,GPU,上并行执行的代码,被组织成内核(,Kernel,),内核就是在,GPU,中被线程并行地执行的函数。我们把程序中并行部分设计成,2,个内核函数:,碰撞内核函数和流动内核函数,,

8、将计算流场中每个格点映射到一个,GPU,线程上,每个线程按照,LBM,中的碰撞和流动公式同时并行地进行演化计算。,实验环境介绍,实验环境,CPU,:,Intel Core i5-,2400,2.80GHz 4,核,GPU,:,NVIDIA GeForce GT 4,2,0,显卡,显存容量,1024MB,,,显存频率,800MHz,,流处理单元,48,个,操作系统,:,Windows,X,P,软件平台,:,Visual Studio 2008,,,MPICH2,为了验证本程序的,可行性,与,计算性能,,选择,二维顶盖驱动方腔,流,为实验算例,四 实验分析,4台MPI+GPU集群程序运行截图,程序

9、开始运行截图,程序结束运行截图,使用单,CPU,程序模拟,的顶盖驱动方腔流示意图,4,台集群,使用,MPI,程序模拟,的顶盖驱动方腔流示意图,4台集群,使用,MPI+,GPU,程序模拟,的顶盖驱动方腔流示意图,四 实验分析,如图4台集群的三种方案计算,结果相,吻合,。同样,2台集群、,8台集群的实验结果,亦相吻合,流场大小,256X256,运行,10000,步时三种,方案结果对比,四 实验分析,使用,2台,计算机组成的集群运行,10000,步的时间和加速比对比情况,流场大小,单CPU程序,MPI集群用,加速比,MPI+GPU集,加速比,64*64,19.219,14.61,1.31,18.47

10、8,1.04,128*128,78.062,52.390,1.49,56.160,1.39,256*256,131.235,85.774,1.53,60.058,2.19,512*512,532.750,245.51,2.17,100.708,5.29,640*640,850.5310,338.418,2.51,111.765,7.61,1152*1152,2763.790,576.99,4.79,205.639,13.44,1792*1792,6675.951,1306.49,5.11,379.747,17.58,四 实验分析,使用,2,台,计算机组成的集群运行,10000,步的加速比折线图

11、,四 实验分析,使用,4台,计算机组成的集群运行,10000,步的时间和加速比对比情况,流场大小,单,CPU,程序,MPI,集群用,加速比,MPI+GPU,加速比,64*64,19.219,11.439,1.68,15.499,1.24,128*128,78.062,40.87,1.91,36.307,2.15,256*256,131.235,58.587,2.24,50.282,2.61,512*512,532.750,191.637,2.78,93.79,5.68,640*640,850.5310,224.414,3.79,106.936,7.95,1152*1152,2763.790,3

12、77.566,7.32,165.60,16.96,1792*1792,6675.951,507.600,13.152,285.541,23.38,四 实验分析,使用,4台,计算机组成的集群运行,10000,步的加速比折线图,四 实验分析,使用,8台,计算机组成的集群运行,10000,步的时间和加速比 对比情况,流场大小,单CPU程序,MPI集群用,加速比,MPI+GPU,加速比,64*64,19.219,24.781,0.775,30.506,0.63,128*128,78.062,20.218,2.358,36.307,2.15,256*256,131.235,37.603,3.49,48.

13、072,8.06,512*512,532.750,67.097,7.94,91.853,13.78,640*640,850.5310,83.141,10.23,114.936,20.69,1152*1152,2763.790,111.849,24.71,245.452,43.12,1792*1792,6675.951,201.995,33.05,375.475,72.37,四 实验分析,使用,8台,计算机组成的集群运行,10000,步的加速比折线图,四 实验分析,使用,2台,、,4台,、,8台,计算机组成的集群运行,10000,步的加速比,折线图,四 实验分析,使用,2台,、,4台,、,8台,

14、计算机组成的集群运行,10000,步的加速比,柱状图,总结分析,在流场比较小时(如64*64),MPI和MPI+,CUDA,方式加速优势并未能,体现。因为MPI和MPI+CUDA方式的时间基本花费在了通信上,当流场128时,MPI和MPI+,CUDA,方式的加速性能比CPU有明显的,提升,而且加速比随着计算流场规模的增大而增大,随着集群中的,计算机的数量,增加,MPI和MPI+,CUDA,方式的加速比,也会明显增加,结论,在,CUDA框架下,设计和实现了在多GPU上基于LBM的方腔流,模拟的并行算法。与单CPU、MPI对比结果表明在多个GPU,上基于LBM的流体模拟并行计算是,完全可行,的;使用多GPU,后,加速性能得到了大幅度的提高,展示了集群GPU在科学,计算方面强大的计算能力,说明了使用集群GPU并行计算,,可以极大地提高计算效率。采用我们的方案,低成本,,,高性能,敬请您批评指正 谢谢,!,

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

相关资源

更多
正为您匹配相似的精品文档
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  sobing.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!