Parallel Algorithms for Hierarchical Nucleus Decomposition (2306.08623v2)
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.
- Esra Akbas and Peixiang Zhao. 2017. Truss-Based Community Search: A Truss-Equivalence Based Indexing Approach. Proc. VLDB Endow. 10, 11 (Aug. 2017), 1298–1309.
- Distributed k-Core Decomposition and Maintenance in Large Dynamic Graphs. In ACM International Conference on Distributed and Event-Based Systems. 161–168.
- Gary D Bader and Christopher WV Hogue. 2003. An Automated Method for Finding Molecular Complexes in Large Protein Interaction Networks. BMC Bioinformatics 4, 1 (2003), 1–27.
- High-Performance Parallel Graph Coloring with Strong Guarantees on Work, Depth, and Quality. In ACM/IEEE International Conference for High Performance Computing, Networking, Storage and Analysis (SC).
- Exploration of Fine-Grained Parallelism for Load Balancing Eager k-Truss on GPU and CPU. In IEEE High Performance Extreme Computing Conference (HPEC). 1–7.
- Brief Announcement: ParlayLib – A Toolkit for Parallel Algorithms on Shared-Memory Multicore Machines. In ACM Symposium on Parallelism in Algorithms and Architectures (SPAA).
- Robert D. Blumofe and Charles E. Leiserson. 1999. Scheduling Multithreaded Computations by Work Stealing. J. ACM 46, 5 (Sept. 1999), 720–748.
- Accelerating Truss Decomposition on Heterogeneous Processors. Proc. VLDB Endow. 13, 10 (June 2020), 1751–1764.
- Distributed Algorithms for k-Truss Decomposition. In IEEE International Conference on Big Data (BigData). 471–480.
- Norishige Chiba and Takao Nishizeki. 1985. Arboricity and Subgraph Listing Algorithms. SIAM J. Comput. 14, 1 (Feb. 1985), 210–223.
- Hierarchical Core Decomposition in Parallel: From Construction to Subgraph Search. In IEEE International Conference on Data Engineering (ICDE). 1138–1151.
- Jonathan Cohen. 2008. Trusses: Cohesive Subgraphs for Social Network Analysis. National Security Agency Technical Report 16, 3.1 (2008).
- Ye Conghuan. 2011. Dense Subgroup Identifying in Social Network. In International Conference on Advances in Social Networks Analysis and Mining. 555–556.
- Discovering k𝑘kitalic_k-Trusses in Large-Scale Networks. In IEEE High Performance Extreme Computing Conference (HPEC). 1–6.
- Introduction to Algorithms (3. ed.). MIT Press.
- Julienne: A Framework for Parallel Graph Algorithms Using Work-efficient Bucketing. In ACM Symposium on Parallelism in Algorithms and Architectures (SPAA). 293–304.
- Differential Privacy from Locally Adjustable Graph Algorithms: k𝑘kitalic_k-Core Decomposition, Low Out-Degree Ordering, and Densest Subgraphs. In IEEE Annual Symposium on Foundations of Computer Science. 754–765.
- Nucleus Decomposition in Probabilistic Graphs: Hardness and Algorithms. In IEEE International Conference on Data Engineering (ICDE). 218–231.
- Efficient Algorithms for Densest Subgraph Discovery. Proc. VLDB Endow. 12, 11 (July 2019), 1719–1732.
- Martin Farach-Colton and Meng-Tsung Tsai. 2014. Computing the Degeneracy of Large Graphs. In Latin American Symposium on Theoretical Informatics. 250–260.
- MotifCut: Regulatory Motifs Finding with Maximum Density Subgraphs. Bioinformatics 22, 14 (2006), e150–e157.
- Hillel Gazit. 1991. An Optimal Randomized Parallel Algorithm for Finding Connected Components in a Graph. SIAM J. Comput. 20, 6 (1991), 1046–1067.
- Improved Parallel Algorithms for Density-Based Network Clustering. In Proceedings of the 36th International Conference on Machine Learning. 2201–2210.
- Discovering Large Dense Subgraphs in Massive Graphs. In Proc. VLDB Endow. 721–732.
- Towards a Theory of Nearly Constant Time Parallel Algorithms. In IEEE Symposium on Foundations of Computer Science (FOCS). 698–710.
- Faster Parallel Core Maintenance Algorithms in Dynamic Graphs. IEEE Transactions on Parallel and Distributed Systems (TPDS) 31, 6 (2020), 1287–1300.
- Querying k-Truss Community in Large and Dynamic Graphs. In ACM SIGMOD International Conference on Management of Data. 1311–1322.
- Approximate Closest Community Search in Networks. Proc. VLDB Endow. 9, 4 (Dec. 2015), 276–287.
- Efficient Algorithms for Parallel Bi-core Decomposition. In Symposium on Algorithmic Principles of Computer Systems (APOCS). 17–32.
- J. Jaja. 1992. Introduction to Parallel Algorithms. Addison-Wesley Professional.
- Siddhartha V. Jayanti and Robert E. Tarjan. 2016. A Randomized Concurrent Algorithm for Disjoint Set Union. In ACM Symposium on Principles of Distributed Computing (PODC). 75–82.
- Core Maintenance in Dynamic Graphs: A Parallel Approach Based on Matching. IEEE Transactions on Parallel and Distributed Systems (TPDS) 29, 11 (2018), 2416–2428.
- H. Kabir and K. Madduri. 2017a. Parallel k𝑘kitalic_k-Core Decomposition on Multicore Platforms. In IEEE International Parallel and Distributed Processing Symposium Workshops (IPDPSW). 1482–1491.
- Humayun Kabir and Kamesh Madduri. 2017b. Parallel k-Truss Decomposition on Multicore Systems. In IEEE High Performance Extreme Computing Conference (HPEC). 1–7.
- k-Core Decomposition of Large Networks on a Single PC. Proc. VLDB Endow. 9, 1 (2015), 13–23.
- RECEIPT: REfine CoarsE-grained IndePendent Tasks for Parallel Tip decomposition of Bipartite Graphs. Proc. VLDB Endow. 14, 3 (2020), 404–417.
- Jure Leskovec and Andrej Krevl. 2019. SNAP Datasets: Stanford Large Network Dataset Collection. http://snap.stanford.edu/data.
- Efficient Core Maintenance in Large Dynamic Graphs. IEEE Transactions on Knowledge & Data Engineering (TKDE) 26, 10 (oct 2014), 2453–2465.
- Hierarchical Core Maintenance on Large Dynamic Graphs. Proc. VLDB Endow. 14, 5 (2021), 757–770.
- Efficient (α𝛼\alphaitalic_α, β𝛽\betaitalic_β)-Core Computation in Bipartite Graphs. Proc. VLDB Endow. 29, 5 (2020), 1075–1099.
- Parallel Batch-Dynamic Algorithms for k𝑘kitalic_k-Core Decomposition and Related Graph Problems. In ACM Symposium on Parallelism in Algorithms and Architectures. 191–204.
- Linear Algebraic Formulation of Edge-Centric k-Truss Algorithms with Adjacency Matrices. In IEEE High Performance Extreme Computing Conference (HPEC). 1–7.
- Batch Processing for Truss Maintenance in Large Dynamic Graphs. IEEE Transactions on Computational Social Systems 7, 6 (2020), 1435–1446.
- Distributed Algorithm for Truss Maintenance in Dynamic Graphs. In Parallel and Distributed Computing, Applications and Technologies (PDCAT). 104–115.
- David W. Matula and Leland L. Beck. 1983. Smallest-Last Ordering and Clustering and Graph Coloring Algorithms. J. ACM 30, 3 (July 1983).
- Distributed k-Core Decomposition. IEEE Transactions on Parallel and Distributed Systems (TPDS) 24, 2 (2012), 288–300.
- Ahmet Erdem Sariyüce. 2021. Motif-Driven Dense Subgraph Discovery in Directed and Labeled Networks. In The Web Conference (WWW). 379–390.
- Incremental k-Core Decomposition: Algorithms and Evaluation. Proc. VLDB Endow. 25, 3 (2016), 425–447.
- Ahmet Erdem Sariyüce and Ali Pinar. 2016. Fast Hierarchy Construction for Dense Subgraphs. Proc. VLDB Endow. 10, 3 (Nov. 2016), 97–108.
- Ahmet Erdem Sariyüce and Ali Pinar. 2018. Peeling Bipartite Networks for Dense Subgraph Discovery. In ACM International Conference on Web Search and Data Mining (WSDM). 504–512.
- Local Algorithms for Hierarchical Dense Subgraph Discovery. Proc. VLDB Endow. 12, 1 (2018), 43–56.
- Nucleus Decompositions for Identifying Hierarchy of Dense Subgraphs. ACM Trans. Web 11, 3, Article 16 (July 2017), 16:1–16:27 pages.
- Stephen B. Seidman. 1983. Network Structure and Minimum Degree. Soc. Networks 5, 3 (1983), 269 – 287.
- Parallel Clique Counting and Peeling Algorithms. In SIAM Conference on Applied and Computational Discrete Algorithms (ACDA). 135–146.
- Theoretically and Practically Efficient Parallel Nucleus Decomposition. Proc. VLDB Endow. 15, 3 (feb 2022), 583–596.
- Jessica Shi and Julian Shun. 2020. Parallel Algorithms for Butterfly Computations. In SIAM Symposium on Algorithmic Principles of Computer Systems (APoCS). 16–30.
- Truss Decomposition on Shared-Memory Parallel Systems. In IEEE High Performance Extreme Computing Conference (HPEC). 1–6.
- Fully Dynamic Approximate k𝑘kitalic_k-Core Decomposition in Hypergraphs. ACM Trans. Knowl. Discov. Data (TKDD) 14, 4, Article 39 (May 2020).
- Charalampos Tsourakakis. 2015. The k𝑘kitalic_k-Clique Densest Subgraph Problem. In The Web Conference (WWW). 1122–1132.
- Liptia Venica and Gusti Ayu Putri Saptawati. 2021. Finding Dense Subgraph for Community Detection on Social Network Based on Information Diffusion. In International Conference on Data and Software Engineering (ICoDSE). 1–6.
- Jia Wang and James Cheng. 2012. Truss Decomposition in Massive Networks. Proc. VLDB Endow. 5, 9 (May 2012), 812–823.
- Efficient Bitruss Decomposition for Large-Scale Bipartite Graphs. In IEEE International Conference on Data Engineering (ICDE). 661–672.
- I/O Efficient Core Graph Decomposition: Application to Degeneracy Ordering. IEEE Transactions on Knowledge & Data Engineering (TKDE) 31, 01 (jan 2019), 75–90.
- Yang Zhang and Srinivasan Parthasarathy. 2012. Extracting Analyzing and Visualizing Triangle k-Core Motifs within Networks. In IEEE International Conference on Data Engineering (ICDE). 1049–1060.
- Yikai Zhang and Jeffrey Xu Yu. 2019. Unboundedness and Efficiency of Truss Maintenance in Evolving Graphs. In ACM SIGMOD International Conference on Management of Data. 1024–1041.
- A Fast Order-Based Approach for Core Maintenance. In IEEE International Conference on Data Engineering (ICDE). 337–348.
- Feng Zhao and Anthony KH Tung. 2012. Large Scale Cohesive Subgraphs Discovery for Social Network Visual Analysis. Proc. VLDB Endow. 6, 2 (2012), 85–96.
- Zhaonian Zou. 2016. Bitruss Decomposition of Bipartite Graphs. In Database Systems for Advanced Applications (DASFAA). 218–233.