Gromacs 2018.1 for LX (gcc)

ウェブページ

http://www.gromacs.org/

バージョン

2018.1

ビルド環境

  • GCC 6.3.1
  • Intel MKL 2018 Update 2
  • Intel MPI 2017.3.196
  • FFTW 3.3.2 (SSE enabled)
  • cmake 3.8.2

ビルドに必要なファイル

  • gromacs-2018.1.tar.gz
  • (regressiontests-2018.1.tar.gz; テストセット)

ビルド手順

(EOF内部の行で行頭のタブがスペースに置き換えられていることに注意してください)

#!/bin/sh

VERSION=2018.1
SCL_TOOLSET=devtoolset-6
INSTALL_PREFIX=/local/apl/lx/gromacs2018.1-gnu

BASEDIR=/home/users/${USER}
GROMACS_TARBALL=${BASEDIR}/gromacs-${VERSION}.tar.gz
WORKDIR=/work/users/${USER}
CMAKE=/local/apl/lx/cmake3.8.2/bin/cmake

#---------------------------------------------------------------------
umask 0022

cd ${WORKDIR}
if [ -d gromacs-${VERSION} ]; then
  mv gromacs-${VERSION} gromacs_erase
  rm -rf gromacs_erase &
fi

tar xzf ${GROMACS_TARBALL}
cd gromacs-${VERSION}

# single precision, no MPI
scl enable ${SCL_TOOLSET} bash <<-EOF
        mkdir rccs-gnu-s
        cd rccs-gnu-s
        ${CMAKE} .. \
                -DCMAKE_INSTALL_PREFIX=${INSTALL_PREFIX} \
                -DCMAKE_VERBOSE_MAKEFILE=ON \
                -DGMX_MPI=OFF \
                -DGMX_GPU=OFF \
                -DGMX_DOUBLE=OFF \
                -DGMX_THREAD_MPI=ON \
                -DGMX_FFT_LIBRARY=fftw3 \
                -DREGRESSIONTEST_DOWNLOAD=OFF
        make -j12 && make install
        cd ..

        # double precision, no MPI
        mkdir rccs-gnu-d
        cd rccs-gnu-d
        ${CMAKE} .. \
                -DCMAKE_INSTALL_PREFIX=${INSTALL_PREFIX} \
                -DCMAKE_VERBOSE_MAKEFILE=ON \
                -DGMX_MPI=OFF \
                -DGMX_GPU=OFF \
                -DGMX_DOUBLE=ON \
                -DGMX_THREAD_MPI=ON \
                -DGMX_FFT_LIBRARY=fftw3 \
                -DREGRESSIONTEST_DOWNLOAD=OFF
        make -j12 && make install
        cd ..

        # compiler setting for MPI versions
        export CC=mpicc
        export CXX=mpicxx
        export F77=mpif90
        export F90=mpif90
        export FC=mpif90

        # single precision, with MPI
        mkdir rccs-gnu-mpi-s
        cd rccs-gnu-mpi-s
        ${CMAKE} .. \
                -DCMAKE_INSTALL_PREFIX=${INSTALL_PREFIX} \
                -DCMAKE_VERBOSE_MAKEFILE=ON \
                -DGMX_MPI=ON \
                -DGMX_GPU=OFF \
                -DGMX_DOUBLE=OFF \
                -DGMX_THREAD_MPI=OFF \
                -DGMX_FFT_LIBRARY=fftw3 \
                -DREGRESSIONTEST_DOWNLOAD=OFF
        make -j12 && make install
        cd ..

        # double precision, with MPI
        mkdir rccs-gnu-mpi-d
        cd rccs-gnu-mpi-d
        ${CMAKE} .. \
                -DCMAKE_INSTALL_PREFIX=${INSTALL_PREFIX} \
                -DCMAKE_VERBOSE_MAKEFILE=ON \
                -DGMX_MPI=ON \
                -DGMX_GPU=OFF \
                -DGMX_DOUBLE=ON \
                -DGMX_THREAD_MPI=OFF \
                -DGMX_FFT_LIBRARY=fftw3 \
                -DREGRESSIONTEST_DOWNLOAD=OFF
        make -j12 && make install
        cd ..
EOF

注意

GPU版(gcc 5.3.1 + CUDA 8.0)はregressionテスト中、complexテストのLJ PMEの絡んだポテンシャル、力計算において数値誤差が発生したのでインストールを保留。