GENESIS 1.4.0 for LX with GPU support
ウェブページ
https://www.r-ccs.riken.jp/labs/cbrt/
バージョン
1.4.0
ビルド環境
- Intel Parallel Studio XE 2018 Update 4
- CUDA 9.1
ビルドに必要なファイル
- genesis-1.4.0.tar.bz2
- tests-1.4.0.tar.bz2
ビルド手順
#!/bin/sh
VERSION=1.4.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/genesis140-CUDA
WORKDIR=/work/users/${USER}
BUILDDIR=${WORKDIR}/genesis-${VERSION}
TESTSDIR=${WORKDIR}/tests-${VERSION}
PARALLEL=12
PARALLEL_TESTS=8
# ----------------------------------------------------------------------------
umask 0022
module purge
module load intel_parallelstudio/2018update4
module load cuda/9.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-9.1
make depend
make -j ${PARALLEL} && 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
メモ
- ビルドとテストは ccgpuv で行っています。
- PME を使わないテスト (REMD テストの 9 個) は、GPUバージョンでは利用不可能な機能に依存するために失敗しています。
- 他全てのテストは正常に通過しています。
- バイナリ(spdyn)は P100, V100 のどちらでも動作します(ccgpup, ccgpuv で確認)。
- PTX 及び cubin のバージョンについては、35, 37, 61 (バージョン 3.5, 3.7, 6.1 に対応)だけが明示的に指定されています。V100 (7.0)はネイティブにはサポートされていません。
- 厳密に言えば P100 (6.0) もネイティブにはサポートされていないかもしれません(?)