APP下载

面向国产加速器的CFD核心算法并行优化

2021-09-17曹义魁陆忠华张鉴刘夏真袁武梁姗

数据与计算发展前沿 2021年4期
关键词:程序优化

曹义魁,陆忠华,张鉴,刘夏真,袁武,梁姗

1.中国科学院计算机网络信息中心,北京 100190

2.中国科学院大学,北京 100049

引言

计算流体动力学(Computational Fluid Dynamics,CFD)是一门新兴的交叉型学科,它结合数学中的离散方法,利用计算机强大的算力对流体力学中复杂的微分方程进行求解,在科研和工程领域都发挥着巨大的作用。目前的CFD 商业软件、开源CFD软件等,大多数是基于CPU 开发的。但随着计算规模的不断扩大,CPU 的计算、访存及通信性能已经不能满足人们的需要[1],所以寻求新的方法实现对大规模数据进行并行处理已经成为国产CFD 软件发展的必要条件。

CPU+加速器异构架构的出现,为人们解决复杂的大规模计算提供了新的方法,它充分集合了CPU 和加速器的各自优势特点,将具有并行性的计算密集部分放到加速器上进行加速,极大的提高了程序的运行速度,这也成为了目前高性能计算的主流方法[2]。为了能够充分利用加速器的性能,需要针对程序中的算法特点设计具有高并行度、高访存带宽的并行方法。国内外已有较多将CFD 应用移植到CPU+加速器异构平台并进行优化的相关研究。

Corrigan 等[3]基于CPU/GPU 异构平台对流体力学中的格子玻尔兹曼方法实现了并行加速,并采用多种方法实现了简单高效的数据访存模式,使全局访存带宽利用率达到了86%,相应程序也得到33.6 倍的加速效果。Jespersen[4]设计并实现了基于对称逐次超松弛方法的CFD 软件的GPU 并行方案,并对其中的Jacobi 迭代部分进行了并行加速,单GPU 卡相对于单CPU 核心实现了大约3 倍的加速效果。……

登录APP查看全文

猜你喜欢

程序优化
超限高层建筑结构设计与优化思考
民用建筑防烟排烟设计优化探讨
关于优化消防安全告知承诺的一些思考
一道优化题的几何解法
由“形”启“数”优化运算——以2021年解析几何高考题为例
试论我国未决羁押程序的立法完善
失能的信仰——走向衰亡的民事诉讼程序
“程序猿”的生活什么样
英国与欧盟正式启动“离婚”程序程序
创卫暗访程序有待改进