performance and scalability of the GPU-ELPA2 solver by a set of benchmarks on two GPU-accelerated computers, namely the Talos cluster at Max Planck Computing and Data Facility in Garching, Germany, based on Intel Xeon Gold CPUs and NVIDIA Volta GPUs, and the Summit supercomputer at Oak Ridge National Laboratory in Tennessee, USA, based on IBM POWER9 CPUs and NVIDIA Volta GPUs.

Two-Stage Tridiagonalization in ELPA2 {#sec:review_2stage}
=====================================

Overview of the Two-Stage Tridiagonalization {#subsec:cpu_2stage}
--------------------------------------------

The textbook procedure [@numerical_press_2007; @matrix_golub_2013] to solve a dense generalized eigenproblem, like the one in Eq. \[eq:gevp\], first computes the Cholesky factorization of $\boldsymbol{S}$ $$\label{eq:cholesky}
\boldsymbol{S} = \boldsymbol{L} \boldsymbol{L}^* ,$$

then uses $\boldsymbol{L}$ to transform Eq. \[eq:gevp\] to a standard eigenproblem $$\label{eq:evp}
\boldsymbol{\tilde{H}} \boldsymbol{\tilde{C}} = \boldsymbol{\tilde{C}} \boldsymbol{\Sigma} .$$

$\boldsymbol{\tilde{H}}$ is $$\label{eq:gevp2evp}
\boldsymbol{\tilde{H}} = \boldsymbol{L}^{-1} \boldsymbol{H} (\boldsymbol{L}^*)^{-1} ,$$

and the eigenvectors $\boldsymbol{\tilde{C}}$ must be back-transformed in order to retrieve the eigenvectors of Eq. \[eq:gevp\], i.e. $$\label{eq:evp2gevp}
\boldsymbol{C} = (\boldsymbol{L}^*)^{-1} \boldsymbol{\tilde{C}} .$$

The direct solution of Eq. \[eq:evp\] is based on tridiagonalization, that is, the full matrix $\boldsymbol{\tilde{H}}$ is transformed to a tridiagonal matrix $\boldsymbol{T}$. This is typically accomplished by individual Householder transformations, which take the shape of matrix-vector operations. Eigenvalues and eigenvectors of $\boldsymbol{T}$ can be easily 