PSI4-1.9.1

ウェブページ

https://psicode.org/

バージョン

1.9.1

ビルド環境

  • Intel oneAPI Compiler Classic 2023.2.0
  • cmake 3.28.3
  • (mkl 等については conda 環境に導入して利用; 下記参照)

ビルドに必要なファイル

  • psi4-1.9.1.tar.gz
  • (以下の手順中でもいくつか取得)

ビルド手順

conda 環境(miniforge)

構築の概要

$ sh Miniforge3-Linux-x86_64.sh
...
[...] >>> /apl/psi4/1.9.1/miniforge3
...
$ /apl/psi4/1.9.1/miniforge3/bin/conda shell.bash hook > /apl/psi4/1.9.1/conda_init.sh
$ /apl/psi4/1.9.1/miniforge3/bin/conda shell.tcsh hook > /apl/psi4/1.9.1/conda_init.csh
$ . /apl/psi4/1.9.1/conda_init.sh
$ conda install pybind11 msgpack-python numpy networkx pint pydantic scipy py-cpuinfo psutil
$ conda install matplotlib pytest
$ conda install eigen boost-cpp
$ conda install ambit libecpint libefp gau2grid pcmsolver pylibefp optking pyddx adcc pymdi
$ conda install jsonschema
$ conda install regex
$ conda install mkl-devel

psi4

#!/bin/sh

# assume miniforge for psi4 was already installed

VERSION=1.9.1
INSTALL_PREFIX=/apl/psi4/${VERSION}

BASEDIR=/home/users/${USER}/Software/PSI4/${VERSION}
TARBALL=${BASEDIR}/psi4-${VERSION}.tar.gz

WORKDIR=/gwork/users/${USER}
PARALLEL=12
#---------------------------------------------------------------------

umask 0022
export LANG=C
ulimit -s unlimited

module -s purge

. ~/intel/oneapi/compiler/latest/env/vars.sh # 2023.2.0

module -s load cmake/3.28.3
module -s load pbs/22.05.11

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

# load miniforge3 env
. ${INSTALL_PREFIX}/conda_init.sh

tar zxf ${TARBALL}
cd psi4-${VERSION}

export MATH_ROOT=/apl/psi4/1.9.1/miniforge3
sed -i -e "s/xHost/march=core-avx2/" cmake/xhost.cmake

mkdir build
cd build
cmake .. \
   -DCMAKE_INSTALL_PREFIX=${INSTALL_PREFIX} \
   -DBUILD_SHARED_LIBS=ON \
   -DENABLE_ambit=ON \
   -DENABLE_bse=ON \
   -DENABLE_CheMPS2=ON \
   -DENABLE_cppe=ON \
   -DENABLE_adcc=ON \
   -DENABLE_ddx=ON \
   -DENABLE_dkh=ON \
   -DENABLE_ecpint=ON \
   -DENABLE_libefp=ON \
   -DENABLE_gdma=ON \
   -DENABLE_PCMSolver=ON \
   -DENABLE_v2rdm_casscf=ON \
   -DENABLE_psi4fockci=ON \
   -DENABLE_mdi=ON \
   -DENABLE_Libint1t=ON \
   -DCMAKE_CXX_COMPILER=icpc \
   -DCMAKE_C_COMPILER=icc \
   -DCMAKE_Fortran_COMPILER=ifort
make -j ${PARALLEL}
make install

ctest -j${PARALLEL}
mkdir -p ${INSTALL_PREFIX}/test_results
cp Testing/Temporary/* ${INSTALL_PREFIX}/test_results

メモ

  • テストはすべて pass しています。結果は /apl/psi4/1.9.1/test_results 以下にコピーがあります。
    • ただし、同じ条件で実行した時に dft-pruning テストで微妙な数値誤差でエラーとなったケース有り。原因については未調査。
  • GCC よりも Intel コンパイラの方が速度が出ているようです。
  • einsums, simint, ccsort, snsmp2, transqt2 はビルドに失敗したため外しています。