Challenges
Datasets
Workspaces
Papers
Discussions
Leaderboard
Log inSign up
Challenges
Datasets
Workspaces
Papers
Discussions
Leaderboard
Blog
Job Board
Q3AS

© 2026 Aqora Quantum S.A.S.

TermsPrivacyLegal Notice

XSEDE Conference (XSEDE)

Delayed Update Algorithms for Quantum Monte Carlo Simulation on GPU

Tyler McDaniel, Ed D'Azevedo, Ying Wai Li, Paul R. C. Kent, Ming Wong, Kwai Lam Wong

Published Jul 17, 2016• 2 citations
Publisher

Abstract

QMCPACK is open source scientific software designed to perform Quantum Monte Carlo (QMC) simulation, a first-principles method for describing many-body systems. The evaluation of each Monte Carlo move requires finding the determinant of a dense matrix in the wave functions. This calculation forms a key computational kernel in QMCPACK. After each accepted event, the wave function matrix undergoes a rank-one update to represent a single particle move within the system. The matrix inverse is updated via the Sherman-Morrison formula; occasionally, the explicit inverse must be recomputed to maintain numerical stability.; We propose an alternate approach to this kernel that utilizes QR factorization to maintain stability without refactorization. In addition, algorithms based on a novel delayed update scheme are explored in this effort. This strategy enables probability evaluation for multiple successive Monte Carlo moves, with application of accepted moves to the wave function matrix delayed until an event is denied, or a predetermined limit on acceptances p is reached. Accepted events grouped in this manner are then applied to the matrix en bloc with enhanced arithmetic intensity and computational efficiency.

DOI
10.1145/2949550.2949579

Related papers

A High-Efficiency Delayed Update Algorithm for Evaluating Slater Determinants in Quantum Monte Carlo

Ye Luo, Jeongnim Kim, Paul R. C. Kent

For quantum Monte Carlo simulations of molecular systems or supercells with thousands of electrons, matrix operations related to Slater determinants lead the computational cost. McDaniel et al. [ J. Chem. Phys. 2017, 147, 174107] proposed a delayed update algorithm to increase computational efficiency by using matrix–matrix multiplication when updating the inverse matrices of Slater determinants. However, preparing intermediate matrices for applying the Sherman–Morrison–Woodbury formula remained a bottleneck. In this work, we introduce an improved algorithm for CPUs and GPUs that (1) reduces this bottleneck by iteratively updating the intermediate matrices and (2) is efficient at any acceptance ratio, with no cost for rejected moves on CPUs and minimal cost on GPUs. We show the full scheme of integrating the delayed update algorithm into a single-electron move. The high efficiency of our algorithm is demonstrated on CPUs and GPUs for a 512 atom/6144 valence electron calculation, with 12× and 2× overall speed-up compared to traditional rank-1 update schemes in diffusion quantum Monte Carlo, respectively.

Journal of Chemical Theory and Computation•Dec 1, 2025•0 citations

Fast and stable determinant quantum Monte Carlo

Carsten Bauer

We assess numerical stabilization methods employed in fermion many-body quantum Monte Carlo simulations. In particular, we empirically compare various matrix decomposition and inversion schemes to gain control over numerical instabilities arising in the computation of equal-time and time-displaced Green's functions within the determinant quantum Monte Carlo (DQMC) framework. Based on this comparison, we identify a procedure based on pivoted QR decompositions which is both efficient and accurate to machine precision. The Julia programming language is used for the assessment and implementations of all discussed algorithms are provided in the open-source software library StableDQMC.jl.

arXiv:2003.05286•SciPost Physics Core•Jun 29, 2020•13 citations

Delay update in determinant quantum Monte Carlo

Fanjie Sun, Xiao Yan Xu

Determinant quantum Monte Carlo (DQMC) is a widely used unbiased numerical method for simulating strongly correlated electron systems. However, the update process in DQMC is often a bottleneck for its efficiency. To address this issue, we propose a generalized delay update scheme that can handle both on-site and extended interactions. Our delay update scheme can be implemented in both zero-temperature and finite-temperature versions of DQMC. We apply the delay update scheme to various strongly correlated electron models and evaluate its efficiency under different conditions. Our results demonstrate that the proposed delay update scheme significantly improves the efficiency of DQMC simulations, enabling it to simulate larger system sizes.

arXiv:2308.12005•Physical review. B./Physical review. B•Jun 20, 2024•17 citations

A fast and efficient algorithm for Slater determinant updates in quantum Monte Carlo simulations

Phani K. V. V. Nukala, Paul R. C. Kent

We present an efficient low-rank updating algorithm for updating the trial wave functions used in quantum Monte Carlo (QMC) simulations. The algorithm is based on low-rank updating of the Slater determinants. In particular, the computational complexity of the algorithm is O(kN) during the kth step compared to traditional algorithms that require O(N(2)) computations, where N is the system size. For single determinant trial wave functions the new algorithm is faster than the traditional O(N(2)) Sherman-Morrison algorithm for up to O(N) updates. For multideterminant configuration-interaction-type trial wave functions of M+1 determinants, the new algorithm is significantly more efficient, saving both O(MN(2)) work and O(MN(2)) storage. The algorithm enables more accurate and significantly more efficient QMC calculations using configuration-interaction-type wave functions.

arXiv:0906.4354•The Journal of Chemical Physics•May 28, 2009•31 citations

jQMC: A JAX-based ab initio quantum Monte Carlo package designed for GPU-accelerated computing

Kousuke Nakano, Michele Casula

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.

arXiv:2607.13781•Jul 15, 2026•0 citations

Accelerating ground-state auxiliary-field quantum Monte Carlo simulations by delayed update and block force-bias update

Hao Du, Yuan-Yao He

Ground-state auxiliary-field quantum Monte Carlo is a powerful tool for interacting fermions but is often limited by the bottleneck of costly local update. Here, the authors develop two acceleration schemes: the delayed update, which replaces multiple vector outer products by one matrix-matrix multiplication, and the block force-bias update, which retains high efficiency while tuning acceptance via block size. Applied to 2D Hubbard models, they yield up to ~ 8 times speedup in 1600-site systems. These update schemes can have broad applicability to general correlated fermion systems.

arXiv:2506.09611•Physical review. B./Physical review. B•Nov 21, 2025•3 citations
QMCPACK is open source scientific software designed to perform Quantum Monte Carlo (QMC) simulation, a first-principles method for describing many-body systems. The evaluation of each Monte Carlo move requires finding the determinant of a dense matrix in the wave functions. This calculation forms a key computational kernel in QMCPACK. After each accepted event, the wave function matrix undergoes a rank-one update to represent a single particle move within the system. The matrix inverse is updated via the Sherman-Morrison formula; occasionally, the explicit inverse must be recomputed to maintain numerical stability.; We propose an alternate approach to this kernel that utilizes QR factorization to maintain stability without refactorization. In addition, algorithms based on a novel delayed update scheme are explored in this effort. This strategy enables probability evaluation for multiple successive Monte Carlo moves, with application of accepted moves to the wave function matrix delayed until an event is denied, or a predetermined limit on acceptances p is reached. Accepted events grouped in this manner are then applied to the matrix en bloc with enhanced arithmetic intensity and computational efficiency.
For quantum Monte Carlo simulations of molecular systems or supercells with thousands of electrons, matrix operations related to Slater determinants lead the computational cost. McDaniel et al. [ J. Chem. Phys. 2017, 147, 174107] proposed a delayed update algorithm to increase computational efficiency by using matrix–matrix multiplication when updating the inverse matrices of Slater determinants. However, preparing intermediate matrices for applying the Sherman–Morrison–Woodbury formula remained a bottleneck. In this work, we introduce an improved algorithm for CPUs and GPUs that (1) reduces this bottleneck by iteratively updating the intermediate matrices and (2) is efficient at any acceptance ratio, with no cost for rejected moves on CPUs and minimal cost on GPUs. We show the full scheme of integrating the delayed update algorithm into a single-electron move. The high efficiency of our algorithm is demonstrated on CPUs and GPUs for a 512 atom/6144 valence electron calculation, with 12× and 2× overall speed-up compared to traditional rank-1 update schemes in diffusion quantum Monte Carlo, respectively.
We assess numerical stabilization methods employed in fermion many-body quantum Monte Carlo simulations. In particular, we empirically compare various matrix decomposition and inversion schemes to gain control over numerical instabilities arising in the computation of equal-time and time-displaced Green's functions within the determinant quantum Monte Carlo (DQMC) framework. Based on this comparison, we identify a procedure based on pivoted QR decompositions which is both efficient and accurate to machine precision. The Julia programming language is used for the assessment and implementations of all discussed algorithms are provided in the open-source software library StableDQMC.jl.
Determinant quantum Monte Carlo (DQMC) is a widely used unbiased numerical method for simulating strongly correlated electron systems. However, the update process in DQMC is often a bottleneck for its efficiency. To address this issue, we propose a generalized delay update scheme that can handle both on-site and extended interactions. Our delay update scheme can be implemented in both zero-temperature and finite-temperature versions of DQMC. We apply the delay update scheme to various strongly correlated electron models and evaluate its efficiency under different conditions. Our results demonstrate that the proposed delay update scheme significantly improves the efficiency of DQMC simulations, enabling it to simulate larger system sizes.
We present an efficient low-rank updating algorithm for updating the trial wave functions used in quantum Monte Carlo (QMC) simulations. The algorithm is based on low-rank updating of the Slater determinants. In particular, the computational complexity of the algorithm is O(kN) during the kth step compared to traditional algorithms that require O(N(2)) computations, where N is the system size. For single determinant trial wave functions the new algorithm is faster than the traditional O(N(2)) Sherman-Morrison algorithm for up to O(N) updates. For multideterminant configuration-interaction-type trial wave functions of M+1 determinants, the new algorithm is significantly more efficient, saving both O(MN(2)) work and O(MN(2)) storage. The algorithm enables more accurate and significantly more efficient QMC calculations using configuration-interaction-type wave functions.
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.
Ground-state auxiliary-field quantum Monte Carlo is a powerful tool for interacting fermions but is often limited by the bottleneck of costly local update. Here, the authors develop two acceleration schemes: the delayed update, which replaces multiple vector outer products by one matrix-matrix multiplication, and the block force-bias update, which retains high efficiency while tuning acceptance via block size. Applied to 2D Hubbard models, they yield up to ~ 8 times speedup in 1600-site systems. These update schemes can have broad applicability to general correlated fermion systems.