猿代码 — 科研/AI模型/高性能计算
0

GPU上CFD计算获得百倍加速效果

摘要: 1)面向多核CPU/众核GPU 架构的非结构CFD 共享内存并行计算技术研究张健1, 2,李瑞田2,邓亮2, *,代喆2,刘杰1,徐传福12)摘要针对现代高性能计算机架构开展非结构CFD节点内共享内存并行,是提升浮点计算效率、实 ...
1)
面向多核CPU/众核GPU 架构的非结构CFD 共
享内存并行计算技术研究
张健1, 2,李瑞田2,邓亮2, *,代喆2,刘杰1,徐传福1
2)摘要
针对现代高性能计算机架构开展非结构CFD节点内共享内存并行,是提升浮点计算效率、实现更大规模流体仿
真应用能力的关键。然而由于非结构网格CFD计算存在拓扑关系复杂、数据局部性差、数据写冲突等问题,传统算法如
何共享内存并行化以高效发挥多核CPU/众核GPU的硬件能力,成为一个重大的挑战。从一个工业级非结构CFD软件出
发,通过深入分析其计算行为和访存模式,设计实现了多种共享内存并行算法,采用了网格重排序、循环融合、多级访
存等数据局部性优化技术进一步提升性能。特别的,面向多核CPU架构,系统开展了循环级与任务级两种并行模式的对
比研究;面向众核GPU架构,创新地提出了一种基于多级访存优化方法的规约并行策略。利用M6机翼和CHN-T1飞机算
例对所有并行算法及优化技术进行了全面验证与评估。结果表明:在多核CPU平台上,基于剖分复制的任务级并行策略
性能最好,采用Cuthill-McKee重排序以及循环融合分别使整体性能提升10%。在众核GPU平台上,基于多级访存的规约
策略具有显著的加速效果,优化后热点函数的性能相比优化前提升了3倍,相比CPU串行性能整体加速比可达127。

3)实验平台
测试用例及环境
为了分析不同并行算法的性能及相关优化技
术的效果,分别采用ONERA M6机翼(图 10)及
CHN-T1运输机标模[27](图 11)的三维非结构网
格开展了性能测试。其中M6的测试网格按体单
元数目规模分四个层次:粗(12万)、中(80
万)、细(360万)和极细(1000万)。CHN-T1
的网格规模分粗(600万)和细(1700万)两个
层次。

x86 节点的CPU 为Intel(R) Xeon(R) Gold
6258R @2.70GHz,每个节点两路CPU共58个计
算核心。GPU工作站配置为Intel(R) Xeon(R)
Platinum 8368 CPU @2.40GHz以及NVIDIA A100
PCIe 80G加速卡。

4)最终效果
利用优化前后的GPU并行程序对
CHN-T1粗细两套网格进行了计算,统计了相比
CPU串行计算,各个子模块以及程序整体运行时
间的性能加速比,如图 19所示。可以看到加速效
果非常明显,程序整体运行的加速比能达到
127。特别是通量计算部分,子程序的加速比可
以达到400以上,因为通量计算部分大部分都是
面循环,通过规约加SMEM优化的策略在解决数
据竞争问题的基础上缓解了间接访存情况,并且
提升了数据局部性。LU-SGS算法部分加速比略
低,是因为隐式求解算法固有的串行属性,这里
采用了简单的体着色并行策略,性能依然有提升
空间,后续还将继续深入研究。

串行127倍,CPU 28核,芯片问题并行加速为5倍左右。


说点什么...

已有0条评论

最新评论...

本文作者
2023-10-10 12:00
  • 0
    粉丝
  • 636
    阅读
  • 0
    回复
资讯幻灯片
热门评论
热门专题
排行榜
Copyright   ©2015-2023   猿代码-超算人才智造局 高性能计算|并行计算|人工智能      ( 京ICP备2021026424号-2 )