PSI4 1.5
(Apr 13, 2022) Added description about CheMPS2-enabled version.
Webpage
Version
1.5
Build Environment
- Intel Parallel Studio 2020 update2 (compilers and MKL)
- GCC 8.3.1 (devtoolset-8)
- cmake 3.16.3
- (Python 3.9.10 (miniforge3))
Files Required
- psi4.tar.gz
- "git checkout e9f4d6d" (version 1.5) and then manually tar.zipped
- (some packages were downloaded in the installation procedure below)
Build Procedure
miniforge3 (brief)
Some unrelated packages such as RDKit are also installed.$ wget https://github.com/conda-forge/miniforge/releases/latest/download/Miniforge3-Linux-x86_64.sh
$ sh ./Miniforge3-Linux-x86_64.sh
...
[/home/users/***/miniforge3] >>> /local/apl/lx/psi4-15/miniforge3
...
$ /local/apl/lx/psi4-15/miniforge3/bin/conda shell.bash hook > /local/apl/lx/psi4-15/conda_init.sh
$ /local/apl/lx/psi4-15/miniforge3/bin/conda shell.csh hook > /local/apl/lx/psi4-15/conda_init.csh
$ . /local/apl/lx/psi4-15/conda_init.sh
(base) $ conda update conda
(base) $ conda update --all
(base) $ conda install pint pybind11 msgpack-python numpy networkx pydantic pytest pytest-xdist
(base) $ conda install matplotlib psutil py-cpuinfo rdkit
psi4
Miniforge (see above) must be installed before this.#!/bin/sh
# assume miniforge for psi4 was already installed
VERSION=1.5
INSTALL_PREFIX=/local/apl/lx/psi4-15
BASEDIR=/home/users/${USER}/Software/PSI4/1.5
TARBALL=${BASEDIR}/psi4.tar.gz
WORKDIR=/work/users/${USER}/
PARALLEL=12
#---------------------------------------------------------------------
umask 0022
export LANG=C
ulimit -s unlimited
module purge
module load scl/devtoolset-8
module load intel_parallelstudio/2020update2
module load cmake/3.16.3
cd ${WORKDIR}
if [ -d psi4 ]; then
mv psi4 psi4-erase
rm -rf psi4-erase &
fi
# load miniforge3 env
. ${INSTALL_PREFIX}/conda_init.sh
tar zxf ${TARBALL}
cd psi4
mkdir build
cd build
cmake .. \
-DMAX_AM_ERI=7 \
-DCMAKE_INSTALL_PREFIX=${INSTALL_PREFIX} \
-DBUILD_SHARED_LIBS=ON \
-DCMAKE_CXX_COMPILER=icpc \
-DCMAKE_C_COMPILER=icc \
-DCMAKE_Fortran_COMPILER=ifort
make -j ${PARALLEL}
ctest -j${PARALLEL}
make install
Notes
- all the tests has passed without errors.
- miniforge was employed instead of anaconda due to license issue.
- intel + gcc9/10 version failed on many of tests.
- The reason is not very much clear. (not investigated carefully)
- Some of errors are concerned with perl... why?
- this can be specific to gcc9/10 of devtoolset?
- intel2018 + gcc8 version failed on some (not many) of tests.
- probably, both of gcc and intel versions are important.
- MAX_AM_ERI=7 was employed; this setting is also used in Linux binary distribution version.
- To do parallel runs, you should specify number of threads like "psi4 -n (number of threads)". It is to be noted that psi4 disregards OMP_NUM_THREADS/MKL_NUM_THREADS.
- In python script, you can set number of threads with psi4.core.set_num_threads function.
Notes about CheMPS2 enabled version
miniforge env described above was used for this version (via symlinks).
CheMPS2
$ git clone https://github.com/SebWouters/CheMPS2.git
$ cd CheMPS2/
$ git checkout refs/tags/v1.8.12
$ module purge
$ module load scl/devtoolset-8
$ module load intel_parallelstudio/2020update2
$ module load cmake/3.16.3
$ mkdir build
$ cd build/
$ CXX=icpc cmake .. -DMKL=ON -DCMAKE_INSTALL_PREFIX=/local/apl/lx/psi4-15-chemps2/chemps2-1.8.12 -DWITH_MPI=OFF
$ make
$ make install
$ make test
$ cd CheMPS2/
$ cp ../../tests/test14.input .
$ sed -i "s/\/path\/to/..\/..\/tests\/matrixelements/" test14.input
$ ./chemps2 --file=test14.input
PSI4
#!/bin/sh
# assume miniforge for psi4 was already installed
VERSION=1.5
INSTALL_PREFIX=/local/apl/lx/psi4-15-chemps2
CHEMPS2DIR=/local/apl/lx/psi4-15-chemps2BASEDIR=/home/users/${USER}/Software/PSI4/1.5
TARBALL=${BASEDIR}/psi4.tar.gzWORKDIR=/work/users/${USER}
PARALLEL=12#---------------------------------------------------------------------
umask 0022
export LANG=C
ulimit -s unlimitedmodule purge
module load scl/devtoolset-8
module load intel_parallelstudio/2020update2
module load cmake/3.16.3
cd ${WORKDIR}
if [ -d psi4 ]; then
mv psi4 psi4-erase
rm -rf psi4-erase &
fi# load miniforge3 env
. ${INSTALL_PREFIX}/conda_init.shtar zxf ${TARBALL}
cd psi4mkdir build
cd build
cmake .. \
-DENABLE_CheMPS2=ON \
-DCheMPS2_DIR=${CHEMPS2DIR} \
-DMAX_AM_ERI=7 \
-DCMAKE_INSTALL_PREFIX=${INSTALL_PREFIX} \
-DBUILD_SHARED_LIBS=ON \
-DCMAKE_CXX_COMPILER=icpc \
-DCMAKE_C_COMPILER=icc \
-DCMAKE_Fortran_COMPILER=ifort
make -j ${PARALLEL}make install
ctest -j${PARALLEL}