Lessons Learned Developing Performance Portable QMCPACK

Series: HPC Best Practices Webinars

During DOE’s Exascale Computing Project the open source QMCPACK code has been redesigned and reimplemented to run portably and performantly on multiple vendors GPUs as well as CPUs. The QMCPACK code implements Quantum Monte Carlo algorithms to predict the properties of materials with benchmark accuracy. The new implementation has now fully replaced the prior non-portable GPU solution. This webinar will outline some of the design considerations and new algorithms implemented both to run efficiently and to reduce burdens on the developers and maintainers. A key factor has been the adoption of modern development practices, including an extensive test suite. This has accelerated development, improved code quality, and also enabled isolation of problems in the wider HPC software stack, including in compilers and numerical libraries. The webinar will summarize these strategies and other recommendations for HPC application developers and facilities.


Presenter Bio

Paul Kent is distinguished staff at Oak Ridge National Laboratory, PI of the QMCPACK applications development project within DOE’s Exascale Computing Project (ECP), and director of the Center for Predictive Simulation of Functional Materials, a DOE BES Computational Materials Sciences Center. He is a Fellow of the APS and previous ACM Gordon Bell prize winner.