Ab initio quantum Monte Carlo (QMC) is a stochastic approach for solving the many-body Schrödinger equation without resorting to one-body approximations. QMC algorithms are readily parallelizable via ensembles of Nw walkers, making them well suited to large-scale high-performance computing. Among the QMC techniques, diffusion Monte Carlo (DMC) is widely regarded as the most reliable since it provides the projection onto the ground state of a given Hamiltonian under the fixed-node approximation. One practical realization of DMC is the lattice regularized diffusion Monte Carlo (LRDMC) method, which discretizes the Hamiltonian within the Green's function Monte Carlo framework. DMC methods-including LRDMC-employ the so-called branching technique to stabilize walker weights and populations. At the branching step, walkers must be synchronized globally; any imbalance in per-walker workload can leave central processing unit (CPU) or graphics processing unit (GPU) cores idle, thereby degrading overall hardware utilization. The conventional LRDMC algorithm intrinsically suffers from such load imbalance, which grows as log(Nw), rendering it less efficient on modern parallel architectures. In this work, we present an LRDMC algorithm that inherently addresses the load imbalance issue and achieves significantly improved weak-scaling parallel efficiency. Using the binding energy calculation of a water-methane complex as a test case, we demonstrated that the conventional and load-balanced LRDMC algorithms yield consistent results. Furthermore, by utilizing the Leonardo supercomputer equipped with NVIDIA A100 GPUs, we demonstrated that the load-balanced LRDMC algorithm can maintain extremely high parallel efficiency (∼98%) up to 512 GPUs (corresponding to Nw = 51 200), together with a speedup of ×1.24 if directly compared with the conventional LRDMC algorithm with the same number of walkers. The speedup stays sizable, i.e., × 1.18, even if the number of walkers is reduced to Nw = 400.
Ab initio quantum Monte Carlo (QMC) is a stochastic approach for solving the many-body Schrödinger equation without resorting to one-body approximations. QMC algorithms are readily parallelizable via ensembles of Nw walkers, making them well suited to large-scale high-performance computing. Among the QMC techniques, diffusion Monte Carlo (DMC) is widely regarded as the most reliable since it provides the projection onto the ground state of a given Hamiltonian under the fixed-node approximation. One practical realization of DMC is the lattice regularized diffusion Monte Carlo (LRDMC) method, which discretizes the Hamiltonian within the Green's function Monte Carlo framework. DMC methods-including LRDMC-employ the so-called branching technique to stabilize walker weights and populations. At the branching step, walkers must be synchronized globally; any imbalance in per-walker workload can leave central processing unit (CPU) or graphics processing unit (GPU) cores idle, thereby degrading overall hardware utilization. The conventional LRDMC algorithm intrinsically suffers from such load imbalance, which grows as log(Nw), rendering it less efficient on modern parallel architectures. In this work, we present an LRDMC algorithm that inherently addresses the load imbalance issue and achieves significantly improved weak-scaling parallel efficiency. Using the binding energy calculation of a water-methane complex as a test case, we demonstrated that the conventional and load-balanced LRDMC algorithms yield consistent results. Furthermore, by utilizing the Leonardo supercomputer equipped with NVIDIA A100 GPUs, we demonstrated that the load-balanced LRDMC algorithm can maintain extremely high parallel efficiency (∼98%) up to 512 GPUs (corresponding to Nw = 51 200), together with a speedup of ×1.24 if directly compared with the conventional LRDMC algorithm with the same number of walkers. The speedup stays sizable, i.e., × 1.18, even if the number of walkers is reduced to Nw = 400.
We present jQMC, a Python-based computational package for {\it 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.
The Diffusion Monte Carlo (DMC) method is a powerful strategy to estimate the ground state energy E0 of an N-body Schrödinger Hamiltonian H = -½Δ + V with high accuracy. It consists of writing E0 as the long-time limit of an expectation value of a drift-diffusion process with a source term, and numerically simulating this process by means of a collection of random walkers. As for a number of stochastic methods, a DMC calculation makes use of an importance sampling function ψI which hopefully approximates some ground state ψ0 of H. In the fermionic case, it has been observed that the DMC method is biased, except in the special case when the nodal surfaces of ψI coincide with those of a ground state of H. The approximation due to the fact that, in practice, the nodal surfaces of ψI differ from those of the ground states of H, is referred to as the Fixed Node Approximation (FNA). Our purpose in this paper is to provide a mathematical analysis of the FNA. We prove that, under convenient hypotheses, a DMC calculation performed with the importance sampling function ψI, provides an estimation of the infimum of the energy 〈ψ, Hψ〉 on the set of the fermionic test functions ψ that exactly vanish on the nodal surfaces of ψI.
Quantum Monte Carlo (QMC) methods represent a powerful family of computational techniques for tackling complex quantum many-body problems and performing calculations of stationary state properties. QMC is among the most accurate and powerful approaches to the study of electronic structure, but its application is often hindered by a steep learning curve; hence it is rarely addressed in undergraduate and postgraduate classes. This tutorial is a step toward filling this gap. We offer an introduction to the diffusion Monte Carlo (DMC) method, which aims to solve the imaginary time Schrödinger equation through stochastic sampling of the configuration space. Starting from the theoretical foundations, the discussion leads naturally to the formulation of a step-by-step algorithm. To illustrate how the method works in simplified scenarios, examples such as the harmonic oscillator and the hydrogen atom are provided. The discussion extends to the fixed-node approximation, a crucial approach for addressing the fermionic sign problem in multi-electron systems. In particular, we examine the influence of trial wave function nodal surfaces on the accuracy of DMC energy by evaluating results from a non-interacting two-fermion system. Extending the method to excited states is feasible in principle, but some additional considerations are needed, supported by practical insights. By addressing the fundamental concepts from a hands-on perspective, we hope this tutorial will serve as a valuable guide for researchers and students approaching DMC for the first time.
Quantum Monte Carlo (QMC) is an extremely powerful method to treat many-body systems. Usually quantum Monte Carlo has been applied in cases where the interaction potential has a simple analytic form, like the 1/r Coulomb potential. However, in a complicated environment as in a semiconductor heterostructure, the evaluation of the interaction itself becomes a non-trivial problem. Obtaining the potential from any grid-based finite-difference method, for every walker and every step is unfeasible. We demonstrate an alternative approach of solving the Poisson equation by a classical Monte Carlo within the overall quantum Monte Carlo scheme. We have developed a modified ''Walk On Spheres'' algorithm using Green's function techniques, which can efficiently account for the interaction energy of walker configurations, typical of quantum Monte Carlo algorithms. This stochastically obtained potential can be easily incorporated within popular quantum Monte Carlo techniques like variational Monte Carlo (VMC) or diffusion Monte Carlo (DMC). We demonstrate the validity of this method by studying a simple problem, the polarization of a helium atom in the electric field of an infinite capacitor.
Diffusion Monte Carlo (DMC) is a technique for obtaining the ground-state solution to the vibrational time-independent Schrödinger equation based on a stochastic sampling of an electronic potential energy surface (PES). Ideally, the electronic energies used in DMC are calculated at the CCSD(T) level of theory. Recently, Tom Miller’s group at Caltech has developed a technique for calculating accurate CCSD(T) corrections to the electronic energy at the cost of a standard Hartree-Fock calculation using Gaussian process regression, a machine learning technique\footnote{Welborn, M. , Cheng, L., Miller, T. M. JCTC. 2018 14 (9), 4772-4779}\footnote{Cheng, L., Kovachki, N. B., Welborn, M., Miller, T. M. JCTC. 2019 15 (12), 6668-6677}. DMC is a well-suited technique to validate these PESs, referred to as MOB-ML surfaces, since DMC samples the entire region of the PES in which the vibrational ground state wave function has amplitude. Despite the speed of these MOB-ML PESs relative to an \emph{ab initio} calculation, calculating the Hartree-Fock energy for every one of thousands of DMC configurations over tens of thousands of time-steps makes the use of these surfaces computationally challenging. To this end, we combined two techniques to bring these calculations into computational feasibility. First, we implemented a DMC algorithm to take advantage of massively parallel high performance computing environments. Second, we use this DMC code to collect training data for a neural network (NN). We use a generic algorithm to train the NN to learn the MOB-ML surface based on the points sampled by the DMC. Using TensorFlow, the evaluation of the NN can then easily be done using graphics processing units (GPUs). We have performed small-scale DMC calculations on \chem{H2O} and \chem{CH5+} using these MOB-ML surfaces, and have also run large-scale NN+MOB-ML DMC simulations to obtain a high resolution ground state vibrational wave function and measure of the zero-point energy. Due to the generality of both the MOB-ML surface generation and the NN fitting workflow, we can easily extend this work to larger systems, such as large ion-water clusters or a Criegee intermediate, where running the DMC with traditional electronic structure would be intractable.
The quantum Monte Carlo (QMC) technique is an extremely powerful method to treat many-body systems. Usually the quantum Monte Carlo method has been applied in cases where the interaction potential has a simple analytic form, like the 1/r Coulomb potential. However, in a complicated environment as in a semiconductor heterostructure, the evaluation of the interaction itself becomes a nontrivial problem. Obtaining the potential from any grid-based finite-difference method for every walker and every step is infeasible. We demonstrate an alternative approach of solving the Poisson equation by a classical Monte Carlo calculation within the overall quantum Monte Carlo scheme. We have developed a modified "walk on spheres" algorithm using Green's function techniques, which can efficiently account for the interaction energy of walker configurations, typical of quantum Monte Carlo algorithms. This stochastically obtained potential can be easily incorporated with variational, diffusion, and other Monte Carlo techniques. We demonstrate the validity of this method by studying a simple problem, the polarization of a helium atom in the electric field of an infinite capacitor.