Table of Contents
Fetching ...

Parallel Algorithms for Hierarchical Nucleus Decomposition

Jessica Shi, Laxman Dhulipala, Julian Shun

TL;DR

The paper tackles parallel construction of the nucleus decomposition hierarchy for fixed (r,s) by introducing arb-nucleus-hierarchy, a work-efficient algorithm with $O(m\alpha^{s-2})$ total work and $O(k \log n + \rho_{(r,s)}(G) \log n + \log^2 n)$ span, and by proposing an approximate variant with a $(\binom{s}{r}+\varepsilon)$-approximation and polylogarithmic span. It innovates with interleaving the hierarchy build with coreness computation, and leverages a concurrent union-find in novel ways to generate the hierarchy while keeping space and synchronization low. The authors provide practical implementations (including efficient link and post-processing), and demonstrate substantial speedups over the state-of-the-art sequential hierarchy algorithm, plus favorable scalability and competitive accuracy for the approximate method on real-world graphs up to hundreds of millions of edges. The results indicate that the hierarchy-enabled nucleus decompositions are both practical and scalable for large graphs, enabling fast discovery of multi-resolution dense substructures. Overall, the work advances parallel graph mining by delivering the first work-efficient hierarchy construction, robust approximations, and scalable, memory-conscious implementations with publicly available code.

Abstract

Nucleus decompositions have been shown to be a useful tool for finding dense subgraphs. The coreness value of a clique represents its density based on the number of other cliques it is adjacent to. One useful output of nucleus decomposition is to generate a hierarchy among dense subgraphs at different resolutions. However, existing parallel algorithms for nucleus decomposition do not generate this hierarchy, and only compute the coreness values. This paper presents a scalable parallel algorithm for hierarchy construction, with practical optimizations, such as interleaving the coreness computation with hierarchy construction and using a concurrent union-find data structure in an innovative way to generate the hierarchy. We also introduce a parallel approximation algorithm for nucleus decomposition, which achieves much lower span in theory and better performance in practice. We prove strong theoretical bounds on the work and span (parallel time) of our algorithms. On a 30-core machine with two-way hyper-threading on real-world graphs, our parallel hierarchy construction algorithm achieves up to a 58.84x speedup over the state-of-the-art sequential hierarchy construction algorithm by Sariyuce et al. and up to a 30.96x self-relative parallel speedup. On the same machine, our approximation algorithm achieves a 3.3x speedup over our exact algorithm, while generating coreness estimates with a multiplicative error of 1.33x on average.

Parallel Algorithms for Hierarchical Nucleus Decomposition

TL;DR

The paper tackles parallel construction of the nucleus decomposition hierarchy for fixed (r,s) by introducing arb-nucleus-hierarchy, a work-efficient algorithm with total work and span, and by proposing an approximate variant with a -approximation and polylogarithmic span. It innovates with interleaving the hierarchy build with coreness computation, and leverages a concurrent union-find in novel ways to generate the hierarchy while keeping space and synchronization low. The authors provide practical implementations (including efficient link and post-processing), and demonstrate substantial speedups over the state-of-the-art sequential hierarchy algorithm, plus favorable scalability and competitive accuracy for the approximate method on real-world graphs up to hundreds of millions of edges. The results indicate that the hierarchy-enabled nucleus decompositions are both practical and scalable for large graphs, enabling fast discovery of multi-resolution dense substructures. Overall, the work advances parallel graph mining by delivering the first work-efficient hierarchy construction, robust approximations, and scalable, memory-conscious implementations with publicly available code.

Abstract

Nucleus decompositions have been shown to be a useful tool for finding dense subgraphs. The coreness value of a clique represents its density based on the number of other cliques it is adjacent to. One useful output of nucleus decomposition is to generate a hierarchy among dense subgraphs at different resolutions. However, existing parallel algorithms for nucleus decomposition do not generate this hierarchy, and only compute the coreness values. This paper presents a scalable parallel algorithm for hierarchy construction, with practical optimizations, such as interleaving the coreness computation with hierarchy construction and using a concurrent union-find data structure in an innovative way to generate the hierarchy. We also introduce a parallel approximation algorithm for nucleus decomposition, which achieves much lower span in theory and better performance in practice. We prove strong theoretical bounds on the work and span (parallel time) of our algorithms. On a 30-core machine with two-way hyper-threading on real-world graphs, our parallel hierarchy construction algorithm achieves up to a 58.84x speedup over the state-of-the-art sequential hierarchy construction algorithm by Sariyuce et al. and up to a 30.96x self-relative parallel speedup. On the same machine, our approximation algorithm achieves a 3.3x speedup over our exact algorithm, while generating coreness estimates with a multiplicative error of 1.33x on average.
Paper Structure (16 sections, 4 theorems, 10 figures, 1 table, 5 algorithms)

This paper contains 16 sections, 4 theorems, 10 figures, 1 table, 5 algorithms.

Key Result

theorem 1

arb-nucleus-hierarchy computes the $(r,s)$ nucleus decomposition hierarchy in $O(m\alpha^{s-2} )$ expected work and $O(k \log n + \rho_{(r,s)}(G) \log n + \log^2 n)$ span w.h.p., where $\rho_{(r,s)}(G)$ is the $(r,s)$ peeling complexity and $k$ is the maximum $(r, s)$-clique core number.

Figures (10)

  • Figure 1: An example of the $(1, 3)$ nucleus hierarchy.
  • Figure 2: An example of the $L_i$ data structures maintained by arb-nucleus-hierarchy while computing the $(1,3)$-nucleus hierarchy on the graph in Figure \ref{['fig:graph']}. For each round $i$ of the hierarchy construction, the connected components of $H$ and the $ID_{i}$ table used to construct $H$ is shown (except $ID_4$, which maps every $r$-clique to itself).
  • Figure 3: An example of the intermediate hierarchy trees $T$ after each round $i$ in arb-nucleus-hierarchy, while computing the $(1,3)$-nucleus hierarchy on the graph in Figure \ref{['fig:graph']}.
  • Figure 4: An example of the $uf$ and $L$ data structures maintained by link-efficient when computing the $(1,3)$-nucleus hierarchy on the graph in Figure \ref{['fig:graph']}. The data structures are shown after the third and fourth rounds of peeling in arb-nucleus-decomp-hierarchy-framework, and after intermediate calls to link-efficient within the fourth round.
  • Figure 5: An example of the $(1,3)$-nucleus hierarchy tree on the graph in Figure \ref{['fig:graph']}, constructed by construct-tree-efficient. Stage 1 shows an intermediate tree constructed in the construct-tree-efficient subroutine, and Stage 2 depicts the final hierarchy tree.
  • ...and 5 more figures

Theorems & Definitions (4)

  • theorem 1
  • lemma 1
  • lemma 2
  • theorem 2