English

PETSc/TAO Developments for GPU-Based Early Exascale Systems

Mathematical Software 2024-11-18 v2 Distributed, Parallel, and Cluster Computing

Abstract

The Portable Extensible Toolkit for Scientific Computation (PETSc) library provides scalable solvers for nonlinear time-dependent differential and algebraic equations and for numerical optimization via the Toolkit for Advanced Optimization (TAO). PETSc is used in dozens of scientific fields and is an important building block for many simulation codes. During the U.S. Department of Energy's Exascale Computing Project, the PETSc team has made substantial efforts to enable efficient utilization of the massive fine-grain parallelism present within exascale compute nodes and to enable performance portability across exascale architectures. We recap some of the challenges that designers of numerical libraries face in such an endeavor, and then discuss the many developments we have made, which include the addition of new GPU backends, features supporting efficient on-device matrix assembly, better support for asynchronicity and GPU kernel concurrency, and new communication infrastructure. We evaluate the performance of these developments on some pre-exascale systems as well the early exascale systems Frontier and Aurora, using compute kernel, communication layer, solver, and mini-application benchmark studies, and then close with a few observations drawn from our experiences on the tension between portable performance and other goals of numerical libraries.

Keywords

Cite

@article{arxiv.2406.08646,
  title  = {PETSc/TAO Developments for GPU-Based Early Exascale Systems},
  author = {Richard Tran Mills and Mark Adams and Satish Balay and Jed Brown and Jacob Faibussowitsch and Toby Isaac and Matthew Knepley and Todd Munson and Hansol Suh and Stefano Zampini and Hong Zhang and Junchao Zhang},
  journal= {arXiv preprint arXiv:2406.08646},
  year   = {2024}
}

Comments

17 pages

R2 v1 2026-06-28T17:03:48.163Z