Code Generation for Octree-Based Multigrid Solvers with Fused Higher-Order Interpolation and Communication - Angersbach, Richard; Köstler, Harald; Kuckuk, Sebastian (Euro-Par 2024, 2024)
This paper presents a novel method designed to generate multigrid solvers optimized for octree-based software frameworks. Our approach focuses on accurately capturing local features within a domain while leveraging the efficiency inherent in multigrid techniques. We outline the essential steps involved in generating specialized kernels for local refinement and communication routines which integrate on-the-fly interpolations to seamlessly transfer information between refinement levels. The generated numerical solvers and communication routines are automatically specialized for coupling with existing implementations of complex octree data structures and algorithms that are often found in established HPC frameworks. We demonstrate the effectiveness of our method through numerical experiments with different interpolation orders as well as with large-scale benchmarks on the SuperMUC-NG cluster. A comparison against a manual reference implementation highlights the benefits of our method and code generation in general.<br
Keywords: Software Coupling Code Generation Domain-specific Language Multigrid Octree