Creating a capable exascale ecosystem requires an interdisciplinary engineering approach. Within the Exascale Computing Project, developers of the software ecosystem, the hardware technology, and a new generation of computational science applications are collaborating in a participatory design process referred to as co-design.
The co-design process is essential to ensuring that future exascale applications adequately reflect the complex interactions and tradeoffs associated with the many new, and sometimes conflicting, design options. The process will enable the applications to solve problems they currently can’t.
Co-design targets crosscutting algorithmic methods that capture the most common patterns of computation and communication, known as motifs, in ECP applications.
To concentrate on the motifs, ECP has five co-design centers.
CODAR: Co-Design for Online Data Analysis and Reduction at the Exascale
Addresses the growing disparity between simulation needs and input/output rates that makes performing offline analysis infeasible
COPA: Co-Design Center for Particle Applications
Focuses on four submotifs: short-range particle-particle (e.g., molecular dynamics [MD] and smoothed particle hydrodynamics), long-range particle-particle (e.g., electrostatic and gravitational), particle-in-cell, and additional sparse matrix and graph operations of linear-scaling MD
AMReX: Block-Structured AMR Co-Design Center
Provides a new block-structured adaptive mesh refinement (AMR) framework for solving systems of nonlinear partial differential equations for a variety of US Department of Energy applications
CEED: Center for Efficient Exascale Discretizations
Aims to develop finite element (FE) discretization libraries to enabled unstructured partial differential equation-based applications to take full advantage of exascale resources and implement complicated FE machinery on coming exascale hardware
ExaGraph: Co-Design Center for GraphEx
Uses combinatorial kernels—key examples of which are smart power grid, computational biology, computational chemistry, wind energy, and national security—that are crucial in chosen application areas
Leverages the revolution in what is variously termed machine learning, statistical learning, computational learning, and artificial intelligence. New machine learning technologies can have profound implications for computational and experimental science and engineering and thus for the exascale computing systems that the Department of Energy is developing to support those disciplines.