百万核心的混合CPU+MIC异构计算系统上可扩展CFD应用程序的性能优化

摘要:计算流体动力学(CFD)应用程序中,使用大量网格点/单元进行并行计算是一种常见的高效策略,以减少计算时间。如何在现代超级计算机系统中实现最佳性能,特别是在具有异构计算资源(例如混合CPU + GPU或CPU + 英特尔Xeon Phi(MIC)协处理器)的情况下,仍然是一个巨大的挑战。 本研究开发并测试了一种能够模拟三维结构化网格应用的自主并行CFD代码。基于识别应用程序的潜在并行性,均衡所有类型的计算设备之间的工作负载,将多线程代码调优以实现更好的性能,在具有数百个CPU/MIC核心的机器节点中优化多线程代码,以及优化节点间、核间和CPU与MIC之间的通信, 提出了在仅CPU的同构系统和异构系统中并行化、性能优化和代码调优的几种方法。 对来自模型和/或工业CFD应用程序的一些基准案例进行了测试,以评估性能。在这些CFD案例中,网格单元的最大数量达到了7800亿。调优后的求解器成功地扩展到Tianhe-2超级计算机系统的一半,超过137.6万个异构核心。详细讨论了测试结果和性能分析。

作者:Yong-Xian Wang, Li-Lun Zhang, Wei Liu, Xing-Hua Cheng, Yu Zhuang, Anthony T. Chronopoulos

论文ID:1710.09995

分类:Performance

分类简称:cs.PF

提交时间:2018-03-12

PDF 下载: 英文版 中文版pdf翻译中