For questions please use the QMCPACK Google Group.

A list of releases made from GitHub can be browsed at Source code, including for the current development version, is available at

The latest nightly test status can be browsed at

QMCPACK Release v3.9.0 - 2020-02-11

Download QMCPACK v3.9.0


This release includes a large number of refinements to improve or extend the functionality of QMCPACK and NEXUS. Importantly, this release supports and requires Python 3. After this release we plan to remove the array-of-structures build configuration and also the legacy CUDA implementation for GPUs. If any needed functionality is not supported by the now-default structures-of-arrays configuration, users should contact the developers via the QMCPACK Google Groups or via an issue on the QMCPACK GitHub repository. Work is ongoing to support dynamical spin variables, implement spin-orbit, and to develop new support for accelerators via a new framework that will consistently support CPUs and GPUs from the same codebase.

  • All uses of Python updated to Python 3, which is now required. Python 2 was retired at the end of 2019, and many packages already only support Python 3.
  • A greatly expanded selection of effective core potentials is available at in formats suitable for QMCPACK and common DFT and quantum chemistry codes.
  • All major functionality is now supported by the default structures-of-arrays (SoA) build. This release is the last to support the legacy array-of-structures (AoS) build. See #861.
  • Major bug identified and fixed in the periodic Coulomb evaluation (Optimized breakup method of Natoli-Ceperley). Many thanks to Jan Brndiar and coworkers for reporting this. For large anisotropic supercells such as a graphene layer with substantial vacuum, the ion-ion potential was incorrectly computed. Results in all bulk-like supercells tested so far have been accurate. An independent Ewald check of the ion-ion potential evaluation has been added. See #2137. The Coulomb potential evaluation has also been found to converge very slowly for certain anisotropic supercells, particularly for quasi-2D cells where huge errors can result. The new independent Coulomb check will abort if a tolerance is not reached and provide guidance. Research is ongoing to develop an improved methodology #2185.
  • Support for periodic gaussian-based trial wavefunctions at complex k-points #1988.
  • Determinant-localization approximation (DLA) of Zen et al. J. Chem. Phys. 151, 134105 (2019) for DMC non-local pseudopotential evaluation implemented.
  • Improved force implementation #1769#1768.
  • Non-local pseudopotential derivatives are supported in the SoA build and recommended for all optimizations #2083.
  • Above 192 electrons in a spin determinant, delayed updating with delay 32 is enabled by default for higher performance, #2027. Rank-1 updating is used by default for smaller determinants.
  • Improved configuration and detection of Intel MKL and vector MKL when used with non-Intel compilers.
  • QMCPACK will now run with wavefunctions where only electrons of a single spin are specified. #2148.
  • AFQMC estimators now include 1 and 2 body reduced density matrices (1RRM, 2RDM) and on-top pair density. #2097.
  • Dense real hamiltonian added for AFQMC allowing for GPU acceleration for chemistry applications. #2131.
  • QMCPACK spack package supports the latest release as well as the development version. This package can also install and patch Quantum Espresso.
  • Support for Blue Gene removed due to retirement of this architecture.
  • Many minor bug fixes, expanded testing, and small feature improvements.

Known bugs

See list of open bugs.

  • Use of reconfiguration in DMC is disabled since it is incorrect. #2254


  • NEXUS version is increased to 2.0.0 due to major updates in this release.
  • NEXUS has been transitioned to Python 3 and now requires it.
  • Significantly expanded test system to cover all major functionality.
  • Full support for PySCF to QMCPACK and AFQMC workflows #1970.
  • Support for DLA #2061.
  • VMC optimization performed with NLPP derivatives by default #2128.
  • Many minor bugfixes and feature improvements.

QMCPACK Release v3.8.0 - 2019-07-23

Download QMCPACK v3.8.0


This release includes Quantum Espresso v6.4.1 support, new examples for adding wavefunctions and Jastrow functions, and many updates to the AFQMC code functionality. Additionally, all the updated scripts and functionality utilized during the 2019 QMCPACK workshop are provided; this link also includes several new tutorials. A large number of feature refinements, bugfixes, testing improvements and source code cleanup have also been performed.

  • Quantum Espresso v6.4.1 support #1732.
  • New tutorial for adding a simple wavefunction (He) #1621.
  • New tutorial and capability for adding Jastrow functors from symbolic expressions written in Python #1557.
  • Updated compiler and library support policy, and matching testing. We aim to support open source compilers and libraries within two years of release. Use of older software is discouraged and untested. Support for closed source compilers over the same period may require use of an exact version.
  • Many updates to AFQMC code to support more compilers and libraries.
  • Newly expanded deterministic test set should now pass on all platforms and be usable as an. installation check. Recommend to run "ctest -L deterministic" after building QMCPACK.
  • AFQMC code now only reads HDF5 format data to improve I/O performance and storage utilization.
  • K-point AFQMC code usable in production (e.g. bug fix #1524).
  • Updated AFQMC workflow scripts for interfacing with PySCF.
  • Faster initial cusp correction calculation for all-electron calculations, e.g. #1643.
  • Improved stability of cusp correction calculation #1594.
  • New short-ranged e-n Jastrow #1680.
  • Substantially faster 1-body reduced density matrix (1DRDM) estimator #1672.
  • Performance tests added for LCAO code and Gaussian basis sets #1639.
  • Reduced configuration output by default. Use -DQMC_VERBOSE_CONFIGURATION=1 on CMake line for greater detail.
  • Partial support for forces in LCAO basis e.g. #1559. See details given at 2019 QMCPACK Workshop and in manual.
  • Improved human-readable Jastrow output #1525.
  • Improved MPI implementation. QMCPACK is now compatible with OpenMPI v4.
  • Majority of the manual has been professionally edited.

Known bugs

See list of open bugs.

  • There is a general problem with MVAPICH2 involving aligned memory allocations that will cause QMCPACK to crash if MVAPICH is compiled using defaults. See #1703 for details and workaround.


  • Examples added of PySCF molecular and solid-state workflows #1552.
  • Update support for Quantum Package 2.0 #1538.
  • Support for additional machines including SuperMUC-NG #1665.
  • Support for ghost atoms #1653.
  • Update outdated cubic specifier to alat for QE #1642.
  • K-point grids are symmetrized with spglib #1544.
  • Bundling of jobs at NERSC #1748.

QMCPACK Release v3.7.0 - 2019-03-29

Download QMCPACK v3.7.0


This release includes GPU support for the AFQMC implementation, Quantum Espresso v6.4 support, and in the real-space code makes the structure-of-arrays (SoA) code path the default. A large number of feature refinements, bugfixes, testing improvements and source code cleanup have been performed.

  • The improved structures of arrays (SoA) build is now the default. This is generally significantly faster and uses less memory than the AoS build due to better algorithms, but does not yet have the full range of functionality. The older AoS build can be selected with -DENABLE_SOA=0.
  • AFQMC code fully supports GPU acceleration via NVIDIA CUDA. Use -DENABLE_CUDA=1.
  • Quantum Espresso v6.4 is supported. #1457
  • Better error handling e.g. #1423
  • Workarounds for MPI support on Summit. #1479
  • ppconvert should be more reliable. #891
  • Delayed update implementation on GPUs. #1279
  • Continued improvements to the testing system and test coverage. While still under development, a new set of deterministic tests is intended to rapidly and reliably test the code, with good coverage. Tests pass for real and complex, but not yet mixed-precision or GPU builds.
  • Source code has been formatted with clang-format for consistency throughout.

Known Bugs

See list of open bugs.

  • There is a bug that could result in an incorrect local electron-ion pseudopotential energy with CUDA v9.1 and Kepler GPUs. This is still being investigated. #1440

  • QMCPACK will not build with OpenMPI v4 due to use of deprecated functions. This will be addressed when the new MPI wrappers are fully adopted. Older OpenMPI libraries are fully capable.



QMCPACK Release v3.6.0 - 2018-12-19

Download QMCPACK v3.6.0


This release includes a completely new AFQMC implementation, significant performance improvements for large runs, greater functionality in the structure-of-arrays (SoA) code path, support for larger spline data on multiple GPUs, and support for new machines and compilers. The manual has been improved, bugs have been fixed, and source code cleanup continued.

A C++14 and C99 capable compiler, Boost 1.61.0, and CMake 3.6 or greater are now required.

  • Completely updated AFQMC implementation including reduced scaling separable density fitting Documentation and examples will be added in v3.7.0. Contact the developers for use instructions in the interim. #1245

  • Implementation of delayed updates for CPU. Substantial speedups for runs with 100s of electrons, with increasing gains at larger electron counts. See manual for details. #1170

  • Initial support for nested OpenMP to further reduce time-to-solution for large problems. #1082

  • Support for splitting/distributing spline orbital data across multiple GPUs on a single node. #1101

  • Cusp correction for all electron calculations is implemented in the SoA version. #1172

  • Backflow is implemented in the SoA version. #1225

  • K-points with real coefficients are supported in periodic LCAO. #1006

  • Initial support for Summit at OLCF. Revisions may be needed in January 2019 as the software stack is updated. This will be addressed in a new version as required.

  • Initial support for PGI compiler.

  • Build instructions for ARM-based systems. #1148

  • Setup scripts are python 2 and 3 compatible. #1261

  • QMCPACK and NEXUS can now be installed by "make install" after configuring CMake with CMAKE_PREFIX_PATH. #1020

  • Significantly reworked test labeling and categorization system. #1155

  • Partial transition to a new MPI wrapper implementation for greater compatibility.

  • Utilities have been renamed for clarity and to avoid name collisions with other applications. getSupercell is renamed qmc-get-supercell. extract-eshdf-kvectors is renamed qmc-extract-eshdf-kvectors.

Known bugs

Several potentially significant bugs are outstanding and will be addressed in the next release. See list of open bugs.

  • LCAO (Gaussian basis) molecular calculations are incorrect with certain diffusion functions. The reason for this bug is currently unclear. #1145

  • On NVIDIA Volta GPUs some runs show inconsistencies with the CPU version. Standard carbon diamond and LiH tests pass with good agreement with the CPU implementation. #1054

  • QMCPACK will not build with OpenMPI v4.0.0 due to use of deprecated functions. This will be addressed in the next version as the new MPI wrappers are fully adopted. Older OpenMPI libraries are fully capable.


  • Interface to and support for PySCF. #1220

  • Interface to and support for Quantum Package (QP). #1093

  • Support for excited state calculations. #1200

  • qfit is renamed qmc-fit.

  • ntest, sim, redo are renamed nxs-test, nxs-sim, nxs-redo.

  • Many smaller improvements.