We provide an overview of the software engineering efforts and their impact
in QMCPACK, a production-level ab-initio Quantum Monte Carlo open-source code
targeting high-performance computing (HPC) systems. Aspects included are: (i)
strategic expansion of continuous integration (CI) targeting CPUs, using GitHub
Actions runners, and NVIDIA and AMD GPUs in pre-exascale systems, using
self-hosted hardware; (ii) incremental reduction of memory leaks using
sanitizers, (iii) incorporation of Docker containers for CI and
reproducibility, and (iv) refactoring efforts to improve maintainability,
testing coverage, and memory lifetime management. We quantify the value of
these improvements by providing metrics to illustrate the shift towards a
predictive, rather than reactive, sustainable maintenance approach. Our goal,
in documenting the impact of these efforts on QMCPACK, is to contribute to the
body of knowledge on the importance of research software engineering (RSE) for
the sustainability of community HPC codes and scientific discovery at scale.Comment: Accepted at the first US-RSE Conference, USRSE2023,
https://us-rse.org/usrse23/, 8 pages, 3 figures, 4 table