JSweep: A Patch-centric Data-driven Approach for Parallel Sweeps on Large-scale Meshes

Jie Yan, Yang Zhang, Aiqing Zhang, Zeyao Mo · 2023

In mesh-based numerical simulations, sweep is an important computation pattern. During sweep on meshes, computations on cells are strictly ordered by data dependencies in given directions. Due to this order constraint, parallelizing sweep is challenging, especially for unstructured and deforming meshes. Meanwhile, recent high-fidelity multi-physics simulations of particle transport, including nuclear reactor and inertial confinement fusion, require sweeps on large scale meshes with billions of cells and hundreds of directions. In this paper, we present JSweep, a parallel data-driven framework integrated in the JAxMIN infrastructures. The essential of JSweep is a general patch-centric data-driven abstraction, coupled with a high performance runtime system leveraging hybrid parallelism of MPI+threads and achieving dynamic communication on contemporary multi-core clusters. Built on JSweep, we implement a representative data-driven algorithm, Sn transport, featuring optimizations of vertex clustering, multi-level priority strategy and patch-angle parallelism. Experimental evaluation with two real-world applications on structured and unstructured meshes respectively, demonstrates that JSweep can scale to tens of thousands of processor cores with reasonable parallel efficiency.

Read the paper · More papers on PaperTik