Papers
Topics
Authors
Recent
Gemini 2.5 Flash
Gemini 2.5 Flash
173 tokens/sec
GPT-4o
7 tokens/sec
Gemini 2.5 Pro Pro
46 tokens/sec
o3 Pro
4 tokens/sec
GPT-4.1 Pro
38 tokens/sec
DeepSeek R1 via Azure Pro
28 tokens/sec
2000 character limit reached

Cover Edge-Based Novel Triangle Counting (2403.02997v1)

Published 5 Mar 2024 in cs.DS

Abstract: Listing and counting triangles in graphs is a key algorithmic kernel for network analyses, including community detection, clustering coefficients, k-trusses, and triangle centrality. In this paper, we propose the novel concept of a cover-edge set that can be used to find triangles more efficiently. Leveraging the breadth-first search (BFS) method, we can quickly generate a compact cover-edge set. Novel sequential and parallel triangle counting algorithms that employ cover-edge sets are presented. The novel sequential algorithm performs competitively with the fastest previous approaches on both real and synthetic graphs, such as those from the Graph500 Benchmark and the MIT/Amazon/IEEE Graph Challenge. We implement 22 sequential algorithms for performance evaluation and comparison. At the same time, we employ OpenMP to parallelize 11 sequential algorithms, presenting an in-depth analysis of their parallel performance. Furthermore, we develop a distributed parallel algorithm that can asymptotically reduce communication on massive graphs. In our estimate from massive-scale Graph500 graphs, our distributed parallel algorithm can reduce the communication on a scale~36 graph by 1156x and on a scale~42 graph by 2368x. Comprehensive experiments are conducted on the recently launched Intel Xeon 8480+ processor and shed light on how graph attributes, such as topology, diameter, and degree distribution, can affect the performance of these algorithms.

Definition Search Book Streamline Icon: https://streamlinehq.com
References (43)
  1. Josh Alman and Virginia Vassilevska Williams. 2021. A refined laser method and faster matrix multiplication. In Proceedings of the 2021 ACM-SIAM Symposium on Discrete Algorithms (SODA). SIAM, 522–539.
  2. Finding and counting given length cycles. Algorithmica 17, 3 (1997), 209–223.
  3. Fast Parallel Algorithms for Counting and Listing Triangles in Big Graphs. ACM Trans. Knowl. Discov. Data 14, 1, Article 5 (Dec 2019), 34 pages. https://doi.org/10.1145/3365676
  4. David A. Bader. 2023. Fast Triangle Counting. In 2023 IEEE High Performance Extreme Computing Conference (HPEC). 1–6. https://doi.org/10.1109/HPEC58863.2023.10363539
  5. Triangle Counting Through Cover-Edges. In 2023 IEEE High Performance Extreme Computing Conference (HPEC). 1–7. https://doi.org/10.1109/HPEC58863.2023.10363465
  6. Searching for a parent instead of fighting over children: A fast breadth-first search implementation for Graph500. EECS Department, University of California, Berkeley, Tech. Rep. UCB/EECS-2011-117 (2011).
  7. Paul Burkhardt. 2017. Graphing trillions of triangles. Information Visualization 16, 3 (2017), 157–166.
  8. Paul Burkhardt. 2021. Triangle Centrality. CoRR abs/2105.00110 (2021). arXiv:2105.00110 https://arxiv.org/abs/2105.00110
  9. R-MAT: A recursive model for graph mining. In Proceedings of the 2004 SIAM International Conference on Data Mining. SIAM, 442–446.
  10. Norishige Chiba and Takao Nishizeki. 1985. Arboricity and Subgraph Listing Algorithms. SIAM J. Comput. 14, 1 (1985), 210–223. https://doi.org/10.1137/0214017
  11. Jonathan Cohen. 2008. Trusses: Cohesive subgraphs for social network analysis. National Security Agency Technical Report 16, 3.1 (2008).
  12. Jonathan Cohen. 2009. Graph twiddling in a MapReduce world. Computing in Science & Engineering 11, 4 (2009), 29–41.
  13. Introduction to algorithms. MIT press.
  14. Timothy A. Davis. 2018. Graph algorithms via SuiteSparse: GraphBLAS: triangle counting and K-truss. In 2018 IEEE High Performance Extreme Computing Conference (HPEC). 1–6. https://doi.org/10.1109/HPEC.2018.8547538
  15. ’Tri, tri again’: finding triangles and small subgraphs in a distributed setting. In International Symposium on Distributed Computing. Springer, 195–209.
  16. Sayan Ghosh and Mahantesh Halappanavar. 2020. TriC: Distributed-memory Triangle Counting by Exploiting the Graph Structure. In IEEE High Performance Extreme Computing Conference (HPEC). 1–6.
  17. PDTL: Parallel and distributed triangle listing for massive graphs. In 2015 44th International Conference on Parallel Processing. IEEE, 370–379.
  18. Graph 500 Steering Committee. 2010. The Graph500 benchmark. https://www.graph500.org
  19. William Harrod. 2020. Advanced Graphical Intelligence Logical Computing Environment (AGILE). https://www.iarpa.gov/images/PropsersDayPDFs/AGILE/AGILE_Proposers_Day_sm.pdf. Accessed: 2022–05-24.
  20. DistTC: High performance distributed triangle counting. In IEEE High Performance Extreme Computing Conference (HPEC). 1–7.
  21. Accelerating triangle counting on GPU. In Proceedings of the 2021 International Conference on Management of Data. 736–748.
  22. TriCore: Parallel triangle counting on GPUs. In SC18: International Conference for High Performance Computing, Networking, Storage and Analysis. IEEE, 171–182.
  23. Alon Itai and Michael Rodeh. 1978. Finding a minimum circuit in a graph. SIAM J. Comput. 7, 4 (1978), 413–423.
  24. Matthieu Latapy. 2008. Main-memory triangle computations for very large (sparse (power-law)) graphs. Theoretical Computer Science 407, 1 (2008), 458–473. https://doi.org/10.1016/j.tcs.2008.07.017
  25. Fuhuan Li and David A Bader. 2021. A graphblas implementation of triangle centrality. In 2021 IEEE High Performance Extreme Computing Conference (HPEC). IEEE, 1–2.
  26. First look: Linear algebra-based triangle counting without matrix multiplication. In 2017 IEEE High Performance Extreme Computing Conference (HPEC). 1–6. https://doi.org/10.1109/HPEC.2017.8091046
  27. Collaborative (CPU + GPU) Algorithms for Triangle Counting and Truss Decomposition. In 2018 IEEE High Performance Extreme Computing Conference (HPEC). 1–7. https://doi.org/10.1109/HPEC.2018.8547517
  28. Exact and Parallel Triangle Counting in Dynamic Graphs. In 24th IEEE International Conference on High Performance Computing, HiPC 2017, Jaipur, India, December 18-21, 2017. IEEE Computer Society, Los Alamitos, CA, 2–12. https://doi.org/10.1109/HiPC.2017.00011
  29. Shahir Mowlaei. 2017. Triangle counting via vectorized set intersection. In 2017 IEEE High Performance Extreme Computing Conference (HPEC). 1–5. https://doi.org/10.1109/HPEC.2017.8091053
  30. Mark Ortmann and Ulrik Brandes. 2014. Triangle Listing Algorithms: Back from the Diversion. In Proceedings of the Meeting on Algorithm Engineering & Expermiments (Portland, Oregon). Society for Industrial and Applied Mathematics, USA, 1–8.
  31. Fast parallel graph triad census and triangle counting on shared-memory platforms. In 2017 IEEE International Parallel and Distributed Processing Symposium Workshops (IPDPSW). IEEE, 1500–1509.
  32. Roger Pearce. 2017. Triangle counting for scale-free graphs at scale in distributed memory. In IEEE High Performance Extreme Computing Conference (HPEC). 1–4.
  33. Roger Pearce and Geoffrey Sanders. 2018. K-truss decomposition for scale-free graphs at scale in distributed memory. In 2018 IEEE high performance extreme computing conference (HPEC). IEEE, 1–6.
  34. GraphChallenge.org: Raising the Bar on Graph Analytic Performance. In 2018 IEEE High Performance Extreme Computing Conference (HPEC). 1–7. https://doi.org/10.1109/HPEC.2018.8547527
  35. Peter Sanders and Tim Niklas Uhl. 2023. Engineering a Distributed-Memory Triangle Counting Algorithm. arXiv preprint arXiv:2302.11443 (2023).
  36. Thomas Schank. 2007. Algorithmic Aspects of Triangle-Based Network Analysis. Ph. D. Dissertation. Karlsruhe Institute of Technology.
  37. Thomas Schank and Dorothea Wagner. 2005. Finding, Counting and Listing All Triangles in Large Graphs, an Experimental Study. In Proceedings of the 4th International Conference on Experimental and Efficient Algorithms (Santorini Island, Greece) (WEA’05). Springer-Verlag, Berlin, Heidelberg, 606–609. https://doi.org/10.1007/11427186_54
  38. A hitchhiker’s guide to choosing parameters of stochastic Kronecker graphs. CoRR, abs/1102.5046 1 (2011).
  39. Julian Shun and Kanat Tangwongsan. 2015. Multicore triangle computations without tuning. In 2015 IEEE 31st International Conference on Data Engineering. IEEE, 149–160.
  40. Julian R Ullmann. 1976. An algorithm for subgraph isomorphism. Journal of the ACM (JACM) 23, 1 (1976), 31–42.
  41. Duncan J Watts and Steven H Strogatz. 1998. Collective dynamics of ‘small-world’ networks. Nature 393, 6684 (1998), 440–442.
  42. New bounds for matrix multiplication: from alpha to omega. arXiv preprint arXiv:2307.07970 (2023).
  43. HTC: Hybrid vertex-parallel and edge-parallel Triangle Counting. In IEEE High Performance Extreme Computing Conference (HPEC). 1–7.

Summary

We haven't generated a summary for this paper yet.