On Modifications and Performance of the Hypre BoomerAMG Library Application to Elliptic and Saddle-Point Problems
摘要
The Algebraic Multigrid Methods (AMG) on multiple Graphics Processing Units (GPUs) and their application to elliptic and saddle-point problems are considered in the paper. The main goal is to compare different implementations of this approach. The multiple GPU AMG hinges on the Hypre BoomerAMG library. The latter is incorporated into our cross-platform library, SCFD, which is based on a template metaprogramming approach. The benefit of such a design is that internal ParCSR matrix structures, partitioning of matrices and vectors, and internal buffers are all available to us in an abstract way. This allows us to maximize the performance of the BoomerAMG library by removing intermediate layers of logic and host-device copies in coordinate matrix format. We discuss and review several aspects of such a design. The library is compared against our fork of the AMGCL library on a single GPU. The problem is then considered on distributed memory machines with multiple GPUs, and its performance and acceleration are analyzed for both elliptic and saddle-point problems. Also, we examine the influence of the global numbering of variables (problem-partitioning variants) on the performance and acceleration.