Vectorization and Minimization of Memory Footprint for Linear High-Order Discontinuous Galerkin Schemes

被引:0
|
作者
Gallard, Jean-Matthieu [1 ]
Rannabauer, Leonhard [1 ]
Reinarz, Anne [1 ]
Bader, Michael [1 ]
机构
[1] Tech Univ Munich, Dept Informat, Munich, Germany
关键词
ExaHyPE; Code Generation; High-Order Discontinuous Galerkin; ADER; Hyperbolic PDE Systems; Vectorization; Array-of-Struct-of-Array;
D O I
10.1109/IPDPSW50202.2020.00126
中图分类号
TP3 [计算技术、计算机技术];
学科分类号
0812 ;
摘要
We present a sequence of optimizations to the performance-critical compute kernels of the high-order discontinuous Galerkin solver of the hyperbolic PDE engine ExaHyPE - successively tackling bottlenecks due to SIMD operations, cache hierarchies and restrictions in the software design. Starting from a generic scalar implementation of the numerical scheme, our first optimized variant applies state-of-the-art optimization techniques by vectorizing loops, improving the data layout and using Loop-over-GEMM to perform tensor contractions via highly optimized matrix multiplication functions provided by the LIBXSMM library. We show that memory stalls due to a memory footprint exceeding our L2 cache size hindered the vectorization gains. We therefore introduce a new kernel that applies a sum factorization approach to reduce the kernel's memory footprint and improve its cache locality. With the L2 cache bottleneck removed, we were able to exploit additional vectorization opportunities, by introducing a hybrid Array-of-Structure-of-Array data layout that solves the data layout conflict between matrix multiplications kernels and the point-wise functions to implement PDE-specific terms. With this last kernel, evaluated in a benchmark simulation at high polynomial order, only 2% of the floating point operations are still performed using scalar instructions and 22.5% of the available performance is achieved.
引用
收藏
页码:711 / 720
页数:10
相关论文
共 50 条
  • [21] Building blocks for arbitrary high order discontinuous Galerkin schemes
    Dumbser, Michael
    Munz, Claus-Dieter
    JOURNAL OF SCIENTIFIC COMPUTING, 2006, 27 (1-3) : 215 - 230
  • [22] Building Blocks for Arbitrary High Order Discontinuous Galerkin Schemes
    Michael Dumbser
    Claus-Dieter Munz
    Journal of Scientific Computing, 2006, 27 : 215 - 230
  • [23] High-order accurate entropy stable nodal discontinuous Galerkin schemes for the ideal special relativistic magnetohydrodynamics
    Duan, Junming
    Tang, Huazhong
    JOURNAL OF COMPUTATIONAL PHYSICS, 2020, 421
  • [24] Kershaw closures for linear transport equations in slab geometry II: High-order realizability-preserving discontinuous-Galerkin schemes
    Schneider, Florian
    JOURNAL OF COMPUTATIONAL PHYSICS, 2016, 322 : 920 - 935
  • [25] Controlling oscillations in high-order Discontinuous Galerkin schemes using artificial viscosity tuned by neural networks
    Discacciati, Niccolo
    Hesthaven, Jan S.
    Ray, Deep
    JOURNAL OF COMPUTATIONAL PHYSICS, 2020, 409 (409)
  • [26] Efficient high-order discontinuous Galerkin schemes with first-order hyperbolic advection-diffusion system approach
    Mazaheri, Alireza
    Nishikawa, Hiroaki
    JOURNAL OF COMPUTATIONAL PHYSICS, 2016, 321 : 729 - 754
  • [27] A Parallel High-Order Discontinuous Galerkin Shallow Water Model
    Eskilsson, Claes
    El-Khamra, Yaakoub
    Rideout, David
    Allen, Gabrielle
    Chen, Q. Jim
    Tyagi, Mayank
    COMPUTATIONAL SCIENCE - ICCS 2009, PART I, 2009, 5544 : 63 - +
  • [28] Efficiency of high-order elements for continuous and discontinuous Galerkin methods
    Huerta, Antonio
    Angeloski, Aleksandar
    Roca, Xevi
    Peraire, Jaime
    INTERNATIONAL JOURNAL FOR NUMERICAL METHODS IN ENGINEERING, 2013, 96 (09) : 529 - 560
  • [29] High-order discontinuous Galerkin methods for coastal hydrodynamics applications
    Brus, S. R.
    Wirasaet, D.
    Kubatko, E. J.
    Westerink, J. J.
    Dawson, C.
    COMPUTER METHODS IN APPLIED MECHANICS AND ENGINEERING, 2019, 355 : 860 - 899
  • [30] An implicit high-order hybridizable discontinuous Galerkin method for linear convection-diffusion equations
    Nguyen, N. C.
    Peraire, J.
    Cockburn, B.
    JOURNAL OF COMPUTATIONAL PHYSICS, 2009, 228 (09) : 3232 - 3254