Task-Based Programming for Adaptive Mesh Refinement in Compressible Flow Simulations
Anjiang Wei, Hang Song, Mert Hidayetoglu, Elliott Slaughter, Sanjiva K. Lele, Alex Aiken

TL;DR
This paper presents a novel task-based programming approach for adaptive mesh refinement in compressible flow simulations, achieving significant speedups through task fusion and GPU kernel automation.
Contribution
It introduces a new AMR solver using Regent that addresses dynamic data management and task overhead, with automated GPU kernel generation for improved performance.
Findings
18x speedup from task fusion
9.7x speedup from GPU kernel automation
Effective simulation of Euler equations in compressible flows
Abstract
High-order solvers for compressible flows are vital in scientific applications. Adaptive mesh refinement (AMR) is a key technique for reducing computational cost by concentrating resolution in regions of interest. In this work, we develop an AMR-based numerical solver using Regent, a high-level programming language for the Legion programming model. We address several challenges associated with implementing AMR in Regent. These include dynamic data structures for patch refinement/coarsening, mesh validity enforcement, and reducing task launch overhead via task fusion. Experimental results show that task fusion achieves 18x speedup, while automated GPU kernel generation via simple annotations yields 9.7x speedup for the targeted kernel. We demonstrate our approach through simulations of two canonical compressible flow problems governed by the Euler equations.
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.
