Skip to content

v1.0.1

Choose a tag to compare

@aboys-cb aboys-cb released this 27 Jul 13:54
4c944c4

🚀 NEPAdapters v1.0.1

本版本集中修复计算约定和运行边界,并提升 Python CPU batch、CUDA batch API 与 LAMMPS nep/cpu 的吞吐。

⚡ 性能改进

  • CPU batch:复用 worker 与 scratch workspace,并支持多结构并行。32 原子 BCC Fe、NEP89 模型、32 核、2048 帧实测由 4109 提升至 16267 frame/s,加速 3.97×。
  • CUDA batch:恢复多结构 fast path;RTX 4090 上相对 fallback loop 加速 37.85–89.51×。该结果仅适用于 CUDA batch API。
  • LAMMPS CPU:复用邻居容量。Xeon Gold 6530、4000 原子、16 OpenMP 线程、单 MPI rank 实测由 2.77214 s 降至 2.55204 s,提升 8.62%。

🐛 修复与可靠性

  • 修正 ASE stress 的符号、Voigt 顺序和体积归一化,使其与 GPUMD virial 约定一致。
  • 增加 CPU/CUDA batch 输入与原子类型范围校验,并保留 CPU 原始 last-error。
  • 修复 CUDA 零长度 staging、邻居容量增长和 Kokkos 非单位 inner stride 索引问题。
  • 同一个 Python Model 的并发调用会安全串行化,避免共享 native workspace 数据竞争。
  • 修复 IntelLLVM cell-list 错误向量化,Intel icpx 构建保留验证过的 -fno-vectorize 配置。

📦 构建与发布

  • 新增 Linux CPU-only CI。
  • 仓库根目录 VERSION 成为 CMake、Python 包、运行时和 LAMMPS 的版本号单一来源。
  • 统一 macOS wheel 的 OpenMP runtime,并完善 wheel 内容和版本一致性检查。

⚠️ 升级提醒

  • 旧版本通过 ASE calculator 得到的 stress 建议重新核对或生成。
  • Python batch 仍要求全周期边界;小 batch 未达到并行阈值时,加速可能不明显。
  • CUDA batch 的高倍加速不代表 LAMMPS 路径获得相同提升。
python -m pip install --upgrade "nep-adapters[ase]==1.0.1"

Full Changelog: v1.0.0...v1.0.1