Large-Scale Materials Science Codes Porting Strategies for Next Generation Exascale Architectures
ORAL
Abstract
Due to the intensive computational workload of their applications, materials science codes have been and still are among those which mostly benefit from leadership class HPC facilities. At the state of the art, graphics processing units (GPUs) dominate the HPC paradigm and force developers to actively maintain and optimize core compute kernels going forward. In this talk, we will focus on our experiences navigating this portability effort for the BerkeleyGW software package. BerkeleyGW is a massively parallel software package employed to study the excited state properties of electrons in materials by using the GW and the GW plus Bethe-Salpeter Equation (GW-BSE) methods, and beyond. The code is capable of scaling out to tens of thousands of nodes and effectively utilizing strong-scaling GPU architectures. We will discuss our experiences porting BerkeleyGW to three different GPU programming models (CUDA, OpenACC, OpenMP Target) and to various GPU vendor architectures, as well as challenges impeding true performance portability we encountered along the way. Special attention will be paid to code modernization practices which we found useful in the porting pipeline.
*Resources for this work are provided by NERSC, supported by the US Department of Energy (DOE) Office of Science under contract DE-AC02-05CH11231, and OLCF through the INCITE program, supported by the US DOE Office of Science under Contract No. DE-AC05-00OR22725. This work was supported by the Center for Computational Study of Excited-State Phenomena in Energy Materials (C2SEPEM), funded by the US DOE Office of Science under Contract No. DEAC02-05CH11231.
–
Presenters
-
Mauro Del Ben
- Lawrence Berkeley National Laboratory