Software Technology

Mathematical Libraries

Preparing PETSc/TAO for Exascale

Principal Investigator: Barry Smith, Argonne National Laboratory

This project focuses on complementary topics in the context of the numerical libraries PETSc (Portable, Extensible Toolkit for Scientific computing) and TAO (Toolkit for Advanced Optimization): (1) partially matrix-free scalable solvers that can efficiently use many-core and GPU-based architectures; (2) reduced synchronization algorithms that can scale to larger concurrency than solvers with synchronization points; and (3) performance data structure optimizations for all the core data structures to better utilize many-core and GPU-based systems and provide exascale scalability. Additional work in TAO focuses on efficient scalable ensembles for optimization, sensitivity analysis, and uncertainty quantification, thus enabling solvers to efficiently use millions to billions of degrees of concurrency and increasing scalability.

PETSc is a scalable ODE integrator, nonlinear solver, and (sparse) linear solver library. TAO is a scalable optimization library for constrained and unconstrained optimization. Both are highly customizable and intended to be used within large scale numerical simulations.