GROMACS GPU 版安装指南(Linux 系统)¶
适用范围
本教程以 Ubuntu 20.04 / 22.04 + CUDA 12 为例,介绍在 GPU 服务器上从源码编译最新稳定版 GROMACS(默认2025.1版)的方法。请根据硬件与系统版本灵活调整命令。
截至 2025-07-02,GROMACS 最新稳定版为 2025.1.
1 前置检查¶
- 确认显卡与驱动是否就绪

- 核对操作系统依赖
# 更新系统索引
sudo apt update
# 核心工具链与常用库
sudo apt install build-essential gcc g++ cmake git \
make ninja-build pkg-config \
libopenmpi-dev mpi-default-bin \
zlib1g-dev libbz2-dev liblzma-dev libxml2-dev \
libboost-all-dev
CMake 版本要求
GROMACS 2025 需要 CMake ≥ 3.28 (Ubuntu 22.04 自带 3.25,可通过snap install cmake --classic或源码安装升级)。
2 安装 CUDA Toolkit¶
- 前往 NVIDIA CUDA Toolkit Archive 下载与你显卡兼容的 Runfile 或 .deb (local) 安装包,本文示例版本为 CUDA 12.3。
- 按官方步骤完成安装后,编辑用户环境变量:
在文件末尾追加(请按实际 CUDA 版本修改路径):
# >>> CUDA >>>
export PATH=/usr/local/cuda-12.3/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/cuda-12.3/lib64:$LD_LIBRARY_PATH
# <<< CUDA <<<
- 使配置立即生效并验证:

3 获取并编译 GROMACS(GPU 支持)¶
建议:在
$HOME/app或/opt这类统一目录下管理源码与安装文件夹,便于升级和维护。
# 1. 下载源码
wget https://ftp.gromacs.org/gromacs/gromacs-2025.1.tar.gz
tar -xf gromacs-2025.1.tar.gz
cd gromacs-2025.1
# 2. 创建构建目录
mkdir build && cd build
# 3. 配置 CMake
cmake .. \
-DGMX_BUILD_OWN_FFTW=ON \ # 自动编译 FFTW3
-DGMX_GPU=CUDA \ # 启用 CUDA 加速
-DCUDA_TOOLKIT_ROOT_DIR=/usr/local/cuda-12.3 \
-DGMX_CUDA_TARGET_SM=90 \ # 根据显卡架构修改 (A100/H100=80/90,RTX40=89/90)
-DREGRESSIONTEST_DOWNLOAD=ON \ # 同步官方回归测试
-DCMAKE_INSTALL_PREFIX=$HOME/app/gromacs-2025.1
# 4. 编译与测试(-j 后接 CPU 线程数)
make -j$(nproc) &&
make check
# 5. 安装
sudo make install
4 配置环境变量¶
安装完成后,将可执行文件加入 PATH,并启用补全脚本:
5 验证安装¶
期望输出包含:
6 常见问题与提示¶
| 现象 | 可能原因 | 处理办法 |
|---|---|---|
nvcc fatal: Unsupported gpu architecture 'compute_XX' |
-DGMX_CUDA_TARGET_SM 与显卡架构不匹配 |
参考 nvidia-smi, 将 SM_xx 改为实际 GPU 代号(如 86, 89, 90) |
| 编译报 “CMake >= 3.28 required” | CMake 版本过旧 | snap install cmake --classic 或源码升级 |
| 运行报 “Incompatible CUDA driver” | 驱动 < CUDA Toolkit 所需最低版本 | 更新 NVIDIA 驱动或降级 CUDA |
7 升级与卸载¶
- 升级:在新版本发布后(例如 2025.2)重复第 3 步骤编译安装,并更新
GMXRC路径即可。 - 卸载:删除安装目录并移除
~/.bashrc中对应行。
图片占位说明
上文所有<!-- TODO: ... -->注释处请替换为实际截图路径,例如:
/wikis/assets/nvidia-smi.png
/wikis/assets/nvcc-version.png
方便 MkDocs 在构建静态站点时正确引用。
作者:课题组维护团队
最后更新:2025-07-02