Installation and Configuration
This section provides detailed instructions for installing and configuring QMC=Chem, including prerequisites, supported platforms, and initial setup steps.
Requirements
Before installing QMC=Chem, ensure that the following prerequisites are met:
Bash: A Unix shell and command language.
Python3: Required for various scripting and automation tasks.
Fortran Compiler: Intel Fortran is recommended for optimal performance.
Lapack Library: Intel MKL is recommended for efficient numerical computations.
ZeroMQ: A high-performance communication library, essential for network communications. ZeroMQ Library
F77_ZMQ: A ZeroMQ Fortran interface. Download F77_ZMQ
QMCkl Library: A library for quantum Monte Carlo kernels. Download QMCkl
TREXIO Library: A library for managing quantum chemistry data. Download TREXIO
OCaml Compiler with Opam: Required for certain computational tasks. OCaml Compiler
To install the necessary OCaml packages, execute the following command:
opam install ocamlbuild cryptokit zmq sexplib ppx_sexp_conv ppx_deriving getopt trexio
For OCaml installation issues on x86 systems, consider downloading this archive and follow these steps:
tar --gunzip --extract --file opampack.tar.gz
cd opampack
./install.sh
export OPAMROOT="${PWD}"/opamroot
eval ("${OPAMROOT}"/opam env)
Installation Process
To compile QMC=Chem, execute the following commands:
./autogen.sh
./configure && make
After compilation, it’s necessary to set up the environment for QMC=Chem. The environment variables are specified in the qmcchemrc
file:
source qmcchemrc
Set the QMCCHEM_NIC
environment variable to the appropriate network interface, typically ib0
on HPC systems.
If needed, set QMCCHEM_IO=b
to store the results in binary format to accelerate post-processing.
Tuning for HPC Systems
For optimal performance, the Intel compiler is recommended. If using gfortran version 12 or higher, add the -fallow-argument-mismatch
option.
Example configurations:
For Intel Fortran Compiler:
./configure FC=ifort FCFLAGS="-O2 -g -ip -ftz -finline -xCORE-AVX2 -mkl=sequential"
For GCC version 12 or higher:
./configure FCFLAGS="-fallow-argument-mismatch -g -O2 -ffast-math -march=native -fno-trapping-math -fno-math-errno -ftree-vectorize -fno-stack-protector -fopenmp"
File Preparation
To prepare files for QMC=Chem, the save_for_qmcchem
plugin must be installed in Quantum Package:
qp plugins download https://gitlab.com/scemama/qp_plugins_scemama
qp plugins install qmcchem
cd $QP_ROOT/src/qmcchem
ninja
After completing a Quantum Package calculation, execute the following command to prepare the directory for QMC=Chem:
qp run save_for_qmcchem