Optimizations of the eigensolvers in the ELPA library
Autor: | Karsten Reuter, Andreas Marek, Hagen-Henrik Kowalski, Pavel Kus, Simone Swantje Köcher, Christoph Scheurer, Hermann Lederer, Christian Carbogno, Matthias Scheffler |
---|---|
Jazyk: | angličtina |
Rok vydání: | 2019 |
Předmět: |
FOS: Computer and information sciences
010304 chemical physics Computer Networks and Communications Computer science Parallel computing Solver 01 natural sciences Computer Graphics and Computer-Aided Design Hermitian matrix Field (computer science) Theoretical Computer Science Instruction set Artificial Intelligence Hardware and Architecture 0103 physical sciences Scalability Path (graph theory) Mathematical software Computer Science - Mathematical Software SIMD 010306 general physics Mathematical Software (cs.MS) Software Eigenvalues and eigenvectors |
Zdroj: | Parallel Computing |
Popis: | The solution of (generalized) eigenvalue problems for symmetric or Hermitian matrices is a common subtask of many numerical calculations in electronic structure theory or materials science. Depending on the scientific problem, solving the eigenvalue problem can easily amount to a sizeable fraction of the whole numerical calculation, and quite often is even the dominant part by far. For researchers in the field of computational materials science, an efficient and scalable solution of the eigenvalue problem is thus of major importance. The ELPA-library (Eigenvalue SoLvers for Petaflop-Applications) is a well-established dense direct eigenvalue solver library, which has proven to be very efficient and scalable up to very large core counts. It is in a wide-spread production use on a large variety of HPC systems worldwide, and is applied by many codes in the field of materials science. In this paper, we describe the latest optimizations of the ELPA-library for new HPC architectures of the Intel Skylake processor family with an AVX-512 SIMD instruction set, or for HPC systems accelerated with recent GPUs. Apart from those direct hardware-related optimizations, we also describe a complete redesign of the API in a modern modular way, which, apart from a much simpler and more flexible usability, leads to a new path to access system-specific performance optimizations. In order to ensure optimal performance for a particular scientific setting or a specific HPC system, the new API allows the user to influence in a straightforward way the internal details of the algorithms and of performance-critical parameters used in the ELPA-library. On top of that, we introduce an autotuning functionality, which allows for finding the best settings in a self-contained automated way, without the need of much user effort. In situations where many eigenvalue problems with similar settings have to be solved consecutively, the autotuning process of the ELPA-library can be done “on-the-fly”, without the need of preceding the simulation with an “artificial” autotuning step. Practical applications from materials science which rely on reaching a numerical convergence limit by so-called self-consistency iterations can profit from the on-the-fly autotuning. On some examples of scientific interest, simulated with the FHI-aims application, the advantages of the latest optimizations of the ELPA-library are demonstrated. |
Databáze: | OpenAIRE |
Externí odkaz: |