基础软件环境
Modules、Miniconda、编译器、CUDA、MPI、软件总索引及工具链的对应关系。
阅读本篇目录
各章节保留原指南中的版本、平台、操作示例与适用边界;章节日期不同,使用时按所列版本核对。全部软件分项
4. 基础软件环境#
4.1 Modules#
Modules 用于加载和切换软件运行环境。常用命令:
module overview # 软件名称和版本数量,简洁总览
module avail # 按软件分类列出全部版本
module avail vasp/ # 只查看 VASP 模块
module avail lammps/ # 只查看 LAMMPS 模块
module avail deepmd-kit/ # 只查看 DeePMD-kit 模块
module -d avail # 只查看各软件的默认版本
module list # 查看已加载模块
module help abacus/3.10.1-v100 # 查看指定模块说明
module load abacus/3.10.1-v100 # 加载指定版本
module unload abacus/3.10.1-v100 # 卸载指定版本
module purge # 卸载当前所有模块
分类只改变显示与检索目录,完整模块名和默认版本保持。例如 module load vasp/6.6.1-p100、module load deepmd-kit/3.0.1 和原来的Slurm脚本继续可用。新登录终端自动生效;已有终端无需退出正在使用的软件,可执行:
source /public/modulefiles/.site/init.sh
module avail
需要查看模块实际目录时使用 module -s system avail。这是Lmod标准分类显示,module avail仍列出全部版本,module overview用于简洁总览。
优先使用公共提交脚本中指定的环境。不同程序可能依赖不同 MPI,不能只替换二进制路径而沿用另一套 MPI。
无版本的VASP/LAMMPS/GROMACS入口默认CPU常规版,GPU应明确指定平台;DeePMD默认源码3.2.0。yskit、gpu-burn不加入公共入口。旧离线DeePMD3.2.0入口明确带-offline,既有后端冲突未变。本轮模块复验与修复记录不替代各软件原有科学验收。
4.2 Miniconda#
公共安装路径:/public/toolkit/miniconda3。现有环境位于其 envs 子目录。
source /public/toolkit/miniconda3/etc/profile.d/conda.sh
conda env list
conda activate deepmd-kit-3.2.0
conda list
conda deactivate
个人环境可以安装到自己的目录,例如:
conda create -p "$HOME/conda-envs/analysis" python=3.11
conda activate "$HOME/conda-envs/analysis"
pip install tqdm -i https://pypi.tuna.tsinghua.edu.cn/simple
此例仅用于个人环境,不用于修改公共 DeePMD 环境。Conda 下载源沿用账户已配置的镜像。
公共环境清单#
下表前缀均位于/public/toolkit/miniconda3/envs,Python版本来自当前包元数据。加载软件module或使用conda activate <环境名>选择环境;公共环境由管理员维护,个人安装使用独立目录。
| 环境名 | Python | 主要用途 |
|---|---|---|
boltztrap2-26.3.1 |
3.11.16 | BoltzTraP2插值/输运;NumPy固定2.3.5 |
deepmd-kit-2.2.11 |
3.11.16 | DeePMD-kit 2.2.11源码环境 |
deepmd-kit-3.0.0rc0 |
3.11.16 | DeePMD-kit 3.0.0rc0源码环境 |
deepmd-kit-3.0.1 |
3.11.16 | DeePMD-kit 3.0.1源码环境 |
deepmd-kit-3.1.3 |
3.11.16 | DeePMD-kit 3.1.3源码环境 |
deepmd-kit-3.2.0 |
3.12.14 | DeePMD-kit 3.2.0源码环境 |
dpgen |
3.12.14 | DP-GEN主控、DPDispatcher及数据处理 |
fourthorder |
3.11.16 | 四阶力常数sow/reap;NumPy1.26.4,官方v0.1 Python3附件+距离修复 |
gpumdkit-1.5.8 |
3.11.16 | GPUMDkit、NepTrain、calorine及结构分析 |
mace-0.3.16 |
3.11.16 | MACE训练/推理 |
moltemplate-2.22.5 |
3.11.16 | Moltemplate结构与力场建模 |
pfd-kit-0.10.13 |
3.12.14 | PFD-kit工作流 |
phonopy-2.43.6 |
3.11.16 | 旧命令兼容;NumPy1.26.4/spglib2.6.0,C/OpenMP |
phonopy-4.7.2 |
3.11.16 | 谐性声子/QHA;NumPy2.3.5,Rust/C两后端 |
phonopy-spectroscopy |
3.11.16 | IR/Raman/偏振光谱后处理;Phonopy2.43.6、NumPy1.26.4 |
qvasp-2.26 |
3.11.16 | qvasp Python扩展;NumPy1.26.4/SciPy1.13.1/Matplotlib3.9.4/MDAnalysis2.9.0 |
thirdorder-1.1.4 |
3.11.16 | 第三阶力常数sow/reap;NumPy1.26.4 |
tdep-25.03 |
3.11.16 | TDEP验证/后处理;NumPy1.26.4/xarray2024.11.0,独立环境 |
vaspberry-1.6.3 |
3.11.16 | WAVECAR拓扑/输运后处理;NumPy2.3.5、Matplotlib3.11.2 |
hefei-namd-2024.05.21 |
3.11.16 | NAMD后处理;NumPy1.26.4、SciPy1.13.1、Matplotlib3.11.2、ASE3.26.0 |
vaspkit |
3.6.13 | VASPKIT辅助Python环境,不是VASPKIT主二进制版本 |
基础环境当前为Conda26.7.1/Python3.14.7,科学程序使用上表各自固定环境。旧离线DeePMD前缀位于/public/software/deepmd-kit/3.2.0-cuda12.9,另见5.3节,不在此envs目录内。
4.3 编译器、CUDA 与 MPI#
| 工具 | 当前目录或版本 | 使用说明 |
|---|---|---|
| Intel oneAPI 2023.2 | /public/toolkit/oneapi/2023.2 |
按对应 CPU 软件脚本加载 |
| Intel oneAPI 2024.2 | /public/toolkit/oneapi/2024.2 |
按对应 CPU 软件脚本加载 |
| NVIDIA HPC SDK 25.3 | /public/toolkit/nvhpc/25.3 |
已交付 GPU VASP 模板使用此版本 |
| NVIDIA HPC SDK 26.9 | /public/toolkit/nvhpc/26.9 |
不作为本指南的已验收替代环境 |
| CUDA Toolkit 12.8 | /public/toolkit/cuda/12.8 |
随软件构建选择 |
| CUDA Toolkit 12.9 | /public/toolkit/cuda/12.9 |
随软件构建选择 |
| HPC-X | /public/toolkit/hpcx/2.50 |
包含原生 ompi5 及其他构建,按软件脚本选择 |
| Open MPI | /public/toolkit/openmpi |
模块 openmpi/5.0.10-cuda12.8 |
| CMake | 管理节点 /usr/bin/cmake,3.28.3 |
用于构建;其他节点以 cmake --version 为准 |
ABACUS GPU 环境使用 HPC-X 自带的多线程 UCX。DeePMD/LAMMPS、GROMACS、VASP 各自使用已匹配的运行环境,不能将这项设置不加区分地套给所有程序。
4.4 检查当前环境是否正确#
module list
command -v python
command -v mpirun
command -v nvcc
printf '%s\n' "${CONDA_PREFIX:-未激活Conda环境}"
这些命令用于确认当前终端的环境;批作业真正使用什么环境,应以提交脚本及其日志为准。比如登录终端的 python 来自 base 环境,不代表 DeePMD 模板也会使用 base,因为模板会自行激活对应环境。
遇到导入或动态库错误时,先核对脚本指定的版本。module purge 可以卸载模块,但不会自动清除所有手动 source、Conda 或自行设置的环境变量。不要通过反复追加不同版本的 LD_LIBRARY_PATH 来碰运气;使用新的登录终端,重新选择正确模板更容易定位问题。
公共 DeePMD 环境已按对应版本配置。用户自行执行 pip install --upgrade 可能改变 TF/PT、NumPy 或 CUDA 依赖;数据整理需要新包时优先使用个人环境,将转换后的数据交给训练环境读取。
4.5 NVIDIA 驱动#
| 节点 | 驱动版本 |
|---|---|
gcn001-8p100 |
580.173.02 |
gcn002-8p100 |
580.178.04 |
gcn001-8v100-16g |
580.173.02 |
gcn001-8v100-32g |
580.173.02 |
nvidia-smi 标题中的 CUDA 版本表示驱动支持能力,不代表当前软件实际使用的 CUDA Toolkit 版本。
4.6 如何阅读软件编译环境#
各软件章节下面的“编译方式与环境”说明当前交付程序实际如何构建,不是要求用户重新安装。编译器负责生成程序,MPI 负责进程通信,CUDA/NVHPC 提供 GPU 编译与运行支持,MKL/OpenBLAS/FFTW/ELPA 等提供数值计算能力。这几层的版本需要分别记录,不能只用一句“Intel 编译”或“支持 CUDA”概括。
| 常见名称 | 在本集群中的含义 |
|---|---|
| ifort / icc | Intel 经典 Fortran/C 编译器,主要用于 VASP 5.4.4 及配套库 |
| ifx / icx / icpx | Intel LLVM 系列 Fortran/C/C++ 编译器,主要用于新 CPU 构建 |
| mpiifort / mpiifx | Intel MPI 的 Fortran 编译包装器,底层分别调用 ifort/ifx |
| nvfortran / nvc / nvc++ | NVHPC 编译器;GPU VASP 使用 OpenACC 路径 |
| GCC / G++ / GFortran | GNU 编译器,ABACUS GPU、DeePMD、GROMACS GPU 等使用 |
| mpicc / mpicxx / mpif90 | MPI 包装器名称;仅凭命令名不能判断底层编译器和 MPI 来源 |
| MKL LP64 | MKL 的 32 位整数接口;不是将浮点数改成单精度 |
| AVX-512 / AVX2 | CPU 指令集目标;不等于 GPU 架构 |
| sm_60 / sm_70 | 分别对应 P100 / V100 GPU 设备代码目标 |
| OpenMP / OpenACC | 分别用于线程并行和加速器卸载的编程接口;软件可能同时使用 |
| mixed / double / single | 软件或特定组件的精度策略;不同软件不能直接类比 |
MPI 环境对照#
| 软件构建 | 使用的 MPI 来源 | 不可直接替代为 |
|---|---|---|
| 新编 CPU VASP、CPU ABACUS、CPU GROMACS 外部 MPI | 对应 oneAPI 的 Intel MPI | NVHPC 自带 Open MPI |
| 已交付 GPU VASP 25.3 构建 | NVHPC 25.3 的 HPC-X 2.22.1 / Open MPI 4.1.7rc1 | DeePMD 所用 HPC-X 2.50 |
| DeePMD 配套 LAMMPS / PLUMED | /public/toolkit/hpcx/2.50/ompi5 原装 MPI |
额外编译的 ompi5-nvhpc |
| GPU ABACUS | 同一 HPC-X 2.50 原装 MPI,配套多线程 UCX 环境 | 未匹配的普通 UCX 环境 |
| QE GPU 7.6 | NVHPC 25.3配套HPC-X 2.22.1,CUDA12.8 | Intel MPI、DeePMD HPC-X或其他Open MPI |
| GPU GROMACS 外部 MPI | /public/toolkit/openmpi/5.0.10-cuda12.8 |
Intel MPI 或 NVHPC MPI |
| GROMACS thread-MPI | 程序内部 thread-MPI | 外部 mpirun 并非此模板的启动方式 |
本页将完整构建记录、用户回传配置和二进制依赖检查区分说明。旧程序缺少原始编译日志时,写明能确认的运行环境,不反推未知的优化开关。下方配置片段用于解释已交付版本,不能单独替代完整构建脚本。
4.7 已安装软件总索引#
下表按2026-09-29现场核对的 /public/software、/public/toolkit、公共 module 和 Conda 包元数据整理。每款软件的版本、编译器、依赖、精度、平台、使用入口与验收范围见对应章节;一个软件有多种版本时,版本表逐行列出。目录存在不等于功能全部验收,旧部署与当前推荐部署分别说明。
| 软件 | 部署根目录 | 详细说明 |
|---|---|---|
| VASP(含VTST、optcell、sol、sol++、CP-VASP、Wannier、BEEF、Libxc分支) | /public/software/vasp |
版本与环境 |
| ABACUS | /public/software/abacus |
版本与环境 |
| GPAW | /public/software/gpaw |
版本与环境 |
| DeePMD-kit | /public/software/deepmd-kit |
版本与环境 |
| LAMMPS | /public/software/lammps |
版本与环境 |
| PLUMED | /public/software/plumed |
版本与环境 |
| DP-GEN | /public/toolkit/miniconda3/envs/dpgen |
版本与环境 |
| GROMACS | /public/software/gromacs |
版本与环境 |
| SPPARKS | /public/software/spparks |
版本与环境 |
| ATAT | /public/software/atat |
版本与环境 |
| CP2K | /public/software/cp2k |
版本与环境 |
| GPUMD、NEP、GNEP | /public/software/gpumd |
版本与环境 |
| Quantum ESPRESSO | /public/software/qe |
版本与环境 |
| PFD-kit | /public/software/pfd-kit |
版本与环境 |
| MACE | /public/software/mace |
版本与环境 |
| ShengBTE | /public/software/shengbte |
版本与环境 |
| thirdorder | /public/software/thirdorder |
版本与环境 |
| Fourthorder | /public/software/fourthorder |
版本与环境 |
| FourPhonon | /public/software/fourphonon |
版本与环境 |
| Phonopy | /public/software/phonopy |
版本与环境 |
| Phonopy-Spectroscopy | /public/software/phonopy-spectroscopy |
版本与环境 |
| TDEP | /public/software/tdep |
版本与环境 |
| xTB | /public/software/xtb |
版本与环境 |
| Gaussian 16 C.01(个人初始化) | ~/software/gaussian/16-C.01-avx/g16 |
初始化与资源 |
| ORCA | /public/software/orca |
版本与环境 |
| BoltzTraP2 / btp2 | /public/software/boltztrap2 |
版本与环境 |
| qvasp | /public/software/qvasp |
版本与环境 |
| phono3py | /public/software/phono3py |
版本与环境 |
| AMSET | /public/software/amset |
版本与环境 |
| CREST | /public/software/crest |
版本与环境 |
| ALAMODE | /public/software/alamode |
版本与环境 |
| hiPhive | /public/software/hiphive |
版本与环境 |
| Multiwfn nogui | /public/software/multiwfn_nogui |
版本与环境 |
| OVITO Python | /public/software/ovito |
版本与环境 |
| critic2 | /public/software/critic2 |
版本与环境 |
| Bader | /public/software/bader |
版本与环境 |
| ASE | /public/software/ase |
版本与环境 |
| pymatgen | /public/software/pymatgen |
版本与环境 |
| VASPKIT | /public/software/vaspkit |
版本与环境 |
| Wannier90 / postw90 | /public/software/wannier90 |
版本与环境 |
| LOBSTER | /public/software/lobster |
版本与环境 |
| WannierTools | /public/software/wanniertools |
版本与环境 |
| VASPBERRY | /public/software/vaspberry |
版本与环境 |
| Hefei-NAMD | /public/software/hefei-namd |
版本与环境 |
| gibbs2 | /public/software/gibbs2 |
版本与环境 |
| ATOMKIT | /public/software/atomkit |
版本与环境 |
| Atomsk | /public/software/atomsk |
版本与环境 |
| GPUMDkit | /public/software/gpumdkit |
版本与环境 |
| Moltemplate | /public/software/moltemplate |
版本与环境 |
| Packmol | /public/software/packmol |
版本与环境 |
| Codex CLI、AICC公共技能文件 | /public/software/codex |
版本与环境 |
| CC Switch | /public/software/cc-switch |
版本与环境 |
| herdr | /public/software/herdr |
版本与环境 |
| 基础工具或共享库 | 部署位置 | 说明 |
|---|---|---|
| oneAPI、NVHPC、CUDA、HPC-X、Open MPI、CMake | /public/toolkit,CMake为系统工具 |
工具链与MPI |
| Miniconda / Python 环境 | /public/toolkit/miniconda3 |
环境使用、公共Python包 |
| yskit | /public/toolkit/yskit |
脚本选择工具 |
| gpu-burn | /public/toolkit/gpu-burn |
GPU压力测试工具 |
| LibTorch | /public/toolkit/libtorch/libtorch-2.11.0+cu126 |
配套库 |
| Mihomo代理 | proxy/mihomo模块连接管理节点服务 |
开发与会话工具 |
应用自带的BLAS、FFTW、HDF5、ELPA、Libxc、spglib等库按对应软件构建记录管理,不作为可以任意替换的公共环境。完整公共Conda/Python包版本快照见已安装包清单,包括基础环境和旧离线DeePMD环境。该清单用于查询依赖,不表示每个依赖包都适合作为独立公共程序使用。
agent是维护记录,package是安装包/构建缓存,空的/public/software/dpgen不是程序入口。VASPKIT1.5.1已独立部署,旧默认1.3.5保留;NVHPC解压安装器、Open MPI源码等同样不重复算作安装版本。系统发行版包及用户私有环境不属于本公共应用清单。
安装包目录2026-10-11按/public/software/package/<软件>/<版本>/整理:源码/缓存在source,原构建与日志在build,通用库在dependencies,VASP原有补丁分类沿用。Gaussian个人初始化源包在/public/software/package/gaussian/16-C.01/G16-C01-AVX.tbJ,yskit已同步;软件使用入口和提交脚本路径保持。安装包、源码及记录均保留,旧记录的路径查迁移对照。
4.8 配套库与工具链选择#
| 组件 | 版本或部署 | 用途与加载方式 |
|---|---|---|
| LibTorch | 2.11.0+cu126 | 官方格式的C++头文件/库目录,build-version已核对;无独立公共module,不等于各DeePMD环境的PyTorch版本 |
| HPC-X原装MPI | /public/toolkit/hpcx/2.50/ompi5 |
module load hpcx/25.0现加载此原装Open MPI5.0.10rc2;DeePMD配套LAMMPS、GPU ABACUS仍按应用脚本设置 |
| HPC-X额外NVHPC构建 | /public/toolkit/hpcx/2.50/ompi5-nvhpc |
目录保留;hpcx/25.0不再加载此构建 |
| ORCA专用Open MPI | 4.1.8,GCC13.3.0 | openmpi/4.1.8-orca,由ORCA自动加载;内置PMIx/hwloc/libevent,CPU/Slurm,无HCOLL/UCX/CUDA |
| Open MPI | 5.0.10,CUDA12.8 | module load openmpi/5.0.10-cuda12.8;匹配通用GPU LAMMPS、GROMACS环境 |
| NVHPC | 25.3 | 公共模块入口nvhpc/25.3/nvhpc,另有nvhpc/25.3/nvhpc-nompi;按应用脚本选择是否加载配套MPI |
| NVHPC | 26.9 | module load nvhpc/26.9;已安装,不作为25.3已验收程序的无条件替代 |
| Miniconda | current |
module load miniconda3/current或使用4.2节的conda初始化方式 |
LibTorch目录已存在不代表任意VASP/CP2K/PLUMED都启用了其接口。各环境的TensorFlow、PyTorch、CUDA运行库版本以所属软件章节为准。公共工具链通过厂商安装包或独立前缀部署,应用从源码编译时的实际编译器另见各节;缺少原始构建证据的二进制不推断优化flags。