A Mixed-Precision Algorithm for the Solution of Lyapunov Equations on Hybrid CPU-GPU Platforms
Max-Planck-Institute for Dynamics of Complex Technical Systems, Sandtorstr. 1, D-39106 Magdeburg (Germany)
Parallel Computing (28 December 2010)
We describe a hybrid Lyapunov solver based on the matrix sign function, where the intensive parts of the computation are accelerated using a graphics processor (GPU) while executing the remaining operations on a general-purpose multi-core processor (CPU). The initial stage of the iteration operates in single-precision arithmetic, returning a low-rank factor of an approximate solution. As the main computation in this stage consists of explicit matrix inversions, we suggest a hybrid implementation of Gauß-Jordan elimination using look-ahead to overlap computations on GPU and CPU.To improve the approximate solution, we introduce an iterative refinement procedure that allows to cheaply recover full double-precision accuracy. In contrast to earlier approaches to iterative refinement for Lyapunov equations, this approach retains the low-rank factorization structure of the approximate solution. The combination of the two stages results in a mixed-precision algorithm, that exploits the capabilities of both general-purpose CPUs and many-core GPUs and overlaps critical computations. Numerical experiments using real-world data and a platform equipped with two INTEL Xeon QuadCore processors and an NVIDIA Tesla C1060 show a significant efficiency gain of the hybrid method compared to a classical CPU implementation.