新闻动态

News Center

打造极致算力:LS-DYNA MPP并行计算性能全面优化指南(下)

发布日期:
2026-01-21

浏览次数:

本文将分享在多种硬件平台上实现高效、稳定的 LS-DYNA MPP 仿真的一系列实践经验。内容涵盖如何为系统选择最合适的 LS-DYNA 可执行文件,如何识别并解决并行计算中的效率瓶颈,包括通过用户自定义的区域划分优化计算性能。以及如何通过调整系统设置、合理分配计算资源、采用 Hybrid MPI/OpenMP 执行模式以及进行处理器绑定,在现有硬件上最大化仿真性能。此外,还将介绍基于最新 x86 与 Arm 架构芯片的 LS-DYNA 基准测试结果。最后还将重点介绍如 OneMPI 等 LS-DYNA 最新的 MPP 特性。
  • 选择合适的LS-DYNA可执行文件
  • LS-DYNA模型调优
    • 域分解技术(Domain Decomposition)
    • 如何检测负载不平衡
    • 分区文件pfile-负载均衡调整的前置步骤
    • MPP接触
    • 特殊分块策略
    • 重新分块(Redecomposition)
    • 用户定义单元与材料的再分块
  • 如何最大化现有硬件的性能表现
    • LS-DYNA Undersubscription
    • LS-DYNA Hybrid 模式
  • 采用最新的硬件
  • LS-DYNA MPP一致性
  • LS-DYNA MPP新功能介绍
  • 总结


// LS-DYNA Undersubscription


打造极致算力:LS-DYNA MPP并行计算性能全面优化指南(下)

Undersubscription 模式指在拥有更多物理核心的节点上,仅启用其中一部分核心来运行 LS-DYNA。其优势体现在,每核可独享更高内存带宽与更大 L3 缓存,功耗与散热压力降低,MPI 消息数量减少,且因最终启用的核心数较少,许可成本相应下降。在核心规模庞大的 AMD 多节点环境中,该模式尤为有效。


然而,Undersubscription 也存在劣势:Undersubscription在多节点运行时更有优势,当系统总核心数较少或作业完全局限于单节点时,通常还是启用全部核心更快;此外,在多节点集群采用 Undersubscription 时,为达到与完全Subscription相同的总核心数需要占用更多节点,可能带来额外的资源使用成本


打造极致算力:LS-DYNA MPP并行计算性能全面优化指南(下)

图中给出 SLURM 提交示例:目标6节点集群每节点 96 核,总计 576 核。脚本沿用前述进程绑定设置,并将 MPI 进程数(-n 参数)设为可用核心总数的 50%(288核)。


打造极致算力:LS-DYNA MPP并行计算性能全面优化指南(下)

图中给出在 AMD Genoa 与 Milan 平台上进行的 Undersubscription 基准结果:Genoa 数据以蓝色区分,深蓝为完全Subscription,浅蓝为 Undersubscription;Milan 数据以红色系区分,深红对应完全Subscription,橙与黄对应 Undersubscription。性能曲线表明,当节点数不超过两个时,完全Subscription实例耗时最低;增至 4 节点与 8 节点后,Undersubscription 实例反超,主要得益于每核心内存带宽的提高。


打造极致算力:LS-DYNA MPP并行计算性能全面优化指南(下)

 Intel 实例上重复同一组性能测试,结果与 AMD 存在差异:无论节点数量多少,完全Subscription均保持最短运行时间,因此 Intel 平台不建议启用 Undersubscription。运行时间曲线显示,对 Intel 而言,是否 Undersubscription 对性能影响极小;而在相同核心规模下,AMD 平台两种模式的差距显著


// LS-DYNA Hybrid 模式


打造极致算力:LS-DYNA MPP并行计算性能全面优化指南(下)

下来介绍 LS-DYNA Hybrid。顾名思义,Hybrid 结合了 SMP 和 MPP 两种 LS-DYNA模式及优势,Hybrid 同时调用 SMP 的 OpenMP 并行与 MPP 的 MPI 并行,既保留 OpenMP 共享内存的低延迟,也利用 MPI 分布式扩展;相对纯 MPP,通信次数减少,数据传输的成本更低,可在大型集群获得更高性能与可扩展性。


若需降低 Subscription 核数,可启用 Hybrid LS-DYNA。典型场景如下:

  • 计算节点核心数高但单核内存带宽不足,AMD 平台常见;

  • 每个 MPI 进程分到的单元数偏少,难以达到 MPP 建议的 ≥10 000 单元/进程,Hybrid 通过增加 SMP 线程并减少 MPI 进程数以使用更多核心;

  • 纯 MPP 扩展遇到瓶颈,而 Hybrid 通常比纯MPP在高核数段表现出更好的可扩展性;

  • 需在增加总核数时保持结果逐位一致,Hybrid 以“相同 MPI 进程 + 更多 OpenMP 线程”  实现。


打造极致算力:LS-DYNA MPP并行计算性能全面优化指南(下)

LS-DYNA MPP 与 Hybrid 示意图。Hybrid 模式通过增加 SMP 线程并减少 MPI 进程数,在利用更多物理核心的同时,使每进程单元数仍落在推荐区间  。图中 MPP 的每个黄色方块表示一条独立 MPI 进程/处理器;它们位于不同内存空间,任何并行同步或数据交换都必须经过 MPI。Hybrid 则将多条核心划入同一线程块,块内使用共享内存,仅块间通信需 MPI,从而显著降低 MPI 流量。


打造极致算力:LS-DYNA MPP并行计算性能全面优化指南(下)

通用指导原则

  1. 在一致性模式下指定线程数时,在数字前加负号( -<threads>),使节点力数组按与线程数无关的顺序求和,确保结果一致;

  2. 务必检查处理器绑定,错误的绑核会显著拖慢 Hybrid 性能;


打造极致算力:LS-DYNA MPP并行计算性能全面优化指南(下)

上图示为 Hybrid 下的处理器绑定示例,分别给出 Intel MPI 与 Open MPI 的命令,通过 OMP_NUM_THREADS 指定线程数,并结合绑定参数设定每个 MPI 进程使用的线程。


打造极致算力:LS-DYNA MPP并行计算性能全面优化指南(下)

中展示某 SBATCH示例:同一集群含 6 个节点,每节点 96 核,共 576 核,沿用上一张幻灯片的进程绑定方式,MPI 进程数由总核数与每进程线程数共同决定。


打造极致算力:LS-DYNA MPP并行计算性能全面优化指南(下)

基准测试比较了纯 MPP 与 Hybrid LS-DYNA。可以看到,低核心数时,黄色曲线代表的纯 MPP 性能略高;当核心增至约 350 时,Hybrid 反超,因其扩展性更优。这是因为混合 LS-DYNA 在增加核心时的扩展性远优于纯 MPP。可扩展性图显示,纯 MPP 的加速曲线较 Hybrid 平缓。


打造极致算力:LS-DYNA MPP并行计算性能全面优化指南(下)

更多基准结果如图所示:深蓝曲线为纯 MPP模式,浅蓝曲线为 Hybrid LS-DYNA模式。即使在较低核心数下,Hybrid 耗时始终低于纯 MPP,且优势随规模扩大而放大。当总核心达到 2,000 时,Hybrid 仍保持下降趋势;纯 MPP 在约 1,000 核心处即出现反向扩展,耗时重新抬升,而 Hybrid 可继续增核并获得性能提升。


打造极致算力:LS-DYNA MPP并行计算性能全面优化指南(下)

只要剖分方式保持不变,最终结果即保持一致。不同剖分会导致每次循环的归约数值出现微小差异,而显式计算循环次数极多,差异会不断累积,使结果偏离。Hybrid 的优势在于可维持 MPI 进程数不变,从而保持同一剖分,同时仅增加 SMP 线程以获得更高核心数。图中分别在 192、384 与 576 核运行,MPI 进程数固定为 192,仅提高线程,X 向加速度曲线完全重合,证明计算结果保持一致。


打造极致算力:LS-DYNA MPP并行计算性能全面优化指南(下)


后续对比显示,Hybrid 与 MPP 的性能表现接近;Hybrid 的优势体现在解的稳定性:维持同一 MPI 进程数即可保持完全相同的分解,仅通过增加线程获得更高并行度,性能提升而结果不变。纯 MPP 因进程数变化导致分解差异,每次运行结果不同。因此,在模型开发、硬件升级或扩展至更多核心时,Hybrid 可在更高核心数下给出相同的解。


打造极致算力:LS-DYNA MPP并行计算性能全面优化指南(下)

回到最初展示的 AMD Azure HBv5 结果:该实例每节点集成四颗 AMD 芯片,核心数量可观。结合前述分析,传统纯 MPP 在此平台会错失约 10% 性能;改用 Hybrid 或采用 MPP 过度订阅即可在相同模型、相同硬件条件下直接回收这 10% 的差距,无需任何额外修改。


采用最新的硬件


打造极致算力:LS-DYNA MPP并行计算性能全面优化指南(下)

最后一条提升 MPP 性能的策略是采用最新硬件,本地或云端均可。图中给出 LS-DYNA 在 Intel Xeon 6 上的基准结果:与 Xeon 5 相比,新一代芯片在 1,000 万单元 ODB 模型上提速约 50%。该例中 Xeon 6 仅增加 8 核心,却仍取得 50% 性能增益,代际提升显著。


打造极致算力:LS-DYNA MPP并行计算性能全面优化指南(下)

下面观察 AMD 最新一代 Zen 5 芯片的表现。图中对比 Zen 4 与 Zen 5 运行同一算例:Zen 5性能提升 40%,且核心数量保持不变,可见 LS-DYNA 的单核性能从第四代到第五代提高了 40%。


打造极致算力:LS-DYNA MPP并行计算性能全面优化指南(下)

回到微软 Azure HBv5 实例,并对比前几代产品:在 LS-DYNA 测试中,HBv3 单节点升至 HBv4 单节点性能翻倍,HBv4 再升级至 HBv5 单节点又一次翻倍;Azure 与 AMD 的迭代效果令人瞩目。更突出的是,HBv5 单节点速度高于 HBv4 三节点总和,彰显硬件升级带来的巨大收益。


LS-DYNA MPP一致性


打造极致算力:LS-DYNA MPP并行计算性能全面优化指南(下)

接下来讨论 MPP LS-DYNA 的一致性问题。相关通用指导原则如下:

  • 启用 LS-DYNA 的 reduce 功能(*CONTROL_MPP_IO_LSTC_REDUCE),实现固定的 MPI 求和操作;可通过分区文件或关键字设置,确保多次运行结果一致,且无论使用 Open Intel 还是 Platform MPI,结果均保持相同;

  • 对于Hybrid模式,需在命令行用负号线程数(-<threads>)启用一致性模式,以固定结果向量的求和顺序;

  • 必须保持相同数量的处理器,因为改变处理器的数量会导致剖分方式不同,从而引起数值差异。


打造极致算力:LS-DYNA MPP并行计算性能全面优化指南(下)

后续通用原则如下:

  • 在模型开发阶段应沿用同一 LS-DYNA 可执行文件,更换版本、指令集或处理类型均会引入结果差异;

  • 显式分析出现数值波动,通常不建议改用双精度也不一定有帮助,可尝试细化网格以降低波动;

  • 命令行或 *CONTROL_ACCURACY 中设置 SRTFLG=1,可保证输入文件包含顺序改变时结果仍一致;示例中运行一与运行二的文件顺序不同,启用 SRTFLG 后两次解完全相同。


打造极致算力:LS-DYNA MPP并行计算性能全面优化指南(下)

针对 Intel MPI 的一致性设置:若需在 Intel 与 AMD 硬件间获得相同结果,可设定环境变量 I_MPI_CBWR=2。该变量禁止 Intel MPI 进行 CPU 检测,消除因硬件差异带来的分支路径,使计算结果保持一致;在 AMD 平台运行 Intel MPI 时亦建议始终启用。


LS-DYNA MPP新功能介绍


打造极致算力:LS-DYNA MPP并行计算性能全面优化指南(下)

本文仅介绍一项新功能:OneMPI,LS-DYNA自 R14.0 及以上版本均内置该特性。开发OneMPI的初衷是,单个二进制文件即可同时支持 Intel MPI、Platform MPI 与 Open MPI。从 FTP 站点获取的 Intel MPI 可执行文件已集成此功能,设置环境变量 LSTC_MPI 即可切换所需 MPI 类型。若启用 LSTC_REDUCE,无论选用何种 MPI,计算结果均保持一致。


打造极致算力:LS-DYNA MPP并行计算性能全面优化指南(下)

启用 LS-DYNA OneMPI 前需先创建统一库目录。示例如图:目录内为符号链接,可手动建立,也可用官方脚本自动生成。结构按 MPI 类型分为 Intel、Open 与 Platform 三个子目录,LS-DYNA 所需的 Intel MPI 库名被链接至实际待用的 MPI 库文件;以 Open MPI 为例,将 Intel MPI 的库文件名指向 Open MPI 的真实库即可。


打造极致算力:LS-DYNA MPP并行计算性能全面优化指南(下)

第二步:设定环境变量,共三项

  • LSTC_MPI:供 LS-DYNA 读取,指定待用的 MPI 类型

  • PATH:指向所选 MPI 的可执行文件目录

  • LD__LIBRARY_PATH:指向前述 One MPI 库目录


打造极致算力:LS-DYNA MPP并行计算性能全面优化指南(下)

第三步:启用 LSTC_REDUCE,通过关键字*CONTROL_MPP_IO_LSTC_REDUCE或 pfile 设置,固定数据求和顺序,确保不同 MPI 下的结果一致。


打造极致算力:LS-DYNA MPP并行计算性能全面优化指南(下)

使用 One MPI 需三步,需事先下载 LS-DYNA Intel MPI 二进制文件(已内置 OneMPI 功能):

  1. 创建 One MPI 库(生成符号链接)

  2. 设置环境变量 LSTC_MPI、PATH 与 LD_LIBRARY_PAT

  3. 启用 LSTC_REDUCE


总结


打造极致算力:LS-DYNA MPP并行计算性能全面优化指南(下)

本文介绍了实现 LS-DYNA MPP 最佳性能的四个策略:第一,选择最优的 LS-DYNA 求解器程序;第二,调整模型,讲解如何检测并行效率瓶颈并通过特殊模型分块策略进行调整;第三,充分利用现有硬件,尝试使用包括 Subscription、Hybrid 并行与进程绑定的设置;第四,展示最新硬件在本地及云端的基准测试结果。随后讨论了提高 LS-DYNA MPP 求解时的结果一致性设置,最后,展示了LS-DYNA最新的 OneMPI功能的相关内容。


更多内容欢迎持续关注摩尔芯创!


相关阅读

深度解读 | LS-DYNA中损伤与失效模型

How to | LS-DYNA使用技巧(十)-材料篇

How to | LS-DYNA使用技巧(九)-材料篇

How to | LS-DYNA使用技巧(八)

How to | LS-DYNA使用技巧(七)

How to | LS-DYNA使用技巧(六)

How to | LS-DYNA使用技巧(五)

How to | LS-DYNA使用技巧(四)

How to | LS-DYNA使用技巧(三)

How to | LS-DYNA使用技巧(二)

How to | LS-DYNA使用技巧(一)



相关推荐

打造极致算力:LS-DYNA MPP并行计算性能全面优化指南(下)
本文将分享在多种硬件平台上实现高效、稳定的 LS-DYNA MPP 仿真...
打造极致算力:LS-DYNA MPP并行计算性能全面优化指南(中)
本文将分享在多种硬件平台上实现高效、稳定的 LS-DYNA MPP 仿真...
打造极致算力:LS-DYNA MPP并行计算性能全面优化指南(上)
本文将分享在多种硬件平台上实现高效、稳定的 LS-DYNA MPP 仿真...
Fluent PCB模型及常见错误问题解决
1、简要说明 Fluent借助于“Trace Mapping"...