A geometrically informed algebraic multigrid preconditioner for solving high-order finite element systems
Hari Sundar (University of Utah, USA)
We present two projects that aim to improve the linear algebra backend performance within nektar++. The first is an Algebraic Multigrid (AMG) module with support for high-order discretizations. While AMG is conventionally applied in a black-box fashion, agnostic to the underlying geometry, we use the geometric information — when available — to setup an efficient grid hierarchy. Our method, called geometrically informed algebraic multigrid (GIAMG), with minimal information of the geometry from the user, is able to set up a grid hierarchy that includes $p$-coarsening at the top grids. A major advantage of using $p$-coarsening with AMG — beyond the benefits known in the context of GMG — is the increased sparsification of coarse grid operators. We extensively evaluate GIAMG by testing on the 3D Helmholtz and incompressible Navier–Stokes operators, and demonstrate mesh-independent convergence, and excellent parallel scalability. The second project, Ada(hp)t, is an efficient and scalable distributed memory Sparse Matrix library that is tailored for for matrices arising from PDE discretization schemes such as the finite element method (FEM). Ada(hp)t enables efficient parallelization using MPI, SIMD, OpenMP, and CUDA with minimal programming effort. We present a detailed comparison of Ada(hp)t with matrix-assembled and matrix-free approaches, for structured and unstructured meshes. Our results demonstrate that Ada(hp)t achieves excellent scalability and outperforms both approaches achieving average speedups of 11x for matrix setup, 1.7x for SpMV with structured meshes, 3.6x for SpMV with unstructured meshes, and 7.5x for GPU SpMV.