Automated Tiling of Unstructured Mesh Computations with Application to Seismological Modelling
Fabio Luporini, Michael Lange, Christian T. Jacobs, Gerard J. Gorman,, J. Ramanujam, Paul H. J. Kelly

TL;DR
This paper presents an automated compiler-based approach for sparse tiling of unstructured mesh computations, significantly improving data locality and performance in seismological modeling.
Contribution
It introduces a new compiler pipeline that automates sparse tiling, supports distributed parallelism, and is implemented in the SLOPE library, advancing the state-of-the-art in this area.
Findings
Achieved up to 1.28x speed-up in seismic simulations.
Developed a more efficient sparse tiling algorithm.
Enabled automation and generalization of sparse tiling techniques.
Abstract
Sparse tiling is a technique to fuse loops that access common data, thus increasing data locality. Unlike traditional loop fusion or blocking, the loops may have different iteration spaces and access shared datasets through indirect memory accesses, such as A[map[i]] -- hence the name "sparse". One notable example of such loops arises in discontinuous-Galerkin finite element methods, because of the computation of numerical integrals over different domains (e.g., cells, facets). The major challenge with sparse tiling is implementation -- not only is it cumbersome to understand and synthesize, but it is also onerous to maintain and generalize, as it requires a complete rewrite of the bulk of the numerical computation. In this article, we propose an approach to extend the applicability of sparse tiling based on raising the level of abstraction. Through a sequence of compiler passes, the…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsComputer Graphics and Visualization Techniques · Advanced Data Storage Technologies · Computational Geometry and Mesh Generation
