DuMato: An Efficient Warp-Centric Subgraph Enumeration System for GPU

Samuel Ferraz,Vinicius Dias,Carlos H.C. Teixeira,Srinivasan Parthasarathy,George Teodoro,Wagner Meira
DOI: https://doi.org/10.1016/j.jpdc.2024.104903
IF: 4.542
2024-04-25
Journal of Parallel and Distributed Computing
Abstract:Subgraph enumeration is a heavy-computing procedure that lies at the core of Graph Pattern Mining (GPM) algorithms, whose goal is to extract subgraphs from larger graphs according to a given property. Scaling GPM algorithms for GPUs is challenging due to irregularity, high memory demand, and non-trivial choice of enumeration paradigms. In this work we propose a depth-first-search subgraph exploration strategy (DFS-wide) to improve the memory locality and access patterns across different enumeration paradigms. We design a warp-centric workflow to the problem that reduces divergences and ensures that accesses to graph data are coalesced. A weight-based dynamic workload redistribution is also proposed to mitigate load imbalance. We put together these strategies in a system called DuMato, allowing efficient implementations of several GPM algorithms via a common set of GPU primitives. Our experiments show that DuMato's optimizations are effective and that it enables exploring larger subgraphs when compared to state-of-the-art systems.
computer science, theory & methods
What problem does this paper attempt to address?