GPUMDkit 目录清理与运行进度
用独立目录演示原生清理的取消、精确保留与确认,并读取真实MD和NEP输出估算进度。
阅读本篇目录
下载输入、实际结果和绘图资料包。解压后进入资料包目录,inputs 是可修改输入,reference 是鸢算科技集群的参考结果。脚本每次在 work 下新建目录,结果位置写入 LAST-RUN.txt。计算请放在已分配的资源内执行。
先在教学副本里熟悉辅助工具#
本篇有两条独立流程:整理计算目录,以及读取 GPUMD/NEP 已输出的数据估算进度。可自动运行下载包中的演示:
module purge
module load gpumdkit/1.5.8
bash run.sh utilities
脚本的清理部分只操作本次新建的标记文件目录;进度部分将已经结束的真实教学输出按原顺序追加到副本,演示表格刷新,不重新启动 MD 或训练。回放中的速度与剩余时间不是实际计算性能。
1. 理解清理前保留哪些文件#
原生入口:
gpumdkit.sh -clean
命令针对 当前目录。先用 pwd、ls -la 确认位置,并在自己的副本里操作。其默认保留清单包括本例的 run.in、nep.in、model.xyz、nep.txt、train.xyz、test.xyz、job.sh;不要把默认清单当成所有重要结果都会自动保留。
下载包演示还放入 keep.txt、keep.txt.extra、scratch.log 三个候选文件,以及一个子目录。
2. 分别试取消、指定保留和确认#
取消:在提示处输入 n,本次候选文件保留。
指定额外保留:输入 keep.txt。本次 keep.txt 保留,keep.txt.extra 与 scratch.log 删除。保留按文件名匹配,不能把 keep.txt 理解成保留所有含此字符串的名字。
确认:输入 y,删除本次候选文件;本例默认输入和子目录保留。

不需要在自己的正式计算目录试错。查看包内已执行结果:
cat LAST-RUN.txt
进入该目录后,各分支的 utilities/clean-*/CLEAN-RESULT.json 给出清理前后文件哈希。这里只验证所列文件的规则,不承诺未知文件一定保留。
3. 查看 GPUMD 进度估计#
在含 run.in 与 thermo.out 的计算目录中:
gpumdkit.sh -time gpumd
退出用 Ctrl+C。教学输入在包内:
mkdir my-md-progress
cp inputs/md/run.in inputs/md/thermo.out my-md-progress/
cd my-md-progress
gpumdkit.sh -time gpumd
该工具根据输入步数和已有输出行数估算,不是调度器的运行状态。比如本例有 30000 步预热与 100000 步后续过程,而可见输出主要对应后一个阶段:已经结束的任务也可能显示约 76.9%。应结合原始程序结束信息与 squeue/sacct 判断任务是否完成。
输出间隔、预热是否写出、多个 run 段和文件修改时间都会影响估计。不要据此报告 GPU 性能或认定任务尚未结束。
4. 查看 NEP 训练进度#
在含 nep.in、loss.out 的目录中:
gpumdkit.sh -time nep
包内可以用同样方式准备:
mkdir my-nep-progress
cp inputs/nep/nep.in inputs/nep/loss.out my-nep-progress/
cd my-nep-progress
gpumdkit.sh -time nep
已经结束的文件不再追加时,表格会等待新记录。generation 给出目标代数,loss.out 按其输出间隔记录。进度估计与模型是否收敛是两件事:还应看训练/测试误差、异常结构和目标应用的验证。
5. 环境查询入口#
gpumdkit.sh -h
gpumdkit.sh -doctor
gpumdkit.sh -skill
分别用于查命令、查当前依赖、定位随软件提供的技能参考。缺少某个可选依赖不意味着整个工具不可用,应按具体功能处理。集群公共版本由模块统一维护,用户选择所需模块即可。