Releases

For questions please use the QMCPACK Google Group.

A list of releases made from GitHub can be browsed at https://github.com/QMCPACK/qmcpack/releases. Source code, including for the current development version, is available at https://github.com/QMCPACK/qmcpack

The latest nightly test status can be browsed at http://cdash.qmcpack.org

QMCPACK Release v3.8.0 - 2019-07-23

Download QMCPACK v3.8.0

Notes

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.

NEXUS

  • 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

Notes

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.

NEXUS

 

QMCPACK Release v3.6.0 - 2018-12-19

Download QMCPACK v3.6.0

Notes

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 https://arxiv.org/abs/1810.00284 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.

NEXUS

  • 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.

 

QMCPACK Release v3.5.0 - 2018-08-02

Download QMCPACK v3.5.0

Notes

This release includes support for the latest Quantum Espresso version 6.3, an initial implementation of periodic Gaussian support via PySCF, and a new version of the hybrid or "APW" representation of orbitals. Many minor bugs have been fixed, configuration and documentation improved. It is a recommended update for all users.

Note that the PDF manuals are no longer included with the source. Versions are available online via https://qmcpack.org . The PDFs can be built using manual/build_manual.sh and nexus/documentation/user_guide_source/build_nexus_user_guide.sh

Attention developers: This version contains substantially fewer source lines than previous versions due to clean out of old code and unused execution paths. Refactoring to improve the internal structure of QMCPACK is ongoing. Track the develop branch and follow discussion on GitHub closely to avoid difficult merges.

  • Support for Quantum Espresso 6.3 and 6.2.1. Check documentation to ensure compiled with required HDF5 support.
  • Support for periodic gaussians and PySCF generated wavefunctions. Initial version is limited to Gamma-point.
  • Improved hybrid representation of single particle orbitals (APW-like) for significantly reduced memory usage and possible accuracy increase compared to conventional spline representation. https://arxiv.org/abs/1805.07406
  • Norms of orbitals are checked inside QMCPACK to catch conversion errors.
  • Added verbosity setting to QMCPACK output.
  • CUDA can now be enabled with SoA builds.
  • Many improvements to QMCPACK manual, including all new features, CIPSI, 3-body jastrow factor description, spack package, and enabling HTML generation.
  • CMake configuration improvements, particularly around MKL handling.
  • Extensive cleanup of unused source files and unused code paths removed, reducing the number of source lines by over 30 percent.

Known bugs

  • Weight of first block of DMC density is incorrect in CPU code. DMC densities in CUDA GPU code are incorrect for all blocks. #934 and #925
  • Runs with only a single electron may crash. #945

NEXUS

  • Support for GAMESS HDF5 workflows.
  • Nexus accepts command line inputs.
  • Nexus testing via ntest executable.
  • Added GAMESS-NEXUS examples for RHF, CISD, and CASSCF wavefunction.
  • Added support for -nojastrow workflows.
  • Added support for Stampede supercomputer.
  • Added script to build NEXUS user guide.
  • Various bugfixes including to GAMESS input parsing.

QMCPACK Release v3.4.0 - 2018-01-29

Download QMCPACK v3.4.0

Notes

This release includes size-consistent t-moves, and improvements to load balancing and memory usage that will be visible in large runs. Significant revisions have been made to the gaussian wavefunction reader and a PySCF interface is in progress. A bug affecting non-git installs (from release tarballs) is fixed. Feedback is particularly welcome on the new features.

  • Size consistent t-moves implemented (Casula 2010 algorithm). Enabled via nonlocalmoves parameter, see manual.
  • Bugfix: For non-git builds, build process failed on some systems due to git-rev.h handling.
  • Optimized load balancing in DMC. Command line option async_swap removed. Parameter use_nonblocking now disables non-blocking MPI load balancing. Non-blocking MPI is now enabled by default.
  • Improved memory handling and usage in SoA code, increases performance.
  • Improved stability of GPU matrix inversion for large runs.
  • Ongoing improvements to output to improve readability.
  • Initial interface to PySCF for real space QMC trial wavefunctions.
  • Enabled use of HDF5 files for Gaussian based wavefunctions with SoA implementation.
  • Added Appendix to manual listing all known QMCPACK publications. This will be updated on an ongoing basis. Please advise of any missing publications.
  • Optimized momentum distribution estimator. Supported by SoA and 1,2,3-body Jastrow functions.
  • Support for labeled timers in Intel VTune based profiling.

NEXUS

  • Minor bugfixes and improvements.

Known limitations

  • PySCF interface is preliminary. convert4qmc is updated, but manual entries are not yet provided. This will be improved in later versions. The interface is currently only for isolated molecular systems. A full periodic implementation is in progress.

  • Documentation, examples and tutorials are not yet consistent with the updated converter convert4qmc.