在线安装
对于 龙讯超算 云(Mcloud) 用户,已做预装,加载即用
在线安装需要您分别编译安装 MatPL 和 lammps 接口。在线安装依赖intel 编译器、CUDA-11.8工具包、gcc编译器以及 Python 环境。对于 intel/2020编译套件,使用了它的 ifort 和 icc 编译器(19.1.3)、mpi(2019)、mkl库(2020),如果单独加载,请确保版本不低于它们。对于 Python 环境,要求 python >= 3.11,torch >= 2.2.0+cu118。
为了编译和运行 MatPL-2025.3,您需要下载源码、安装conda 环境,并在 conda 环境中安装 MatPL-2025.3 依赖的Python环境,之后编译源码。
MatPL 和 lammps-MatPL 提供了纯 CPU 版本。源码相同,GPU 版本除了对 CPU 环境的依赖外,还需要相应的GPU环境(CUDA)。
MatPL 编译安装
1. 下载源码
我们提供了在线拉取代码和下载离线包两种方式编译。
- 通过 github 或 gitee 在线拉取 MatPL 仓库代码
git clone https://github.com/LonxunQuantum/MatPL.git MatPL-2025.3
或
git clone https://gitee.com/pfsuo/MatPL.git MatPL-2025.3
- 或下载 release 离线源码包,您可以直接浏览器输入下面的地址下载,或者加前缀 wget 下载:
wget https://github.com/LonxunQuantum/MatPL/archive/refs/tags/MatPL-2025.3.zip
或
wget https://gitee.com/pfsuo/MatPL/repository/archive/2025.3
下载 release 离线源码包后,通过 unzip 命令解压。
# 解压后您将得到一个名称为 MatPL-2025.3 的源码目录
unzip 2025.3.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/
step2. 创建Python虚拟环境
conda 安装完成后,创建虚拟环境,环境中需指定安装 python3.11 解释器,其他版本可能会出现依赖冲突或语法不支持等问题,之后的编译工作均在该虚拟环境中进行
conda create -n matpl-2025.3 python=3.11 setuptools=68.0.0
# python 版本我们建议3.11,更高级别的 python 可以在编译时存在一些错误,我们还未兼容。这里需要指定setuptools版本低于75.0.0,避免 numpy 和 fortran 做数据格式转换时的错误。
虚拟环境安装完成后激活该环境
conda activate matpl-2025.3
step3. 安装依赖包
接下来安装 MATPL 所需的第三方依赖包,我们已经把所有依赖的第三方包写在requirement.txt中,只需要在该文件所在目录下执行 pip 命令即可完成所有的依赖包安装。操作过程如下。该步骤会安装pytorch等python环境较耗时,请您耐心等待。
-
matpl-2025.3/requirement.txt 是 MatPL GPU 版本的 python 环境
-
matpl-2025.3/requirements_cpu.txt 是 MatPL CPU 版本的 python 环境
# 第一步 激活conda 环境
conda activate matpl-2025.3
# 第二步 进入源码根目录
# 在线下载的源码进入 MatPL-2025.3 目录
cd MatPL-2025.3
# 对于 GPU 版本,请执行
pip install -r requirements.txt
# 对于 CPU 版本,请执行
pip install -r requirements_cpu.txt
3. 编译安装
step1. 检查编译环境
GPU 版本
进入 requirement.txt 的同级目录 src 目录下。
对于 GPU 版本,
首先检查 cuda/11.8,intel/2020,gcc8.n是否加载;检查 conda 虚拟环境是否加载。对于 intel/2020编译套件,使用了它的 ifort 和 icc 编译器(19.1.3)、mpi(2019)、mkl库(2020),如果单独加载,请确保版本不低于它们。由于大部分的编译不成功是由编译器版本问题造成的,我们提供了编译环境检测的脚本 check_env.sh ,位于 '/src/check/check_env.sh' 您可以执行该脚本来检查编译环境已经完成准备。
cd src
sh ./check/check_env.sh
执行后,将输出您的编译环境信息,一个正确的环境如下所示。
========================================
Environment Check Starting
========================================
=== Checking ifort compiler and MKL library ===
✓ ifort version: 19.1 (>= 19.1)
✓ MKL library is installed
=== Checking GCC version ===
✓ GCC version: 8 (>= 8.0)
=== Checking PyTorch installation ===
✓ PyTorch is installed
=== Checking PyTorch version ===
✓ PyTorch version: 2.2.0+cu118 (>= 2.0)
=== Checking PyTorch CUDA support ===
✓ PyTorch is compiled with CUDA 11.8
=== Checking CUDA version ===
✓ CUDA version: 11.8.89 (>= 11.8)
=== Checking nvcc availability ===
✓ nvcc command exists
========================================
Environment Summary
========================================
✓ Environment check completed. All requirements are satisfied.
========================================
第1行输出了 ifort 编译器要求的版本不低于19.1,检测到当前的版本是19.1,满足要求;
第2行查找 MKL 库是否存在,检测到已安装,满足要求;
第3行输出了 GCC 要求的版本 8.n, 检测到当前的GCC版本是8,满足要求;
第4行检查 python 环境是否已经安装 pytorch,检测到已安装,满足要求;
第5行检查 pytroch 版本是否为2.0 以上,检测到当前版本是2.2,满足要求;
第6行检查 pytroch 版本是否包含 CUDA 支持,检测到包含,满足要求;
第7行检查 CUDA 版本是否不低于11.8,检测到当前的版本是 11.8.89,满足要求;
第8行检查 nvcc 编译器是否存在,检测到存在,满足要求。
CPU 版本
对于 CPU 版本,不需要 CUDA 支持,检测脚本为 check_env_cpu.sh,位于 '/src/check/check_env_cpu.sh'。命令执行后会列出需要的编译器版本以及当前检测到的版本,如下是一个正确的环境配置检查后的结果:
========================================
CPU Environment Check Starting
========================================
=== Checking ifort compiler and MKL library ===
✓ ifort version: 19.1 (>= 19.1)
✓ MKL library is installed
=== Checking GCC version ===
✓ GCC version: 8 (>= 8.0)
=== Checking PyTorch installation ===
✓ PyTorch is installed
=== Checking PyTorch version ===
✓ PyTorch version: 2.2.0+cu118 (>= 2.0)
========================================
Environment Summary
========================================
✓ Environment check completed. All requirements are satisfied.
========================================
step2. 编译代码
如果您的环境满足上述检测,接下来进行代码编译。 执行如下命令开始编译:
sh clean.sh
sh build.sh [-jN] [-m nn]
-
-jN 这里N为并行编译的核数,例如 sh build.sh -j4 将采用4核编译。默认采用单核编译,即 bash build.sh
-
-m nn 指定后将 fortran 代码也纳入编译(需要intel编译器支持),用于 linear 和 NN 模型。
默认不编译 fortran 代码。
如果您在编译过程中出错,请在MATPL 常见安装错误总结 中查询。
如果仍未解决您的问题,请将您的机器环境信息、编译错误日志以及您执行的编译操作过程描述 发送到邮箱 matpl@pwmat.com、wuxingxing@pwmat.com 或 support@pwmat.com,我们将及时联系您处理。
编译完成后,最后输出如下信息:
=================================
MatPL has been successfully installed. Please load the MatPL environment variables before use.
You can load the environment variables by running (recommended):
source /the/path/of/MatPL-2025.3/env.sh
Or by executing the following commands:
export PYTHONPATH=/the/path/of/MatPL-2025.3:$PYTHONPATH
export PATH=/the/path/of/MatPL-2025.3/src/bin:$PATH
==================================
编译完成后,将在代码的根目录下生成一个env.sh文件,包含 MatPL 的环境变量,执行以下命令即可完成加载
source /the/path/of/MatPL-2025.3/env.sh
也可以通过如下命令加载
export PYTHONPATH=/the/path/of/MatPL-2025.3:$PYTHONPATH
export PATH=/the/path/of/MatPL-2025.3/src/bin:$PATH
4. 加载使用
使用 MatPL 前需要加载它的依赖环境,加载 python 环境、cuda、MatPL 环境变量(CPU版本不需要加载CUDA)。
conda activate matpl-2025.3
module load cuda/11.8-share
source /the/path/of/MatPL-2025.3/env.sh
之后即可使用 MatPL 命令开始训练,使用教程请参考 教学案例