NVIDIA Arm HPC 开发者套件 是一个集成的硬件和软件平台,用于在异构 GPU 和 CPU 加速计算系统上创建、评估和基准测试 HPC 、 AI 和科学计算应用程序。 NVIDIA 于 2021 3 月宣布上市。
该套件被设计为 HPC 和 AI 应用的下一代 NVIDIA Grace Hopper 超级芯片 的垫脚石。它可用于识别不明显的 x86 依赖关系,并确保 1H23 中 NVIDIA Grace Hopper 系统 之前的软件准备就绪。有关详细信息,请参阅 NVIDIA Grace Hopper 超级芯片白皮书 。
Oak Ridge National Laboratory Leadership Computing Facility ( OLCF )将 NVIDIA Arm HPC 开发套件集成到其现有的 Wombat Arm cluster 中。应用程序团队致力于构建、验证和基准测试几个 HPC 应用程序,以评估下一代基于 Arm 和 GPU 的 HPC 系统的应用程序准备情况。这些团队已共同提交了《 IEEE 并行和分布式系统学报》,以供发表,证明 GPU 加速 Arm 系统可用的软件和工具套件已准备好用于生产环境。要了解更多信息,请参见 Early Application Experiences on a Modern GPU-Accelerated Arm-based HPC Platform 。
OLCF 袋熊集群
Wombat 是一个实验集群,配备了来自不同供应商的基于 Arm 的处理器。它从 2018 年开始运行。该集群由 OLCF 管理,用户和研究人员可以自由访问。
在研究时,集群由三种类型的计算节点组成:
- 4 个 HPE Apollo 70 节点,每个节点配备双 Cavium (现为 Marvell ) ThunderX2 CN9980 处理器和两个 NVIDIA V100 Tensor Core GPUs
- 16 个 HPE Apollo 80 节点,每个节点配备一个 Fujitsu A64FX 处理器
- 8 个 NVIDIA Arm HPC 开发套件节点,每个节点配备一个 Ampere Computing Altra Q80 – 30 CPU 和 2 个 NVIDA A100 GPU
这三种类型的节点共享一个基于 TX2 的通用登录节点,基于 Arm ,所有节点都通过 InfiniBand EDR 和 HDR. 连接
HPC 应用评估
11 个不同的小组开展了评估工作。团队包括橡树岭国家实验室、桑迪亚国家实验室、伊利诺伊大学厄巴纳 – 香槟分校、佐治亚理工学院、巴塞尔大学、瑞士国家超级计算中心( SNSC )、赫尔姆霍兹 – 泽特姆 – 德累斯顿 – 罗森多夫分校、特拉华大学和 NVIDIA 的研究人员。
表 1 总结了应用程序的最终列表及其各种特性。这些应用程序涵盖八个不同的科学领域,包括用 Fortran 、 C 和 C ++编写的代码。使用的并行编程模型有 MPI 、 OpenMP / OpenACC 、 Kokkos 、 Alpaka 和 CUDA 。在移植活动期间,没有对应用程序代码进行任何更改。评估过程主要集中于应用程序移植和测试,考虑到测试台的实验性质,较少强调绝对性能。
App Name | Science Domain | Language | Parallel Programming Model |
ExaStar | Stellar Astrophysics | Fortran | OpenACC, OpenMP offload |
GPU-I-TASSER | Bioinformatics | C | OpenACC |
LAMMPS | Molecular Dynamics | C++ | OpenMP, KOKKOS |
MFC | Fluid Dynamics | Fortran | OpenACC |
MILC | QCD | C/C++ | CUDA |
MiniSweep | Sn Transport | C | OpenMP, CUDA |
NAMD/VMD | Molecular Dynamics | C++ | CUDA |
PIConGPU | Plasma Physics | C++ | Alpaka, CUDA |
QMCPACK | Chemistry | C++ | OpenMP offload, CUDA |
SPECHPC 2021 | Variety of Apps | C/C++/Fortran | OpenMP offload, OpenMP |
SPH-EXA2 | Hydrodynamics | C++ | OpenMP, CUDA |
本文介绍了其中四个应用程序的结果。要了解有关其他应用程序的更多信息,请参阅 Early Application Experiences on a Modern GPU-Accelerated Arm-based HPC Platform 。
蛋白质结构和功能预测的生物信息学
GPU-I-TASSER 是用于蛋白质结构和功能预测的具有 GPU 能力的生物信息学方法。 I-TASSER 套件通过四个主要步骤预测蛋白质结构。其中包括螺纹模板识别、迭代结构装配模拟、模型选择和优化。最后一步是基于结构的函数注释。结构折叠和重组阶段通过复制品交换蒙特卡罗模拟进行。
图 1 显示了 Wombat 的 ThunderX2 和 AmpereAltra 处理器以及 NVIDIA A100 和 V100 GPU 相对于 Summit 上的 POWER9 处理器的性能。对于 Ampere Ultra 、 NVIDIA V100 和 A100 ,分别观察到 1.8 倍、 6.9 倍和 13.3 倍的加速。
物理问题的流体流求解器
Multi-component Flow Code ( MFC )是一个开源的流体流求解器,它为各种物理问题提供高阶精确的解决方案,包括多相可压缩流和子网格分散。
表 2 显示了不同硬件的平均时钟时间和相对性能指标。时间列几乎没有绝对意义,相对性能是最有意义的(也显示在最后一列)。所有比较都使用 NVHPC v22.1 或 GCC v11.1 编译器,如图所示。 CPU 壁时钟时间通过每个芯片的 CPU Core 的数量进行归一化。结果表明,在 Summit 上, A100 GPU 比 V100 快 1.72 倍。
Compiler | Time (sec) | Speedup | |
NVIDIA A100 | NVHPC | 0.28 | 15.71 |
NVIDIA V100 | NVHPC | 0.5 | 8.80 |
2xXeon 6248 | NVHPC | 2.7 | 1.63 |
2xXeon 6248 | GCC | 2.1 | 2.10 |
Ampera Altra | NVHPC | 3.9 | 1.13 |
Ampera Altra | GCC | 2.7 | 1.63 |
2xPOWER9 | NVHPC | 4.4 | 1.00 |
2xPOWER9 | GCC | 3.5 | 1.26 |
2xThunderX2 | NVHPC | 21 | 0.21 |
2xThunderX2 | GCC | 5.4 | 0.81 |
A64FX | NVHPC | 4.3 | 1.02 |
A64FX | GCC | 13 | 0.34 |
NAMD 和 VMD 用于生物分子动力学模拟和可视化
NAMD 和 VMD 是用于分子动力学模拟( NAMD )和制备、分析和可视化( VMD )的生物分子建模应用。研究人员使用 NAMD 和 VMD 研究生物分子系统,包括单个蛋白质、大型多蛋白复合物、光合细胞器和整个病毒。
表 3 显示, NAMD 在 A100 上的模拟速度比 V100 快 50% 。 Cavium ThunderX2 和 IBM POWER9 之间的性能相似,后者得益于 CPU 和 GPU 之间的低延迟 NVIDIA NVLink 连接。
CPU | GPU | Compiler | Perf (ns/day) |
2x EPYC 7742 | A100-SXM4 | GCC | 187.5 |
1x Ampera Altra | A100-PCIe | GCC | 182.2 |
2x Xeon 6134 | A100-PCIe | ICC | 181.4 |
2x POWER9 | V100-NVLINK | XLC | 125.7 |
2x ThunderX2 | V100-PCIe | GCC | 124.9 |
对于 VMD ,表 4 中的 GPU 加速结果显示了与现有 CPU 平台相比, GPU 提供的更高峰值算术吞吐量和内存带宽带来的性能增益。 GPU 分子轨道结果突出了 GPU 的性能和宿主 – GPU 互连带宽。
CPU | Compiler | SIMD | Time (sec) |
AMD TR 3975WX | ICC | AVX2 | 1.32 |
AMD TR 3975WX | ICC | SSE2 | 2.89 |
1x Ampere Alta | ArmClang | NEON | 1.35 |
2x ThunderX2 | ArmClang | NEON | 3.02 |
A64FX | ArmClang | SVE | 4.15 |
A64FX | ArmClang | NEON | 13.89 |
2x POWER9 | ArmClang | VSX | 6.43 |
qmcp 包
QMCPACK 是一个开源、高性能的量子蒙特卡罗( QMC )软件包,使用多种统计方法解决多体薛定谔方程。可以系统地测试和减少 QMC 中所做的几个近似值,与密度泛函理论等更广泛使用的方法相比,这可能会使预测中的不确定性得到量化,但会牺牲大量的计算费用。
应用包括弱结合分子、二维纳米材料和固态材料,如金属、半导体和绝缘体。
如图 2 所示,在 Wombat 上运行的单个 A100 GPU 的性能优于 V100 ,几乎所有问题大小的吞吐量都显著提高。 Wombat 的 A100 2 GPU 在最大和最具计算挑战性的情况下性能显著提高。对于这些系统大小,更大的 GPU 内存是提高性能的最重要因素。
NVIDIA Arm HPC 开发套件评估结果
作为 Wombat 集群的一部分,与 NVIDIA Arm HPC Developer Kit 合作的研究团队表示,“在我们部署包含 NVIDIA V GPU 的 Wombat 测试台节点时,我们发现通过 Arm Server Ready 固件操作系统、软件、库和最终用户包的跨堆栈贡献,通用集群设置变得更容易。”
他们补充道:“本研究中测试的许多 GPU 加速应用程序的大部分性能来自为 GPU 架构优化的应用程序内核。”。“这并不能否定测试新 Arm 和 GPU 平台的重要性。我们注意到,最大的限制似乎与有限的 GPU 内存大小以及用于迁移和保存 GPU 加速器附近数据的机制有关。”
NVIDIA Grace Hopper 系统之路
NVIDIA Arm HPC Developer Kit 旨在为客户提供一个稳定的硬件和软件平台,用于 Arm 生态系统中加速 HPC 、 AI 和科学计算应用程序的开发和性能分析。 NVIDIA Grace Hopper Superchip 将 72 臂 Neoverse V2 CPU 内核的极高单线程性能与下一代 NVIDIA Hopper H100 GPU 相结合,为 HPC 和 AI 应用提供无与伦比的性能。 NVIDIA Grace Hopper Superchip 创新之处在于通过 NVLink-C2C 将 CPU 连接到 GPU ,这比 PCIe Gen5 快 7 倍,并通过 LPDDR5X 和 HBM3 内存支持 3.5 TB / s 的内存带宽。
NVIDIA Grace Hopper Superchip 已经被领先的 HPC 客户采用,包括瑞士国家超级计算中心( CSCS )、洛斯阿拉莫斯国家实验室( LANL )和阿卜杜拉国王科技大学( KAUST )。
基于 NVIDIA Grace Hopper Superchip 的系统将于 2023 年上半年从领先的原始设备制造商处获得。有兴趣率先将应用程序迁移到 Arm 生态系统的客户仍可从 Gigabyte Systems 购买 NVIDIA Arm HPC Developer Kit 。
要了解更多有关 NVIDIA Grace Hopper 架构如何提供下一代性能和易于编程的信息,请参阅 NVIDIA Grace Hopper Superchip Architecture whitepaper 。