Essex

Equipping sparse solvers for exascale

Book Chapter (2020)
Author(s)

Christie L. Alappat (Friedrich-Alexander-Universität Erlangen-Nürnberg)

Andreas Alvermann (Greifswald University)

Achim Basermann (Deutsches Zentrum für Luft- und Raumfahrt (DLR))

Holger Fehske (Greifswald University)

Yasunori Futamura (University of Tsukuba)

Martin Galgon (Bergische Universität Wuppertal )

Georg Hager (Friedrich-Alexander-Universität Erlangen-Nürnberg)

Sarah Huber (Bergische Universität Wuppertal )

Akira Imakura (University of Tsukuba)

Masatoshi Kawai (University of Tokyo)

Moritz Kreutzer (Friedrich-Alexander-Universität Erlangen-Nürnberg)

Bruno Lang (Bergische Universität Wuppertal )

Kengo Nakajima (University of Tokyo)

Melven Röhrig-Zöllner (Bergische Universität Wuppertal )

Tetsuya Sakurai (University of Tsukuba)

Faisal Shahzad (Friedrich-Alexander-Universität Erlangen-Nürnberg)

Jonas Thies (Deutsches Zentrum für Luft- und Raumfahrt (DLR))

Gerhard Wellein (Friedrich-Alexander-Universität Erlangen-Nürnberg)

DOI related publication
https://doi.org/10.1007/978-3-030-47956-5_7 Final published version
More Info
expand_more
Publication Year
2020
Language
English
Pages (from-to)
143-187
Publisher
Springer
Downloads counter
201

Abstract

The ESSEX project has investigated programming concepts, data structures, and numerical algorithms for scalable, efficient, and robust sparse eigenvalue solvers on future heterogeneous exascale systems. Starting without the burden of legacy code, a holistic performance engineering process could be deployed across the traditional software layers to identify efficient implementations and guide sustainable software development. At the basic building blocks level, a flexible MPI+X programming approach was implemented together with a new sparse data structure (SELL-C-σ) to support heterogeneous architectures by design. Furthermore, ESSEX focused on hardware-efficient kernels for all relevant architectures and efficient data structures for block vector formulations of the eigensolvers. The algorithm layer addressed standard, generalized, and nonlinear eigenvalue problems and provided some widely usable solver implementations including a block Jacobi–Davidson algorithm, contour-based integration schemes, and filter polynomial approaches. Adding to the highly efficient kernel implementations, algorithmic advances such as adaptive precision, optimized filtering coefficients, and preconditioning have further improved time to solution. These developments were guided by quantum physics applications, especially from the field of topological insulator- or graphene-based systems. For these, ScaMaC, a scalable matrix generation framework for a broad set of quantum physics problems, was developed. As the central software core of ESSEX, the PHIST library for sparse systems of linear equations and eigenvalue problems has been established. It abstracts algorithmic developments from low-level optimization. Finally, central ESSEX software components and solvers have demonstrated scalability and hardware efficiency on up to 256 K cores using million-way process/thread-level parallelism.