이 문서는 GROMACS-2016.4 소스를 (CUDA 기반의) GPU 기능을 사용하는 버전으로 빌드하는 방법에 대해 소개한다.
소스 파일은 아래 사이트에서 다운로드 받을 수 있다.
$ tar xzf gromacs-2016.4.tar.gz
$ cd gromacs-2016.4
$ mkdir build
$ cd build
$ module load intel/18.0.2 cuda/10.0 cudampi/mvapich2-2.3
$ module load cmake/3.12.3
$ export CC=mpicc
$ export CXX=mpicxx
$ cmake -DGMX_OPENMP=ON -DGMX_GPU=ON -DGMX_MPI=ON \
-DGMX_FFT_LIBRARY=mkl \
-DGMX_PREFER_STATIC_LIBS=ON -DCMAKE_BUILD_TYPE=Release \
-DCMAKE_INSTALL_PREFIX=${HOME}/applications/GROMACS/2016.4 \
-DGMX_HWLOC=OFF \
..
$ make
$ make install
$ module load intel/18.0.2 cuda/10.0 cudampi/mvapich2-2.3 gromacs/2016.4
$ cp /apps/applications/test_samples/Gromacs/* .
$ tar xvzf water_GMX50_bare.tar.gz
$ gmx_mpi grompp -f pme.mdp -c conf.gro -p topol.top -o topol_pme.tpr
$ gmx_mpi grompp -f rf.mdp -c conf.gro -p topol.top -o topol_rf.tpr
$ sbatch gromacs.sh
#!/bin/sh
#SBATCH -J “gromacs_test”
#SBATCH -p ivy_v100_2
#SBATCH -N 1
#SBATCH -n 4
#SBATCH -o %x_%j.out
#SBATCH -e %x_%j.err
#SBATCH -t 00:30:00
#SBATCH --gres=gpu:2
#SBATCH --comment gromacs
ulimit -s unlimited
srun gmx_mpi mdrun -ntomp 5 -dlb yes -nb gpu -nsteps 4000 -s ./topol_pme.tpr