Install and load
PWMLFF
和 Lammps
分子动力学接口需要通过源码编译安装,我们提供了离线安装、在线安装两种方式。
对于 龙讯超算云(Mcloud
) 用户,我们已经做了预装,只需要加载即可使用。
Mcloud 用户加载
加载 PWMLFF
龙讯超算云(Mcloud
)
已有配置好的 conda 环境和 PWMLFF 软件包,避免自己安装 anaconda, cudatoolkit, pytorch 等极度耗时的过程,使用 PWMLFF
请加载以下环境变量即可:
# 加载conda 环境
source /share/app/anaconda3/etc/profile.d/conda.sh
module load conda/3-2020.07
conda deactivate
conda activate PWMLFF
module load pwmlff/2024.5
加载 lammps 接口
Mcloud 已经为用户安装PWMLFF-2024.5对应的lammps接口,使用如下命令加载即可。
module load lammps4pwmlff/2024.5
mpirun -np 4 lmp_mpi_gpu -in in.lammps
# 如果您使用cpu version
# mpirun -np 1 lmp_mpi -in in.lammps
该 lammps 接口已经预装了下列功能:
KSPACE
、 MANYBODY
、 REAXFF
、 MOLECULE
、 QEQ
、 REPLICA
、 RIGID
、 MEAM
、 MC
、 PWMLFF
lammps4pwmlff/2024.5 接口用于 DP 模型和 NEP 模型的 MD,并支持多GPU卡加速。
对于 Linear 和 NN 模型的lammps 接口,我们提供了 cpu 版本的接口,请加载
lammps4pwmlff/0.1.0
离线安装
PWMLFF 离线安装包集成了 PWMLFF 和 Lammps 接口。 包含 Fortran
、Python (Pytorch2.0)
、 C++
和 C++ CUDA
加速算子,需要 Python 环境
、gcc 编译器
、intel编译器套件
(包括ifort
、icc
编译器、mkl
和mpi
库,以及 nvidia GPU
硬件支持。
由于 conda 环境配置较为耗时,且部分用户设备无法联网。我们在离线安装包中配置好了conda 环境,用户只需要下载离线包,安装后即可使用。
1. 下载离线安装包
请访问百度网盘下载,链接如果失效请邮件联系 wuxingxing@pwmat.com
或support@pwmat.com
:
👉离线安装包下载 pwmlff-2024.5.sh.tar.gz
2. 解压安装包
tar -xzvf pwmlff.2024.5.sh.tar.gz
解压后得到如下文件:
pwmlff-2024.5.sh
, check_offenv.sh
3. 检查编译器版本
大部分的安装失败问题都源于编译器的版本不正确,我们提供了检查编译器版本的脚本check_offenv.sh
供用户检查环境。
我们推荐使用 intel2020
版本,cuda/11.8
,gcc 版本 8.n
。
这是因为,PWMLFF中使用的pytorch
版本为2.0
以上,必须使用 cuda/11.8
或更高版本。对于 intel/2020
编译套件,使用了它的 ifort
和 icc
编译器(19.1.3
)、mpi(2019)
、mkl库(2020)
,如果单独加载,请确保版本不低于它们。
离线安装包解压后会得到安装包pwmlff-2024.5.sh
以及 check_offenv.sh
,执行如下命令
sh check_offenv.sh
命令执行后会列出需要的编译器版本以及当前检测到的版本,如下是一个正确的环境配置检查结果:
ifort version is no less than 19.1, current version is 19.1.
MKL library is installed.
GCC version is exactly 8, current version is 8.
CUDA version is 11.8 or higher, current version is 11.8.89.
nvcc command exists.
第1行输出了 ifort 编译器要求的版本不低于19.1,检测到当前的版本是19.1,满足要求;
第2行查找 MKF 库是否存在,检测到已安装,满足要求;
第3行输出了 GCC 要求的版本 8.n, 检测到当前的GCC版本是8,满足要求;
第4行检查 CUDA 版本是否不低于11.8,检测到当前的版本是 11.8.89,满足要求;
第5行检查 nvcc 编译器是否存在,检测到存在,满足要求。
4. 执行安装命令
环境检查完毕后,执行如下命令即可完成安装
sh pwmlff-2024.5.sh
安装窗口最后出现如下日志输出,则安装成功。
mpicxx -g -O3 -std=c++17 -L/the/path/to/PWMLFF-2024.5/pwmlff-2024.5/lib -lpython3.11 -static-libstdc++ -static-libgcc -L/the/path/to/PWMLFF-2024.5/pwmlff-2024.5/lib/python3.11/site-packages/torch/lib/ -ltorch -lc10 -ltorch_cpu -L/the/path/to/PWMLFF-2024.5/lammps-2024.5/src/Obj_mpi/.. -lnep_gpu -L/share/app/cuda/cuda-11.8/lib64 -lcudart -L/the/path/to/PWMLFF-2024.5/PWMLFF/src/op/build/lib -lCalcOps_bind_cpu main.o -L. -llammps_mpi -ldl -o ../lmp_mpi
size ../lmp_mpi
text data bss dec hex filename
11935009 37912 22640 11995561 b709a9 ../lmp_mpi
make[1]: Leaving directory `/the/path/to/PWMLFF-2024.5/lammps-2024.5/src/Obj_mpi'
CUDA support enabled...
make[1]: Entering directory `/the/path/to/PWMLFF-2024.5/lammps-2024.5/src/Obj_mpi'
mpicxx -g -O3 -std=c++17 -L/the/path/to/PWMLFF-2024.5/pwmlff-2024.5/lib -lpython3.11 -static-libstdc++ -static-libgcc -L/the/path/to/PWMLFF-2024.5/pwmlff-2024.5/lib/python3.11/site-packages/torch/lib/ -ltorch -lc10 -ltorch_cpu -L/the/path/to/PWMLFF-2024.5/lammps-2024.5/src/Obj_mpi/.. -lnep_gpu -L/share/app/cuda/cuda-11.8/lib64 -lcudart -L/the/path/to/PWMLFF-2024.5/PWMLFF/src/op/build/lib -lCalcOps_bind -L/share/app/cuda/cuda-11.8/lib64 -lcudart main.o -L. -llammps_mpi -ldl -o ../lmp_mpi_gpu
size ../lmp_mpi_gpu
text data bss dec hex filename
11936348 37912 22640 11996900 b70ee4 ../lmp_mpi_gpu
make[1]: Leaving directory `/the/path/to/PWMLFF-2024.5/lammps-2024.5/src/Obj_mpi'
Added Lammps PATH to .bashrc
Added Lammps LD_LIBRARY_PATH to .bashrc
Added torch lib LD_LIBRARY_PATH to .bashrc
Installation completed successfully!
安装完成之后,会默认将 PWMLFF-2024.5 环境变量(如下所示)写入 .bashrc 中,如果不需要,请您手动到.bashrc中删除即可。删除后,需要您在每次运行 PWMLFF 前手动导入该环境变量。
# PWMLFF 环境变量
export PATH=/the/path/to/PWMLFF-2024.5/PWMLFF/src/bin:$PATH
export PYTHONPATH=/the/path/to/PWMLFF-2024.5/PWMLFF/src/:$PYTHONPATH
# lammps 接口环境变量
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$(python3 -c "import torch; print(torch.__path__[0])")/lib:$(dirname $(dirname $(which python3)))/lib:$(dirname $(dirname $(which PWMLFF)))/op/build/lib
export PATH=/the/path/to/PWMLFF-2024.5/lammps-2024.5/src:$PATH
export LD_LIBRARY_PATH=/the/path/to/PWMLFF-2024.5/lammps-2024.5/src:$LD_LIBRARY_PATH
这里 /the/path/to/
为您自己的安装目录。
5. 加载使用
离线包安装成功后,在使用时需要首先激活已安装的conda环境,以及编译时使用的 intel/2020 和 CUDA。之后,如果需要使用 PWMLFF 训练,则加载 PWMLFF 环境变量;如果需要使用 Lammps 接口,则在加载 PWMLFF 环境变量之后继续加载 Lammps 接口环境变量。
step1. 激活已安装的conda环境
# 这里环境地址需要完整的路径,例如/data/home/wuxingxing/pack/PWMLFF-2024.5/pwmlff/bin/activate
source /the/path/PWMLFF-2024.5/pwmlff-2024.5/bin/activate
step2. 加载您在编译时使用的 intel编译包以及CUDA
# 对于 GPU 版本:
module load intel/2020 cuda/11.8-share
step3. 加载 PWMLFF 环境变量
如果您的 ./bashrc (离线安装后会自动写入) 不包含下面的环境变量,请导入该环境变量:
export PATH=/the/path/PWMLFF_cpu-2024.5/PWMLFF/src/bin:$PATH
export PYTHONPATH=/the/path/PWMLFF_cpu-2024.5/PWMLFF/src/:$PYTHONPATH
step4. 加载 Lammps 接口
如果您的 ./bashrc (离线安装后会自动写入) 不包含下面的环境变量,请导入该环境变量:
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$(python3 -c "import torch; print(torch.__path__[0])")/lib:$(dirname $(dirname $(which python3)))/lib:$(dirname $(dirname $(which PWMLFF)))/op/build/lib
# 对于 GPU 版本 lammps 接口
export PATH=/the/path/PWMLFF-2024.5/lammps-2024.5/src:$PATH
export LD_LIBRARY_PATH=/the/path/PWMLFF-2024.5/lammps-2024.5/src:$LD_LIBRARY_PATH
6. 退出 conda 虚拟环境
您可以通过如下命令退出虚拟环境,也可以直接关闭当前 shell 窗口
# 对于 GPU 版本:
source /the/path/PWMLFF-2024.5/pwmlff-2024.5/bin/deactivate
在线安装
在线安装需要您分别编译安装 PWMLFF 和 lammps 接口。
为了编译和运行PWMLFF-2024.5,您需要下载源码、安装conda 环境,并在 conda 环境中安装 PWMLFF-2024.5 依赖的安装包。
Lammps 接口的编译安装要求用户已经成功安装 PWMLFF。
过程如下所示。
PWMLFF 编译安装
1. 下载源码
我们提供了在线拉取代码和下载离线包两种方式编译。
- 通过 github 或 gitee 在线拉取PWMLFF仓库代码
git clone https://github.com/LonxunQuantum/PWMLFF.git PWMLFF-2024.5
或
git clone https://gitee.com/pfsuo/PWMLFF.git PWMLFF-2024.5
- 或下载 release 离线源码包,您可以直接浏览器输入下面的地址下载,或者加前缀 wget 下载:
wget https://github.com/LonxunQuantum/PWMLFF/archive/refs/tags/2024.5.zip
或
wget https://gitee.com/pfsuo/PWMLFF/repository/archive/2024.5
下载releas离线源码包后,通过 unzip 命令解压。
# 解压后您将得到一个名称为 PWMLFF-2024.5 的源码目录
unzip 2024.5.zip
2. 创建 conda 虚拟环境
step1. 安装 Anaconda3(已安装请跳过)
这里要求您已经装了 Anaconda3 ,然后创建一个新 python 虚拟环境(搜索引擎搜索 Linux 安装 anaconda3 教程)。
您可以使用该命令直接下载 Anaconda3 到服务器目录中:
curl https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/Anaconda3-2023.07-1-Linux-x86_64.sh -o Anaconda3-2023.07-1-Linux-x86_64.sh
# 如果下载失败,请在浏览器输入下面的下载地址,下载后上传的服务器
# https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/Anaconda3-2023.07-1-Linux-x86_64.sh
# 您也可以访问网页下载更多版本 https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/