Gromacs_GPU版本编译
- 在WSL的ubantu下创建一个新环境:
conda create y -n gmx python=3.10 cmake fftw - 激活虚拟环境
conda activate gmx - 设置变量
GROMACS_VERSION=2022.2
INSTALL_PREFIX=$CONDA_PREFIX - 下载源码
wget https://ftp.gromacs.org/gromacs/gromacs-${GROMACS_VERSION}.tar.gz
tar -xzf gromacs-${GROMACS_VERSION}.tar.gz
cd gromacs-${GROMACS_VERSION} - 创建build目录
mkdir build
cd build
-
由于缺少cmake工具,先安装cmake
sudo apt update
sudo apt install build-essential cmake git -y -
缺少cuda toolkit,安装cuda toolkit
wget https://developer.download.nvidia.com/compute/cuda/repos/wsl-ubuntu/x86_64/cuda-wsl-ubuntu.pin && \
sudo mv cuda-wsl-ubuntu.pin /etc/apt/preferences.d/cuda-repository-pin-600 && \
wget https://developer.download.nvidia.com/compute/cuda/12.4.1/local_installers/cuda-repo-wsl-ubuntu-12-4-local_12.4.1-1_amd64.deb && \
sudo dpkg -i cuda-repo-wsl-ubuntu-12-4-local_12.4.1-1_amd64.deb && \
sudo cp /var/cuda-repo-wsl-ubuntu-12-4-local/cuda-*-keyring.gpg /usr/share/keyrings/ && \
sudo apt update && \
sudo apt install -y cuda-toolkit-12-4 && \
echo 'export PATH=/usr/local/cuda-12.4/bin:$PATH' >> ~/.bashrc && \
echo 'export LD_LIBRARY_PATH=/usr/local/cuda-12.4/lib64:$LD_LIBRARY_PATH' >> ~/.bashrc && \ source ~/.bashrc -
加入环境变量
echo 'export PATH=/usr/local/cuda-12.4/bin:$PATH' >> ~/.bashrc
echo 'export LD_LIBRARY_PATH=/usr/local/cuda-12.4/lib64:$LD_LIBRARY_PATH' >> ~/.bashrc
source ~/.bashrc -
创建软连接
sudo ln -sfn /usr/local/cuda-12.4 /usr/local/cuda
echo 'export PATH=/usr/local/cuda/bin:$PATH' >> ~/.bashrc
echo 'export LD_LIBRARY_PATH=/usr/local/cuda/lib64:$LD_LIBRARY_PATH' >> ~/.bashrc
source ~/.bashrc
—————————————————————————————————————————————————————————————————————————————————————————— -
cmake
cmake .. \ -DCMAKE_INSTALL_PREFIX=${CONDA_PREFIX} \ -DGMX_GPU=CUDA \ -DGMX_CUDA_TARGET_SM=75 \ -DGMX_OPENMP=ON \ -DGMX_BUILD_OWN_FFTW=ON \ -DGMX_MPI=OFF \ -DCUDA_TOOLKIT_ROOT_DIR=/usr/local/cuda \ -DCMAKE_CUDA_COMPILER=/usr/local/cuda/bin/nvcc\ -DCMAKE_POLICY_VERSION_MINIMUM=3.5 -
多线程编译和install
make -j$(nproc) # 多线程编译,加快速度
make install -
编译后输出如下
![image]()

浙公网安备 33010602011771号