Memory-Efficient Recursive Evaluation of 3-Center Gaussian Integrals
Andrey Asadchev, Edward F. Valeev

TL;DR
This paper presents memory-efficient recursive algorithms for evaluating 3-center Gaussian integrals, optimizing for modern hardware and demonstrating significant memory savings and performance improvements in Coulomb interaction calculations.
Contribution
It introduces multi-quantal recurrences and register memory optimization, along with compile-time kernel generation, to enhance Gaussian integral evaluation efficiency.
Findings
Significant memory savings with multi-quantal recurrences.
Improved performance in Coulomb potential evaluations.
Open-source implementation in LibintX library.
Abstract
To improve the efficiency of Gaussian integral evaluation on modern accelerated architectures FLOP-efficient Obara-Saika-based recursive evaluation schemes are optimized for the memory footprint. For the 3-center 2-particle integrals that are key for the evaluation of Coulomb and other 2-particle interactions in the density-fitting approximation the use of multi-quantal recurrences (in which multiple quanta are created or transferred at once) is shown to produce significant memory savings. Other innovation include leveraging register memory for reduced memory footprint and direct compile-time generation of optimized kernels (instead of custom code generation) with compile-time features of modern C++/CUDA. Performance of conventional and CUDA-based implementations of the proposed schemes is illustrated for both the individual batches of integrals involving up to Gaussians with low and…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsParticle physics theoretical and experimental studies · Nuclear Physics and Applications · Quantum, superfluid, helium dynamics
