Lammps-贾维斯工具自动化构建与跨平台安装
发表于 2025/12/19
0
1. 手动编译安装Lammps
1.1 环境准备
module use xxx/modulefiles
module load bisheng/compiler4.2.0/bishengmodule bisheng/hmpi25.0.0/hmpi bisheng/kml25.0.0/kml
1.2 代码准备
wget https://github.com/lammps/lammps/archive/stable_29Aug2024_update1.tar.gz
tar xvf stable_29Aug2024_update1.tar.gz
1.3 软件编译
1.3.1 基础模块
cd lammps-stable_29Aug2024_update1/src
make yes-kspace yes-molecule yes-manybody yes-rigid yes-openmp yes-mc yes-misc #模块加载
make mpi -j
1.3.2 机器学习相关模块
1.3.2.1 ML-POD
cd lammps-stable_29Aug2024_update1/lib/linalg
python Install.py -m mpi
cd lammps-stable_29Aug2024_update1/lib/mlpod
python Install.py -m mpi
cd lammps-stable_29Aug2024_update1/src
make yes-ml-pod
make mpi -j
1.3.2.2 ML-UF3,ML-SNAP,ML-RANN,ML-IAP
cd lammps-stable_29Aug2024_update1/src
make yes-ml-uf3 yes-ml-snap yes-ml-rann yes-ml-iap
make mpi -j
1.3.2.3 ML-PACE
cd lammps-stable_29Aug2024_update1/lib/pace
wget https://github.com/ICAMS/lammps-user-pace/archive/refs/tags/v.2023.11.25.fix2.tar.gz
tar xvf v.2023.11.25.fix2.tar.gz
python Install.py -b -l lammps-user-pace-v.2023.11.25.fix2 #需-l使用本地包,脚本中默认包已被移除无法下载
make clean # 清理之前的编译结果(如果有)
make lib # 重新编译生成PACE静态库
cd lammps-stable_29Aug2024_update1/src
make yes-ml-pace # 启用ML-PACE包
#编译提示无法找到mliap_descriptor_ace.h文件或链接找不到相关定义需拷贝以下两个文件到src目录
cp ./ML-IAP/mliap_descriptor_ace.h ./
cp ./ML-IAP/mliap_descriptor_ace.cpp ./
make mpi -j LMP_INC="-DMLIAP_ACE" #不添加此选项跑测试用例会报错
1.3.2.4 ML-HDNNP
cd lammps-stable_29Aug2024_update1/lib/hdnnp
python Install.py -b
cd n2p2-2.2.0/src #修改目录下makefile.gnu文件:17行添加-fPIC
cd libnnp
make clean
make -j
cd ../libnnpif
make clean
make -j
cd lammps-stable_29Aug2024_update1/src
make yes-ml-hdnnp
make mpi -j
1.4 问题记录
mpirun --allow-run-as-root -np 1 -x OMP_NUM_THREADS=1 -x PATH -x LD_LIBRARY_PATH -x UCX_TLS=sm lammps-stable_29Aug2024_update1/src/lmp_mpi -in in.mliap.ace.compute执行失败,报错ERROR:Must enable ML_PACE package and -DMLIAP_ACE setting to use 'ace' descriptor
解决方案:
cd lammps-stable_29Aug2024_update1/src
make mpi -j LMP_INC="-DMLIAP_ACE"
直接编译会报错,需要拷贝两个文件到源码目录重新编译即可
cp ./ML-IAP/mliap_descriptor_ace.h ./
cp ./ML-IAP/mliap_descriptor_ace.cpp ./
make mpi -j LMP_INC="-DMLIAP_ACE"
2. Javis脚本安装Lammps
1)下载贾维斯工具并安装基础依赖
yum -y install git time zlib zlib-devel gcc gcc-c++ environment-modules python python3 python3-devel python3-libs python3-pip cmake make numactl numactl-devel numactl-libs rpmdevtools wget libtirpc libtirpc-devel unzip flex tar patch glibc-devel rpcbind csh perl-XML-LibXML xorg-x11-xauth curl curl-devel libcurl-devel
git clone https://gitee.com/openeuler/hpcrunner.git

2)初始化环境变量,加载Lammps安装模板
cd hpcrunner
source init.sh
./jarvis -use templates/lammps/2024.8.29/data.lammps.arm.cpu.config

3)下载Lammps 2024.8.29安装包以及相关依赖
./jarvis -d

4)安装Lammps 2024.8.29应用依赖
./jarvis -dp


5)编译Lammps 2024.8.29应用
./jarvis -b


6)运行Lammps应用测试算例
./jarvis -r




