Optimal combination of kernel-parallelization strategies

Determine which combination of loop fusion, loop permutation, horizontal parallelization, and vertical parallelization strategies should be selected within the DSLHyPE compiler to optimize the execution of hyperbolic PDE compute kernels.

Background

DSLHyPE represents the stages of a hyperbolic PDE compute kernel as a sequence of nested loops. This representation does not exploit all potential concurrency among the stages, although loop fusion, loop permutation, and related transformations may expose additional parallelism and improve runtime.

The paper discusses horizontal and vertical parallelization as alternative ways to organize this concurrency and notes that the authors’ manual SYCL-based arrangements could be transferred into compiler optimization passes. The unresolved issue is how to choose among the large number of possible combinations of these transformations, since different choices may affect parallelism and performance in competing ways.

References

It is clear that our manual arrangements (written in SYCL) could be moved into compiler optimization passes, but which combination of different approaches within the vast search space to pick remains an open problem.

DSLHyPE-a DSL kernel language for the Exascale Hyperbolic PDE Engine ExaHyPE  (2608.19273 - Stokes et al., 18 Aug 2026) in Section 5.4, “Kernel parallelization and orchestration”