资源描述:
《格子波尔兹曼方法的gpu并行计算》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、摘要本文基于图形处理单元(GPU)的格子玻尔兹曼方法(LBM)实现了一些经典流场的计算。程序由两个函数迭代实现,碰撞函数和迁移函数。碰撞函数在共享内存内执行,迁移函数在设备内存内执行。为了优化程序性能,将边界条件在碰撞函数内实现,加长碰撞流程,减少设备内存的存取开销。通过对同一程序设定不同迭代步数,发现GPU格子玻尔兹曼(LB)程序随迭代步数增大,执行时间在前N步随迭代步数先保持线性增长,随后会加速增长,最后回归线性增长,而相应的CPU程序则一直保持线性增长,这导致加速效果会从某一部开始急剧下降。通过对对同一流场设定不同的格子数,发现GPU格子玻尔兹曼(LB)程序相对同样格子数的CPU程序加速
2、比保持不变。通过对同一程序设定不同的Block结构,发现随着Block中Thread数的增大,迭代时间线性缩短,在Thread达到某一值时,迭代时间会剧烈减小。关键词:格子波尔兹曼并行计算GPU59AbstractBasedongraphicsprocessingunit(GPU)LatticeBoltzmannmethod(LBM),thepaperimplementssomeclassicflowfieldcalculation.Procedureconsistsoftwoiterativefunction,collisionfunctionandtransferfunction.Coll
3、isionfunctionsperformedwithinthesharedmemory,whiletransferfunctionwithinthedevicememory.Inordertooptimizetheapplicationperformance,boundaryconditionswillbeperformedwithinthecollisionfunction,whichlengthenthecollisionstreamprocess,thusreducedevicememoryaccess.Bysettingupdifferentiterationsteps,wefoun
4、dthatforthesameGPUlatticeboltzmann(LB)program,withtheincreaseofiterationsteps,theprogramexecutiontimewillkeeplineargrowthinNsteps,thenthegrowthaccelerate,andreturnlineargrowthatlast,whilethecorrespondingCPUprogramkeptalwayslineargrowth,resultinginaccelerateratiowillfellsharplyfromsomestep.Bysettingd
5、ifferentlatticeforthesameflow,wefoundtheGPUlatticeboltzmann(LB)proceduresremainsunchangedspeedupratiorelativetotheCPU’softhesamelattice.ThroughimposingdifferentBlockstructureonthesameprogram,wefoundthatwithThreadsinBlocksincreasing,iterationtimeshortenedlinearlyfirst,whentheThreadsreachesacertainval
6、ue,theiterationtimewilldrasticallyreduce.Keywords:latticeBoltzmannparallelcomputingGPU59目录一绪论11.引言12.格子Boltzmann方法概述23.GPU概述54.本文的主要工作6二格子Boltzmann方法的基本原理71.Boltzmann方程72.格子Boltzmann方程93.格子Boltzmann方法的实现154.基本的边界条件175.本章小结19三CUDA技术211.CUDA编程模型212.CUDA硬件223.优化准则234.本章小结24四算法实现251.算法方面252.LBM的GPU实现263
7、.本章小结27五结果分析281.泊肃叶流282.圆柱绕流293.椭圆绕流334.方腔流345.本章小结35六总结与展望3659一绪论1.引言近半个多世纪以来,随着科学技术水平的不断提高,人们需要处理的科学及工程问题也越来越复杂。面对这些问题,传统的实验和理论方法越来越难以满足实际需要,时代呼吁新的科学手段的出现。20世纪50年代计算机的诞生使这种设想成为可能。随着计算机和计算方法的飞速发展,一种以