Molpro2015.1-pl44
ウェブページ
バージョン
2015.1.44
ビルド環境
- Intel Parallel Studio 2017 update 8
- GCC 4.9.2 (必要なかったかも)
- Global Arrays Toolkit 5.7
ビルドに必要なファイル
- molpro.2015.1.44.tar.gz
- ga-5.7.tar.gz
- パッチファイル
- (中身については /local/apl/lx/molpro2015.1.44/patches 以下をご確認ください)
- (ほとんどはパラメータの変更が目的です。これらの適用でテスト結果が変わることもありません。)
- work.patch
- patch-argos-binput.F
- patch-common-cconf
- patch-common-cconf1
- patch-common-cref
- patch-forces-forces_drv.F
- patch-mrci-ciref.F
- patch-util-zmatrix.F
- patch-make-molver.mk
- patch-cic-ItfFortranInt.h
- token
ビルド手順
#!/bin/sh
GA_VERSION=5.7
MOLPRO_VERSION=2015.1-pl44
MOLPRO_DIRNAME=molpro.2015.1.44
PARALLEL=12
BASEDIR=/home/users/${USER}/Software/Molpro/2015.1.44
MOLPRO_TARBALL=${BASEDIR}/molpro.2015.1.44.tar.gz
TOKEN=${BASEDIR}/token
WORKDIR=/work/users/${USER}
INSTALLDIR=/local/apl/lx/molpro${MOLPRO_VERSION}
GA_TARBALL=/home/users/${USER}/Software/GlobalArrays/5.7/ga-5.7.tar.gz
GA_INSTALLDIR=${WORKDIR}/ga-temporary
GA_INC=${GA_INSTALLDIR}
PATCH0=${BASEDIR}/work.patch
PATCH1=${BASEDIR}/patch-argos-binput.F
PATCH2=${BASEDIR}/patch-common-cconf
PATCH3=${BASEDIR}/patch-common-cconf1
PATCH4=${BASEDIR}/patch-common-cref
PATCH5=${BASEDIR}/patch-forces-forces_drv.F
PATCH6=${BASEDIR}/patch-mrci-ciref.F
PATCH7=${BASEDIR}/patch-util-zmatrix.F
PATCH8=${BASEDIR}/patch-make-molver.mk
PATCH9=${BASEDIR}/patch-cic-ItfFortranInt.h
#------------------------------------------
umask 0022
ulimit -s unlimited
eport LANG=C
cd $WORKDIR
if [ -d ga-${GA_VERSION} ]; then
mv ga-${GA_VERSION} ga_tmp
rm -rf ga_tmp &
fi
if [ -d ga-temporary ]; then
mv ga-temporary ga_tmp_tmp
rm -rf ga_tmp_tmp &
fi
if [ -d ${MOLPRO_DIRNAME} ]; then
mv ${MOLPRO_DIRNAME} molpro_tmp
rm -rf molpro_tmp &
fi
module purge
module load scl/devtoolset-3
module load intel_parallelstudio/2017update8
tar zxf ${GA_TARBALL}
cd ga-${GA_VERSION}
export CFLAGS="-pc80"
export FFLAGS="-pc80"
export FCFLAGS="-pc80"
export CXXFLAGS="-pc80"
export F77=mpiifort
export F90=mpiifort
export FC=mpiifort
export CC=mpiicc
export CXX=mpiicpc
export MPIF77=mpiifort
export MPIF90=mpiifort
export MPICC=mpiicc
export MPICXX=mpiicpc
export GA_FOPT="-O3 -ip -w -xHost"
export GA_COPT="-O3 -ip -w -xHost"
export GA_CXXOPT="-O3 -ip -w -xHost"
./configure --with-blas8 \
--enable-i8 \
--prefix=${GA_INSTALLDIR}
make -j ${PARALLEL}
#make check
make install
cp config.log ${GA_INSTALLDIR}
cd ../
tar zxf ${MOLPRO_TARBALL}
cd ${MOLPRO_DIRNAME}
patch -p0 < ${PATCH0}
patch -p0 < ${PATCH1}
patch -p0 < ${PATCH2}
patch -p0 < ${PATCH3}
patch -p0 < ${PATCH4}
patch -p0 < ${PATCH5}
patch -p0 < ${PATCH6}
patch -p0 < ${PATCH7}
patch -p0 < ${PATCH8}
patch -p0 < ${PATCH9}
export PATH="${GA_INSTALLDIR}/bin:$PATH" # where ga-config exists
CPPFLAGS="-I${GA_INSTALLDIR}/include" \
LDFLAGS="-L${GA_INSTALLDIR}/lib" \
./configure --prefix=${INSTALLDIR} \
--enable-mpp=ga-config \
--enable-integer8 \
--enable-slater
sed -i -e "s/pc64/pc80/g" CONFIG
LD_LIBRARY_PATH_ESC=`echo $LD_LIBRARY_PATH | sed -e 's/\//\\\\\//g'`
sed -i -e "s/^VERBOSE.*$/VERBOSE=/" \
-e "s/^LD_ENV=.*$/LD_ENV=$LD_LIBRARY_PATH_ESC/" CONFIG
unset LD_LIBRARY_PATH_ESC
make -j ${PARALLEL}
cp $TOKEN lib/.token
make tuning
## manually modify tuning parameters!
#sed -i -e "s/tuning-mindgm.*/tuning-mindgm 0001/" \
# -e "s/tuning-mindgc.*/tuning-mindgc 0001/" \
# -e "s/tuning-mindgr.*/tuning-mindgr 0001/" \
# -e "s/tuning-mindgl.*/tuning-mindgl 0001/" \
# -e "s/tuning-mindgv.*/tuning-mindgv 0001/" lib/tuning.rc
MOLPRO_OPTIONS="" make quicktest
MOLPRO_OPTIONS=-n2 make test
#make install # do it manually
メモ
- 9/7 更新: 導入当初のバージョンはシリアル版となっていました。9/6(月) に --enable-mpp=ga-config を追加して再インストールしています。
- シリアルの quicktest、2 並列の test は全てパスしています。
- 以降のバージョンに合わせて -pc80 を指定してビルドしています。
- intel17 版は gcc9 版よりもわずかに速度が出る模様。
- gcc でビルドする場合は qexp, qabs, qfloat を exp, abs, real(値,kind=kind(real*16 変数名))で置き換える必要がある。