俄罗斯国立大学在天体物理模拟领域的研究进展

俄罗斯国立大学是俄罗斯主要的科研和教育中心之一,也是西伯利亚最大的大学之一。该校的研究人员在开发和优化用于氢离子化磁流体动力学(MHD)问题的数值模拟软件工具时,面临着提升在基于英特尔® 至强Phi™处理器的硬件上的性能的挑战。该项目是天体物理对象模拟(AstroPhi)项目的一部分,他们选择了英特尔® Advisor和英特尔® Trace Analyzer and Collector作为优化工具,成功将计算一个问题的标准时间从一周缩短至两天,性能提升了3倍。

“与市场上其他架构相比,使用英特尔® 至强Phi™处理器的英特尔® 高级向量扩展为提供了最大的代码性能。”——伊戈尔·库利科夫,新西伯利亚国立大学副教授。

为了保持教育的相关性,NSU提供了大约120个技术、经济和人文领域的学士、硕士、博士和博士后级别的学习项目。大学员工致力于研究和教学,并致力于保持大学教育项目与现代社会的挑战相关。NSU与研究机构、大学以及工业、商业和国家部门紧密合作。

数学建模在现代天体物理学中起着关键作用。它是研究宇宙中非线性演化过程的通用工具。在高分辨率下模拟复杂的天体物理过程需要最强大的超级计算机。大学的AstroPhi项目为配备英特尔至强Phi处理器的大规模并行超级计算机开发天体物理代码。这个有价值的项目帮助学生学习创建大规模并行超级计算机的数值模拟代码。学生还学习现代高性能计算(HPC)硬件架构——为他们准备开发明天的百亿亿次超级计算机。

团队使用数值方法(图1)设计了该项目。这种高阶方法的好处包括: - 没有人工粘性 - 伽利略不变解 - 熵不减少保证 - 简单的并行化 - 潜在的“无限”可扩展性(弱可扩展性) 前三个好处是现实模拟天体物理问题中所有重要物理效应的关键因素。该方法的简单性,加上MPI发送/接收操作的数量少,提供了有效的并行化——以及在弱可扩展性方面的潜在“无限”可扩展性。

团队基于英特尔至强Phi处理器共同设计了新的求解器,以消除节点瓶颈并简化代码现代化。可引导的处理器提供了团队处理最苛刻的高性能计算应用所需的能效。

团队基于英特尔® 高级向量扩展512(英特尔® AVX-512)指令构建了求解器,该指令提供512位SIMD支持,使程序能够在512位向量内打包八个双精度或16个单精度浮点数,或八个64位整数,或16个32位整数。这使得处理的数据元素数量是AVX/AVX2单指令处理的2倍,是SSE的4倍。

在AstroPhi项目中优化代码是一个关键方面。优化前,团队在向量依赖性和向量大小时遇到了一些问题(图2)。优化代码的目标是消除向量依赖性,优化内存加载操作,有效地适应英特尔至强Phi架构的向量和数组大小。团队使用了英特尔Advisor和英特尔Trace Analyzer and Collector,这两个工具是英特尔® Parallel Studio XE的一部分,用于优化。

英特尔Parallel Studio XE是一个全面的软件开发套件,帮助开发者利用日益增长的处理器核心数量和向量寄存器宽度,最大限度地提高应用程序在当今和未来处理器上的性能。

英特尔Advisor是一个基于这样一个事实的软件工具:对于现代处理器来说,向量化(使用AVX*或SIMD*指令)和线程化软件是实现处理器全部性能潜力的关键。使用这个工具,团队能够进行屋顶线分析,突出表现不佳的循环,并显示每个循环的性能提升空间,确定哪些可以改进,哪些值得改进。

“英特尔Advisor使查找瓶颈的原因和决定下一步优化步骤变得更容易,”新西伯利亚国立大学的副教授伊戈尔·切尔尼克解释说。“它提供了数据,帮助在实施之前预测性能提升。”

英特尔Advisor按潜在收益对循环进行排序,通过在源代码上显示消息,使编译器报告更容易阅读,并为项目团队提供有效的向量化提示。它还提供了关键数据,如行程计数、数据依赖性和内存访问模式,使向量化安全高效。

英特尔Trace Analyzer and Collector是优化代码的另一个帮助。这个图形工具帮助团队理解MPI应用程序的行为,快速找到瓶颈,提高正确性——并最终最大化工具在英特尔®架构上的性能。它包括MPI通信分析功能,有助于改善弱和强扩展。

经过所有改进和优化后,团队实现了190 GFLOPS的性能和0.3 FLOP/byte的算术强度,100%的掩码利用率和573 GB/s的内存带宽。

“使用英特尔Advisor和英特尔Trace Analyzer and Collector,能够消除向量依赖性,优化加载操作,并适应英特尔至强Phi架构的向量和数组大小,”库利科夫解释说。“这种优化使能够运行3倍多的天体物理测试变体。”

沪ICP备2024098111号-1
上海秋旦网络科技中心:上海市奉贤区金大公路8218号1幢 联系电话:17898875485