LS-DYNA及高性能计算评测

LS-DYNA x86_64 二进制文件

大多数版本 - ifort + MKL

  • 可在 Intel Xeon 和 AMD EPYC 芯片上运行
  • 在两种芯片上通过相同的输入产生相同的显式结果 (对于隐式,MKL 需要特殊的环境变量)

附加版本

  • AOCC + AOCL - 可在英特尔至强和 AMD EPYC 芯片上运行
  • 在两种芯片上通过相同的输入生成完全相同的显式结果 (隐式 AOCL 需要特殊的环境变量)

4 种不同构建的性能比较、 ifort(AVX2、AVX512)和 aocc(AVX2、AVX512)

显式 - car2car(240 万元素,30 毫秒)

LS-DYNA 二进制

  • 使用英特尔 MPI 测试
  • 无硬件相关选项,但有指令集相关选项
  • 不同年代/品牌的 CPU 可产生相同的数值结果

AMD EPYC 9654 (Zen4/192 内核) : car2car

  • AOCC AVX2 在二进制文件中性能最佳,比 ifort AVX2 快约 5%。
  • ifort AVX512 略快于 ifort AVX2
  • Zen4 是首款支持 AVX512 的 AMD 芯片。

英特尔至强 Gold 1642(48 核):car2car

  • 在 4 个二进制文件中,ifort AVX2 的性能最好,比 AOCC AVX2 快约 1%。
  • 对于两种编译器,AVX512 的性能均低于 AVX2
  • AOCC AVX512 在英特尔芯片上性能不佳。

AMD Zen 和英特尔至强可扩展处理器之间的数值一致性

显式分析结果相同

  • 分解相同
  • 开启 lstc_reduce

隐式 - Cycl1e6(100 万元素)

  • Ifort/MKL 在两种硬件上的性能最佳(环境变量设置不同)
  • 如果没有适当的环境变量,MKL 和 AOCL 的性能很差。
  • 将发布 AOCC/AOCL 和 IFORT/MKL(AOCC/MKL 仅用于内部测试)
  • AMD 提到 AOCL 在未来的版本中不需要标志。

架构的冲突: CISC 与 RISC

CISC - 复杂指令集计算机(x86_64 架构)

  • 英特尔至强、AMD EPYC 等
  • 广泛的指令集 - 强大的计算能力

RISC - 精简指令集计算机(ARM64 架构)

  • ARM64、RISC-V、IBM power、MIPS、SPARC、PA 等。
  • 底层简单指令
  • 需要多条指令才能完成复杂任务
  • 降低功耗

X86_64 在数据中心/云中的主导地位

“潜在用户在看到这款 ARM CPU 的单线程速度并不比英特尔快,而且与 X86-64 不兼容时,就会嗤之以鼻。不兼容 x86-64,就会耸耸肩走开。对于一台完整的服务器来说,微小的价格差异不足以从 x86-64 转向 ARM"。

已评估的 ARM 处理器

Neon

  • 500,000 个元素
  • 最多运行 8 个内核 - 在单插槽和 NUMA 节点上运行

LS-DYNA 开发源

  • MPP 单精度
  • OpenMPI 4.x
  • ARM64 - armflang22.0.2 和 gcc
  • x86_64 - avx2, ifort190 和 gcc

Neon - 各核心性能


70285.png)

  • Apple M1 max 实现了卓越的单核和双核性能
  • 当代 ARM 处理器性能良好,但计算能力可能仍落后于最新的第四代 EPYC 和 Xeon 处理器。

参考资料

ODB-10M

  • 1000 万元素
  • 最多运行 8 个节点

LS-DYNA R12.1.0

  • MPP 单精度
  • 禁用多线程
  • OpenMPI 4.x
  • 使用 EFA 运行 Amazon 实例

ODB-10M - 按节点计算的性能

  • 大多数汽车用户使用少于 384 个内核/任务(2-4 个节点)。
  • X86-64 具有双插槽
  • 内存带宽/内核高于 arm64

ODB-10M - 价格 性能

ARM V1 平台(Graviton3)优先考虑计算能力,而不是面积和能效。

ARM 未来

迫在眉睫 处理器

  • Ampere One - ARMv8.6,192 个内核。
  • Nvidia Grace - ARMv9,144 个 Neoverse-V2 内核。
  • Nvidia Grace Hopper - CPU + GPU 相干内存

进一步创新

  • TSMC 3nm 平台 - 传闻用于 Apple M3、Graviton4
  • OpenMPI 5.0
  • 扩展 arm64 的软件库

版本之间的性能

  • 型号: ODB-10M
  • AMD EPYC 7V73X 64 核处理器(2 个插槽,共 120 个内核)
  • 使用 AVX2 二进制文件
  • 相对于 R11.2.2 单节点的性能(越高越好)

版本之间的性能

  • 型号: ODB-10M
  • Intel Xeon Platinum 8168 CPU(2 个插槽,共 44 个内核)
  • 使用 AVX2 二进制文件
  • 相对于 R11.2.2 单节点的性能(越高越好)

结论

  • 在未来版本中同时支持 ifort/MKL 和 aocc/AOCL 二进制文件,以获得目标硬件的最佳性能
  • 与 ifort 和 aocc 开发团队合作,以避免与硬件相关的数值噪声
  • X86_64 的计算性能仍然优于 arm64。Arm64 的价格和功耗性能优于 x86-64。
  • 目前有几种下一代 arm64 CPU,我们将继续支持这些硬件
  • 目前有几种新的 CPU/GPU 共享内存系统,我们正在探索适用于这些新硬件的新数值方案
posted @ 2024-12-08 21:07  磁石空杯  阅读(28)  评论(0编辑  收藏  举报