大规模CFD高效CPU/GPU异构并行计算关键技术研究

来源 :国防科学技术大学 | 被引量 : 0次 | 上传用户:yunlong0451
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
计算流体力学(Computational Fluid Dynamics,CFD)采用数值计算方法求解流动控制方程以发现各种流动现象和规律,已广泛应用于航空航天等领域。随着数值模拟的几何外形、物理模型日益复杂,流动机理研究越来越精细,CFD计算的规模和复杂度空前增长,迫切需要利用高性能计算机实现高效CFD并行计算以提升CFD应用效率。近年来,随着图像处理器(Graphics Processing Unit,GPU)浮点运算性能和可编程性的提升,采用CPU/GPU异构体系结构成为构造高性能计算机系统的一种趋势。尽管异构体系结构能够在兼顾通用性和效能的同时大幅提升系统性能,但复杂的硬件架构要求研究者综合利用多种编程模型以挖掘多层次并行性,对高效CFD并行应用开发带来了极大的挑战。本文面向CPU/GPU异构体系结构和典型CFD应用,围绕大规模、高效CFD异构协同并行计算关键技术开展研究,重点研究了CFD应用异构协同并行编程框架、并行算法和性能优化、负载均衡等问题。论文的工作包括:(1)针对多区块结构网格CFD计算的特点,提出了适应大型CPU/GPU异构系统的TLCF三层异构协同编程框架。综合MPI、Open MP和CUDA编程模型,给出了TLCF框架的三种实例:嵌套Open MP的TLCF框架(NOMP-TLCF)、Open MP异步执行的TLCF框架(OMPAE-TLCF)以及MPI异步执行的TLCF框架(MPIAE-TLCF)。通过分析这三种编程框架的优缺点,发现NOMP-TLCF编程框架更适用于大规模异构并行系统上CFD应用的开发。(2)针对计算流体力学中格子Boltzmann方程的求解,研究其在CPU/GPU异构并行系统上的并行算法。首先,针对算法中的碰撞、迁移及边界处理过程,构建了基于网格单元映射的单GPU并行方法;在传统的依赖共享存储(AS)算法基础上,提出直接存储(AD)算法以适应单GPU访存方式的发展。然后,根据CPU和GPU的协同方式及通信与计算重叠的程度,分别提出了基本并行LBM-base算法、通信与计算重叠并行LBM-overlap算法、CPU/GPU协同计算并行LBM-hybrid算法。算法性能的理论分析和测试结果表明,相对AS算法,AD算法能采用更多线程配置,获得更好性能。相对于两个6核CPU,格子Boltzmann方法在单GPU上可获得17倍的性能加速比。多计算节点的并行性能测试结果显示,相对于单个计算节点,性能最好的LBM-hybrid并行算法在128个计算节点上能获得82.0%并行效率。(3)针对计算流体力学中的Navier-Stokes方程的求解,研究其在CPU/GPU异构并行系统上的并行算法。首先,提出了基于网格单元的细粒度单GPU并行算法;为消除无粘项求解过程中的数据依赖,提出了冗余计算方法和内核函数分解方法。然后,基于NOMP-TLCF编程框架提出了基于网格区块的粗粒度并行算法,并通过流与异步执行的方式重叠数据传输与GPU计算过程,减少CPU与GPU之间数据传输的开销。针对计算节点内不同处理部件的计算能力和存储能力的差异,提出了Out-of-Core方法以增加单个节点上的模拟规模。进一步的,我们提出了TCBO和TCBL两种传输策略,降低计算节点间的数据通信开销。数值实验验证了异构并行算法的正确性,相对于单核CPU,GPU的性能加速比在8倍左右;相对于两个6核CPU,单GPU能获得约1.85倍的性价比优势;强扩展性和弱扩展性测试结果都表明该并行算法有较好的加速比和并行效率。(4)从粗粒度和细粒度两个方面,研究了CPU/GPU异构并行系统的负载均衡策略。在粗粒度负载均衡方面,对于多区块结构网格Navier-Stokes方程的求解,考虑了不同处理单元的计算性能差异以及通信对应用性能影响,提出了基于性能模型的静态负载均衡策略。然后,为消除性能模型中的若干假设,提出了基于预取的任务窃取动态调度算法。实验测试表明,两种负载均衡算法都能较好的均衡处理单元之间的负载。在细粒度负载均衡方面,针对稀疏矩阵向量乘的求解,研究其在采用不同稀疏矩阵存储格式时GPU的性能,指出当矩阵各行非零元个数相差较大时,同一线程束内的线程存在着负载不均衡。基于稀疏矩阵的JAD和ELLPACK-R存储格式,提出了ELLPACK-RP混合存储格式以平衡GPU线程间负载。实验表明,当矩阵各行非零元个数相差较大时,相比于ELLPACK-R,ELLPACK-RP在NVIDIA GTX 280能提升40%的性能。
其他文献
云计算具有按需分配资源、弹性可扩展、面向服务、高性价比等优势,目前已成为主流的计算和服务模式。然而随着云计算的蓬勃发展,云平台的规模和复杂性不断增长,其事故也随之
铁电性质的发现可以追溯至上世纪二十年代,但随后仅仅被应用在少数领域。直到上世纪八十年代,随着一系列新型铁电材料的发现和发展,铁电特性被广泛应用到了电子学的各个领域,
建筑企业是以利润为目标,因而财务管理在工程项目管理中具有举足轻重的作用,但是目前建筑项目的财务管理也存在诸多问题,本文针对项目财务管理过程中预算管理、成本费用的控
双语教育是民族教育的一个重要组成部分,搞好双语教育有利于民族教育的发展。阐述了我国民族地区双语教学的定义、类型,并作了个案研究,总结了双语教学的基本经验,并提出了一
随着嵌入式系统软件功能需求的不断提高,片上存储器在系统中所占的成本比重也在不断增加,压缩程序存储空间已成为嵌入式处理器设计需要考虑的问题之一。现有的压缩程序存储空间
目前,城市绿化工程越来越多,其有利于城市环境的保护和优化。但是地域、季节等因素会影响绿化树木的生长,因此,反季节绿化施工越来越多,其为保障树木正常生长,免受气候影响提
提出了M—张量,依据非负张量的P-F理论和谱半径的定义,讨论了M—张量及其它的主子张量的几个性质。
目的:探讨乳晕边缘切口及压力封闭残腔技术在切除乳腺良性肿块中的临床应用价值。方法2006年1月至2012年5月该科对2264例乳腺良性肿块住院患者进行乳晕边缘切口切除肿块,对切除
性能是应用的关键问题,调度又是性能之根本所在。计算机系统体系结构的发展以及对计算需求的持续增长,也不断给调度问题赋予新的内涵并且提出新的挑战,调度一直是并行与分布