jQMC: A JAX-based ab initio quantum Monte Carlo package designed for GPU-accelerated computing
Kousuke Nakano, Michele Casula
Abstract
We present jQMC, a Python-based computational package for ab initio Quantum Monte Carlo (QMC) simulations, designed for modern GPU-accelerated computing environments. jQMC implements two well-established QMC algorithms: Variational Monte Carlo (VMC) and the lattice-regularized variant of Diffusion Monte Carlo (LRDMC). The employed wave function is a Jastrow factor combined with the antisymmetrized geminal power with spin-singlet and spin-triplet pairings, which contains the single Slater determinant as its special lowest-rank case. The wave function can be initialized from external Hartree-Fock/Density Functional Theory calculations through the TREX-IO library (a common wave-function format across electronic-structure packages) and optimized by stochastic reconfiguration and linear-method energy minimization. One of the prominent features of jQMC is its use of JAX, which enables automatic differentiation for wave function optimization and atomic force calculations, and allows the main QMC algorithms to be Just-In-Time (JIT) compiled and portable across CPU and GPU. jQMC is vectorized over walkers at the top level of the QMC algorithms, providing efficient intra-GPU~(CPU) vectorization. The multi-GPU~(CPU) parallelization is also supported through MPI and JAX sharding. To assess the practical performance of this implementation, we benchmarked jQMC performance on NVIDIA GPUs (A100 and H100) and analyzed CUDA kernels. For the test cases analyzed here, with system sizes up to 160 electrons, the current version of jQMC is faster than TurboRVB, a Fortran90 code implementing the same algorithms and wave functions, once jQMC is run on GPUs. In terms of wall-time, the gain can reach an order of magnitude for VMC, while it is more moderate for LRDMC.
Create a lesson
Related papers
Real-Time Emergence of Charge-Transfer-to-Solvent States from Core Excitation
Jiří Suchan, B. Scott Fales, Benjamin G. Levine et al.
ElemCo.jl: A Julia package for electron-correlation methods
Daniel Kats, Charlotte Rickert, Thomas Schraivogel et al.
Franson-Interferometric Bounds on Entangled Two-Photon Absorption
Albin Hedse, Sankaran Ramesh, Luis Matheis et al.
The off-diagonal low rank property: new opportunities for low-scaling computational chemistry methods
Zikuan Wang
Core-valence double ionization of SF6 involving S2p, F1s and S1s inner shells
Veronica Daver Ideböhn, Daniel M. Pereira, Lucas M. Cornetta et al.
Benchmark of Multi-Channel Dyson Equation and Algebraic Diagrammatic Construction Methods for molecules
Mike Keizer, Stefano Paggi, J. Arjan Berger et al.