GENESIS 1.7.0 with GPU support

ウェブページ

https://www.r-ccs.riken.jp/labs/cbrt/

バージョン

1.7.0

ビルド環境

  • Intel Parallel Studio XE 2018 Update 4
  • CUDA 11.1 Update 1

ビルドに必要なファイル

  • genesis-1.7.0.tar.bz2
  • tests-1.7.0.tar.bz2

ビルド手順

#!/bin/sh

VERSION=1.7.0
BASEDIR=/home/users/${USER}/Software/GENESIS/${VERSION}
SRC_TARBALL=${BASEDIR}/genesis-${VERSION}.tar.bz2
TESTS_TARBALL=${BASEDIR}/tests-${VERSION}.tar.bz2

INSTALLDIR=/local/apl/lx/genesis170-CUDA

WORKDIR=/work/users/${USER}
BUILDDIR=${WORKDIR}/genesis-${VERSION}
TESTSDIR=${WORKDIR}/tests-${VERSION}

PARALLEL_TESTS=8

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

module purge
module load intel_parallelstudio/2018update4
module load cuda/11.1

export LANG=C
export LC_ALL=C
export OMP_NUM_THREADS=1

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

if [ -d tests-${VERSION} ]; then
  mv tests-${VERSION} tests-erase
  rm -rf tests-erase &
fi

tar jxf ${SRC_TARBALL}
tar jxf ${TESTS_TARBALL}

cd ${BUILDDIR}
FC=mpiifort CC=mpiicc ./configure --prefix=${INSTALLDIR} \
                                  --enable-gpu \
                                  --enable-single \
                                  --with-cuda=/local/apl/lx/cuda-11.1

make && make install

SPDYN=${INSTALLDIR}/bin/spdyn

cd ${TESTSDIR}/regression_test

# spdyn tests
./test.py       "mpirun -np ${PARALLEL_TESTS} $SPDYN" gpu
./test_remd.py  "mpirun -np ${PARALLEL_TESTS} $SPDYN" gpu
./test_rpath.py "mpirun -np ${PARALLEL_TESTS} $SPDYN" gpu
./test_gamd.py  "mpirun -np ${PARALLEL_TESTS} $SPDYN" gpu
./test_fep.py   "mpirun -np ${PARALLEL_TESTS} $SPDYN" gpu

メモ

  • テストは全て通過(仕様上動作しない test_remd の 9 個のテストを除く)
  • バイナリ(spdyn)は P100, V100 のどちらでも動作します。ただし、ネイティブサポートにはなっていない可能性があります。
  • cuda-11.4 (compatibility mode) では正常に動作せず。原因不明(詳細な検証はしていません)。