LAMMPS 专题

LAMMPS CPU与GPU计算准确性

相同构型的能量、力、压力与短时NVE对照。

更新于 2026-10-19约 10 分钟阅读按任务与环境选择适用配置
阅读本篇目录

GPU加速是否可信,需要在相同物理输入下检查能量、力和时间积分表现。本轮使用非零力的有限温度构型,并按原子ID对齐;Cu/EAM、Si/Tersoff及SPC/E水的两档规模分别与CPU double参考比较,覆盖P100/V100的GPU mixed和KOKKOS double单/双卡。

相同坐标的能量和力#

共有54项相同构型检查,54项通过预设检查。最大能量差为6.21e-07 eV/atom,最大力分量差为0.000153 eV/Å。水的real单位已统一换算,所有比较的坐标、原子类型、势与固定PPPM设置一致。

验收要求能量差不超过1e-5 eV/atom、最大力分量差不超过1e-3 eV/Å,同时报告RMS力差、相对RMS差和压力变化。这里是CPU/GPU实现一致性检查,不替代力场的物理准确性、时间步、PPPM精度或科学体系收敛验证。

相同构型CPU/GPU能量与力偏差;重合点代表相近结果

相同构型CPU/GPU能量与力偏差;重合点代表相近结果

对数图将零值及更小值显示在1e-16绘图下限,原始误差仍以CSV为准。两条实现路线的汇总如下,范围包含两种GPU、两档规模和单/双卡。

模型 实现与精度 最大能量差 / eV·atom⁻¹ 最大力分量差 / eV·Å⁻¹ 最大RMS力差 / eV·Å⁻¹
Cu / EAM gpu / mixed 7.0772e-08 5.51802e-05 9.16536e-06
Cu / EAM kokkos / double 2.72848e-15 2.58682e-14 8.93947e-16
Si / Tersoff gpu / mixed 6.20578e-07 0.000152827 2.54798e-05
Si / Tersoff kokkos / double 0 8.43769e-15 1.23822e-15
SPC/E 水 / PPPM gpu / mixed 2.33111e-08 5.3985e-05 3.12838e-06
SPC/E 水 / PPPM kokkos / double 1.48643e-13 7.03112e-13 9.76364e-15

主矩阵的压力张量核对#

另对18个公共初态获取CPU double的完整压力张量参考,比较xx、yy、zz、xy、xz、yz六个分量。金属单位bar乘0.1、水的atm乘0.101325,统一为MPa;主矩阵开始前固定实现一致性预算0.1MPa,即1bar。它是本轮实现对照标准,不是所有材料压力预测准确性的保证。

能量和压力张量由全部原子计算;大体系的逐原子力另采用覆盖全部元素类型的分层抽样,水的抽样同时包含O与H。下图每个点取该规模、该平台与实现的有效卡数配置中最大的压力分量误差,不将失败配置的低值作为优势。

18个公共初态的全压力张量对照;每路线取有效卡数中的最大值

18个公共初态的全压力张量对照;每路线取有效卡数中的最大值

零值及低于1e-15MPa的误差显示在绘图下限;完整六分量差值见性能CSV。

  • Cu / EAM:有效主矩阵配置的最大分量误差为0.0036384MPa。
  • Si / Tersoff:有效主矩阵配置的最大分量误差为0.010124MPa。
  • SPC/E 水 / PPPM:有效主矩阵配置的最大分量误差为0.0022463MPa。

压力张量包括热运动和相互作用贡献,不能与某些软件的应力正负号直接混用。需要更严格的压力、弹性或相变判断时,应按目标观测量进一步做精度和采样收敛。

NVE能量漂移和有限温度统计#

使用同一份坐标和速度,在无温控器的NVE下检查能量变化;水保留相同SHAKE约束。Cu和Si各10ps,水10ps。随后短时收集径向分布,数据只用于实现核对,不宣传为材料性质的长时间统计收敛。

长期MD中,舍入误差会逐步放大,CPU/GPU轨迹不要求永久逐步重合。因此下面给出能量漂移、温度/压力波动与径向分布的有限时间观察;不能将轨迹分离直接叫作GPU算错,也不能把总能量相近解释为所有动力学性质均已收敛。

模型/原子数 资源 实现 卡数 最大能量偏离 / meV·atom⁻¹ 线性能量漂移 / meV·atom⁻¹·ps⁻¹ 平均温度 / K
Cu / EAM / 4,000 CPU56核 omp 0 0.00053273 -4.307e-05 251.82
Cu / EAM / 4,000 P100 gpu 1 0.00052376 -5.209e-05 251.82
Cu / EAM / 4,000 P100 gpu 8 0.00052376 -5.209e-05 251.82
Cu / EAM / 4,000 P100 kokkos 1 0.00053273 -4.307e-05 251.82
Cu / EAM / 4,000 P100 kokkos 8 0.00053273 -4.307e-05 251.82
Cu / EAM / 4,000 V100 gpu 1 0.00052376 -5.209e-05 251.82
Cu / EAM / 4,000 V100 gpu 8 0.00052376 -5.209e-05 251.82
Cu / EAM / 4,000 V100 kokkos 1 0.00053273 -4.307e-05 251.82
Cu / EAM / 4,000 V100 kokkos 8 0.00053273 -4.307e-05 251.82
Cu / EAM / 32,000 CPU56核 omp 0 0.00037303 -1.7476e-05 220.04
Cu / EAM / 32,000 P100 gpu 1 0.00037241 -1.4973e-05 220.04
Cu / EAM / 32,000 P100 gpu 8 0.00037241 -1.4973e-05 220.04
Cu / EAM / 32,000 P100 kokkos 1 0.00037303 -1.7476e-05 220.04
Cu / EAM / 32,000 P100 kokkos 8 0.00037303 -1.7476e-05 220.04
Cu / EAM / 32,000 V100 gpu 1 0.00037241 -1.4973e-05 220.04
Cu / EAM / 32,000 V100 gpu 8 0.00037241 -1.4973e-05 220.04
Cu / EAM / 32,000 V100 kokkos 1 0.00037303 -1.7476e-05 220.04
Cu / EAM / 32,000 V100 kokkos 8 0.00037303 -1.7476e-05 220.04
Si / Tersoff / 4,096 CPU56核 omp 0 0.0015278 -1.8905e-05 254.30
Si / Tersoff / 4,096 P100 gpu 1 0.0014672 -1.8967e-05 254.30
Si / Tersoff / 4,096 P100 gpu 8 0.0014672 -1.8967e-05 254.30
Si / Tersoff / 4,096 P100 kokkos 1 0.0015278 -1.8905e-05 254.30
Si / Tersoff / 4,096 P100 kokkos 8 0.0015278 -1.8905e-05 254.30
Si / Tersoff / 4,096 V100 gpu 1 0.0014672 -1.8967e-05 254.30
Si / Tersoff / 4,096 V100 gpu 8 0.0014672 -1.8967e-05 254.30
Si / Tersoff / 4,096 V100 kokkos 1 0.0015278 -1.8905e-05 254.30
Si / Tersoff / 4,096 V100 kokkos 8 0.0015278 -1.8905e-05 254.30
Si / Tersoff / 32,768 CPU56核 omp 0 0.0012436 -2.3607e-05 223.58
Si / Tersoff / 32,768 P100 gpu 1 0.0012875 -1.9902e-05 223.58
Si / Tersoff / 32,768 P100 gpu 8 0.0012875 -1.9902e-05 223.58
Si / Tersoff / 32,768 P100 kokkos 1 0.0012436 -2.3607e-05 223.58
Si / Tersoff / 32,768 P100 kokkos 8 0.0012436 -2.3607e-05 223.58
Si / Tersoff / 32,768 V100 gpu 1 0.0012875 -1.9902e-05 223.58
Si / Tersoff / 32,768 V100 gpu 8 0.0012875 -1.9902e-05 223.58
Si / Tersoff / 32,768 V100 kokkos 1 0.0012436 -2.3607e-05 223.58
Si / Tersoff / 32,768 V100 kokkos 8 0.0012436 -2.3607e-05 223.58
SPC/E 水 / PPPM / 4,500 CPU56核 omp 0 0.0081857 5.3186e-05 298.07
SPC/E 水 / PPPM / 4,500 P100 gpu 1 0.0092956 -0.0003048 297.56
SPC/E 水 / PPPM / 4,500 P100 gpu 8 0.0069853 7.8672e-05 297.10
SPC/E 水 / PPPM / 4,500 P100 kokkos 1 0.0067399 -9.909e-05 297.41
SPC/E 水 / PPPM / 4,500 P100 kokkos 8 0.0099574 -0.00014299 297.11
SPC/E 水 / PPPM / 4,500 V100 gpu 1 0.0088658 -0.00024383 296.69
SPC/E 水 / PPPM / 4,500 V100 gpu 8 0.010261 -6.7201e-05 297.89
SPC/E 水 / PPPM / 4,500 V100 kokkos 1 0.0077766 -0.00011654 298.38
SPC/E 水 / PPPM / 4,500 V100 kokkos 8 0.0085469 -0.00015743 297.46
SPC/E 水 / PPPM / 36,000 CPU56核 omp 0 0.0057951 -0.00032678 298.93
SPC/E 水 / PPPM / 36,000 P100 gpu 1 0.0072937 -0.00027186 298.49
SPC/E 水 / PPPM / 36,000 P100 gpu 8 0.0047469 -0.00029771 298.49
SPC/E 水 / PPPM / 36,000 P100 kokkos 1 0.0044238 -0.00016873 298.76
SPC/E 水 / PPPM / 36,000 P100 kokkos 8 0.0053 -0.00019113 298.38
SPC/E 水 / PPPM / 36,000 V100 gpu 1 0.0041507 -0.00015447 298.26
SPC/E 水 / PPPM / 36,000 V100 gpu 8 0.0058776 -0.00030962 298.89
SPC/E 水 / PPPM / 36,000 V100 kokkos 1 0.006835 -0.00028889 298.66
SPC/E 水 / PPPM / 36,000 V100 kokkos 8 0.0049806 -0.00019092 299.08

相同初态的短时NVE能量变化,零点各自取正式段初始能量

相同初态的短时NVE能量变化,零点各自取正式段初始能量

本次有限时间观察如下,比较的是各自相对初始能量的最大偏离,并非CPU/GPU最终构型能量差。

  • Cu / EAM、4,000原子:CPU最大偏离0.00053273 meV/atom,GPU各有效配置为0.00052376~0.00053273 meV/atom。
  • Cu / EAM、32,000原子:CPU最大偏离0.00037303 meV/atom,GPU各有效配置为0.00037241~0.00037303 meV/atom。
  • Si / Tersoff、4,096原子:CPU最大偏离0.0015278 meV/atom,GPU各有效配置为0.0014672~0.0015278 meV/atom。
  • Si / Tersoff、32,768原子:CPU最大偏离0.0012436 meV/atom,GPU各有效配置为0.0012436~0.0012875 meV/atom。
  • SPC/E 水 / PPPM、4,500原子:CPU最大偏离0.0081857 meV/atom,GPU各有效配置为0.0067399~0.010261 meV/atom。
  • SPC/E 水 / PPPM、36,000原子:CPU最大偏离0.0057951 meV/atom,GPU各有效配置为0.0041507~0.0072937 meV/atom。

NVE后短时全原子径向分布;各平台沿用相同邻居与排除规则

NVE后短时全原子径向分布;各平台沿用相同邻居与排除规则

该径向分布是全原子定义,水的结果不等于专门的O—O配对RDF,分子内配对还受到neighbor与special_bonds排除规则影响。这里只用相同定义核对实现及有限时长波动;生产研究需要选择正确的原子对、配对排除、采样窗口、误差估计和收敛标准。

能量漂移由势函数光滑性、时间步、约束、邻居更新、长程求和精度及浮点实现共同决定,应先与相同设置的CPU参考比较。平均温度也受准备态、固定晶胞与有限时长影响;本轮不将这些短样本当作热力学参数或扩散系数的可靠预测。

精度边界与未通过记录#

水体系初次固定32³基础网格的估计相对力误差约1.8e-4,未达到原定1e-4,因此保留旧记录但排除正式主比较。改用每基础盒48³网格、order5和gewald0.3后,重新核验所有水的静态对照。不是通过放宽验收阈值获得通过;准备态的生成与正式力计算设置分别归档。

大规模性能任务比较能量和分层抽样原子力;两档小规模准确性对照则比较全部原子。没有将大体系的抽样最大误差冒充全体系最大误差。初态通过也不等于任意长期轨迹或所有势函数都已验收。

本轮完成54次NVE尝试,其中54次通过启动、初态数值与完整步数检查;能量漂移另按上文实际数值讨论,没有另设事后放宽的“漂移通过”标签。

静态对照CSV · 补充诊断CSV · NVE统计 · 性能与核时。

需要根据你的体系选择资源?联系讨论计算需求。实际可用软件与权限,以当前账户和运行环境为准。