Molpro 2026.1.0
ウェブページ
バージョン
2026.1.0
ビルド環境
- GCC 14.2.1 (gcc-toolset-14)
- Intel MPI 2021.17.2
- Eigen 3.4.0
- AOCL 5.3.0 (gcc14.2.1) multi-threaded
ビルドに必要なファイル
- molpro-2026.1.0.tar.gz
- ga-5.9.2.tar.gz
- hdf5-1.14.6.tar.gz
- token
パッチファイル
- work.patch
- patch-argos-binput.F
- patch-cic-ItfFortranInt.h
- patch-common_modules-common_cconf
- 大きな CI 計算のためのパラメータの変更と、一時ディレクトリのデフォルトパスの変更をしています。
- パッチファイル本体は /apl/molpro/2026.1.0/patches 以下に置いています。
ビルド手順
Global Arrays 5.9.2
#!/bin/sh
VERSION=5.9.2
MOLPRO_VERSION=2026.1.0
BASEDIR=/home/users/${USER}/Software/GlobalArrays/${VERSION}
TARBALL=${BASEDIR}/ga-${VERSION}.tar.gzWORKDIR=/gwork/users/${USER}
INSTALL_DIR=/apl/molpro/${MOLPRO_VERSION}/ga-${VERSION}PARALLEL=12
# -----------------------------------------------------------------------
umask 0022
ulimit -s unlimitedexport LANG=
export LC_ALL=C
export OMP_NUM_THREADS=1
cd ${WORKDIR}
if [ -d ga-${VERSION} ]; then
mv ga-${VERSION} ga-erase
rm -rf ga-erase &
fimodule -s purge
module -s load gcc-toolset/14
module -s load intelmpi/2021.17.2tar xf ${TARBALL}
cd ga-${VERSION}export CFLAGS="-mpc80"
export FFLAGS="-mpc80"
export FCFLAGS="-mpc80"
export CXXFLAGS="-mpc80"
./autogen.sh
CC=mpicc CXX=mpicxx FC=mpif90 ./configure \
--prefix=${INSTALL_DIR} \
--with-mpi-pr \
--enable-i8 \
--with-blas=no \
--with-lapack=no \
--with-scalapack=no \
--disable-f77make -j${PARALLEL}
make install
make check
HDF5 1.14.6
#!/bin/sh
VERSION=1.14.6
MOLPRO_VERSION=2026.1.0
BASEDIR=/home/users/${USER}/Software/HDF5/${VERSION}
TARBALL=${BASEDIR}/hdf5-${VERSION}.tar.gzWORKDIR=/gwork/users/${USER}
INSTALL_PREFIX=/apl/molpro/${MOLPRO_VERSION}/hdf5-${VERSION}PARALLEL=12
#---------------------------------------------------------------------
umask 0022
ulimit -s unlimitedexport LANG=
export LC_ALL=C
export OMP_NUM_THREADS=1
module -s purge
module -s load gcc-toolset/14
module -s load intelmpi/2021.17.2cd ${WORKDIR}
if [ -d hdf5-${VERSION} ]; then
mv hdf5-${VERSION} hdf5-erase
rm -rf hdf5-erase &
fitar zxf ${TARBALL}
cd hdf5-${VERSION}
mkdir build && cd build
cmake .. \
-DCMAKE_INSTALL_PREFIX=${INSTALL_PREFIX} \
-DHDF5_BUILD_FORTRAN=ON \
-DHDF5_ENABLE_PARALLEL=ON \
-DMPIEXEC_MAX_NUMPROCS=${PARALLEL}
make -j${PARALLEL}
make install
make test
Molpro
#!/bin/sh
VERSION=2026.1.0
GA_VERSION=5.9.2
HDF5_VERSION=1.14.6DIRNAME=molpro-${VERSION}
BASEDIR=/home/users/${USER}/Software/Molpro/${VERSION}
TARBALL=${BASEDIR}/${DIRNAME}.tar.gzPATCH0=${BASEDIR}/work.patch
PATCH1=${BASEDIR}/patch-argos-binput.F
PATCH2=${BASEDIR}/patch-cic-ItfFortranInt.h
PATCH3=${BASEDIR}/patch-common_modules-common_cconfTOKEN=${BASEDIR}/token
WORKDIR=/gwork/users/${USER}
INSTALLDIR=/apl/molpro/${VERSION}
GA_ROOT=${INSTALLDIR}/ga-${GA_VERSION}
HDF5_ROOT=${INSTALLDIR}/hdf5-${HDF5_VERSION}
PARALLEL=12# -----------------------------------------------------------------
umask 0022
ulimit -s unlimitedexport LANG=
export LC_ALL=C
export OMP_NUM_THREADS=2cd ${WORKDIR}
if [ -d ${DIRNAME} ]; then
mv ${DIRNAME} molpro-erase
rm -rf molpro-erase &
fimodule -s purge
module -s load gcc-toolset/14
module -s load intelmpi/2021.17.2
module -s load eigen/3.4.1
module -s load aocl/5.3.0/gcc14.2.1-mt
cd ${WORKDIR}
tar xf ${TARBALL}
cd ${DIRNAME}patch -p0 < ${PATCH0}
patch -p0 < ${PATCH1}
patch -p0 < ${PATCH2}
patch -p0 < ${PATCH3}export CFLAGS="-mpc80"
export FFLAGS="-mpc80"
export FCFLAGS="-mpc80"
export CXXFLAGS="-mpc80"
export CPPFLAGS="-I${GA_ROOT}/include -I${HDF5_ROOT}/include"
export LDFLAGS="-L${GA_ROOT}/lib -L${HDF5_ROOT}/lib"
export F77=mpif90
export F90=mpif90
export FC=mpif90
export CC=mpicc
export CXX=mpicxx
export MPIF77=mpif90
export MPICC=mpicc
export MPICXX=mpicxxexport PATH="${GA_ROOT}/bin:${PATH}" # where ga-config resides
export PATH="${HDF5_ROOT}/bin:${PATH}" # where h5pcc resides
export LD_LIBRARY_PATH="${HDF5_ROOT}/lib:${LD_LIBRARY_PATH}"
./configure --prefix=${INSTALLDIR} \
--enable-aims \
--enable-slater \
--enable-openmp \
--with-lapack="-lflame -lblis-mt -lm"sed -i -e "s/lmolpro -lmolpro/lmolpro -lmolpro -Llibxc -lxcf03/" build/Makefile
make -j ${PARALLEL}
cp ${TOKEN} lib/.tokenmake install
MOLPRO_OPTIONS="" make quicktest
MOLPRO_OPTIONS="-n2" make testcp -a testjobs ${INSTALLDIR}/molpro*
cp -a bench ${INSTALLDIR}/molpro*
テスト結果
HDF5 の MPI_TEST_H5_f90_ph5_f90_filtered_writes_no_sel で失敗。
GA と Molpro のテストはすべてパス。
メモ
- GCC15 (gcc-toolset/15)は GA のビルドでエラーが出たため回避。
- (オプションの追加でなんとかなったかもしれない)
- OpenBLAS から AOCL に変更すると CI 系の計算で速度が少し向上。
- (公式バイナリでも AOCL が使われています。)
- OpenMP 並列の効果はあまり大きくないように見える。
- libxc のリンク関連でエラーが発生したため、リンクオプションを少し変更しています。原因不明。詳細な調査は行っていません。
- Intel MPI 2021.18 を使うとエラーが増える(不意にクラッシュしている?)ため回避。