Acceleration Techniques for FETI Solvers for GPU Accelerators
Radim Vavřík, Lubomı́r Řı́ha · 2018
In this paper we evaluate several approaches to performing simultaneous matrix-vector multiplication of large numbers of matrices on a GPU accelerator. The goal of this evaluation is to develop efficient techniques for massively parallel Hybrid Total FETI solvers in our ESPRESO library. FETI solvers generally use sparse matrices. To overcome this we previously proposed the Local Schur Complement method for FETI to convert sparse matrices to their dense representation, without significantly increasing the memory requirements of the GPU accelerator. We selected the following techniques: standard GEMV, CUDA streams, dynamic parallelism, batched GEMM, BSR GEMV and HYB GEMV. Our results show that (i) if a FETI solver contains a large number of small matrices i.e. there is large number of small subdomains, then the best approach is dynamic parallelism; (ii) if there is small number of large subdomains, then the optimal approaches are dynamic parallelism and CUDA streams. Please note that Local Schur Complement method in conjunction with Hybrid Total FETI perform better with smaller subdomains.