Hybrid programming-model strategies for GPU offloading of electronic structure calculation kernels
Abstract
To address the challenge of performance portability, and facilitate the implementation of electronic structure solvers, we developed the Basic Matrix Library (BML) and Parallel, Rapid O(N) and Graph-based Recursive Electronic Structure Solver (PROGRESS) libraries. BML implements linear algebra operations necessary for electronic structure kernels using a unified user interface for various matrix formats (dense, sparse) and architectures (CPUs, GPUs). Focusing on Density Functional Theory (DFT) and Tight-Binding (TB) models, PROGRESS implements several solvers for computing the single-particle density matrix and relies on BML. In this paper, we describe the general strategies used for these implementations on various computer architectures, using OpenMP target functionalities on GPUs, in conjunction with third-party libraries to handle performance critical numerical kernels. We demonstrate the portability of this approach and its performance on benchmark problems.
Turn this paper into a lesson
ArcXiv compiles a structured reading guide from this paper's metadata: plain-English importance, contributions, prerequisite concepts, which sections to read first, flashcards, and a quiz. Grounded in the abstract, never invented.