The objective of SLATE (Software for Linear Algebra Targeting Exascale) is to converge and consolidate nearly ten years of algorithmic and technology innovation in dense linear algebra (DLA) software into SLATE, a DLA library that integrates seamlessly into the ECP ecosystem and enables a wide range of applications to fully exploit the power of near-exascale and exascale systems as soon as they come online. It will deliver routines for solving systems of linear equations, least-squares problems, symmetric and non-symmetric eigenvalue problems, and singular value problems. Similar functionality will be provided for real and complex matrices, in both single and double precision. Mixed-precision iterative refinement solvers and explicit matrix inversion routines will also be provided.
SLATE will offer a modern replacement for ScaLAPACK. ScaLAPACK is a numerical software library of dense linear algebra routines essential to the field of scientific and engineering computing, with good asymptotic scaling properties, but lacking support for modern node architectures based on multicore processors and hardware accelerators, and characterized by complex memory hierarchies. SLATE will allow for the development of multicore and accelerator capabilities by leveraging recent progress and ongoing efforts in mainstream programming models (MPI 3 and beyond, OpenMP 4 and beyond, OpenACC, OpenCL, etc.), and runtime scheduling systems (PaRSEC, Legion).