High-performance Implementation of Matrix-free High-order Discontinuous Galerkin Methods
arXiv:1711.10885
Abstract
Achieving a substantial part of peak performance on todays and future high-performance computing systems is a major challenge for simulation codes. In this paper we address this question in the context of the numerical solution of partial differential equations with finite element methods, in particular the discontinuous Galerkin method applied to a convection-diffusion-reaction model problem. Assuming tensor product structure of basis functions and quadrature on cuboid meshes in a matrix-free approach a substantial reduction in computational complexity can be achieved for operator application compared to a matrix-based implementation while at the same time enabling SIMD vectorization and the use of fused-multiply-add. Close to 60\% of peak performance are obtained for a full operator evaluation on a Xeon Haswell CPU with 16 cores and speedups of several hundred (with respect to matrix-based computation) are achieved for polynomial degree seven. Excellent weak scalability on a single node as well as the roofline model demonstrate that the algorithm is fully compute-bound with a high flop per byte ratio. Excellent scalability is also demonstrated on up to 6144 cores using message passing.
arXiv commentsubmitted to SIAM SISC on 2017-11-29
Cited by in corpus (8)
- MFEM: a modular finite element methods library
- TSFC: a structure-preserving form compiler
- Efficiency of high-performance discontinuous Galerkin spectral element methods for under-resolved turbulent incompressible flows
- Hybrid multigrid methods for high-order discontinuous Galerkin discretizations
- Matrix-free multigrid block-preconditioners for higher order Discontinuous Galerkin discretisations
- A matrix-free high-order discontinuous Galerkin compressible Navier-Stokes solver: A performance comparison of compressible and incompressible formulations for turbulent incompressible flows
- Scaling to the stars -- a linearly scaling elliptic solver for -multigrid
- Multigrid preconditioners for the hybridized Discontinuous Galerkin discretisation of the shallow water equations