Abstract
We present novel scalable parallel algorithms for finding global minimum cuts and connected components, which are important and fundamental problems in graph processing. To take advantage of future massively parallel architectures, our algorithms are communication-avoiding: they reduce the costs of communication across the network and the cache hierarchy. The fundamental technique underlying our work is the randomized sparsification of a graph: removing a fraction of graph edges, deriving a solution for such a sparsified graph, and using the result to obtain a solution for the original input. We design and implement sparsification with O(1) synchronization steps. Our global minimum cut algorithm decreases communication costs and computation compared to the state-of-the-art, while our connected components algorithm incurs few cache misses and synchronization steps. We validate our approach by evaluating MPI implementations of the algorithms on a petascale supercomputer. We also provide an approximate variant of the minimum cut algorithm and show that it approximates the exact solutions well while using a fraction of cores in a fraction of time.
Supplemental Material
Available for Download
Scripts, Source Files
- James Abello, Adam L. Buchsbaum, and Jeffery Westbrook. 1998. A Functional Approach to External Graph Algorithms. In Proceedings of the 6th Annual European Symposium on Algorithms (ESA '98). Springer-Verlag, London, UK, UK, 332--343. http://dl.acm.org/citation.cfm?id=647908.740141 Google Scholar
Digital Library
- Micah Adler, Wolfgang Dittrich, Ben Juurlink, Miroslaw Kutylowski, and Ingo Rieping. 1998. Communication-optimal Parallel Minimum Spanning Tree Algorithms (Extended Abstract). In Proceedings of the Tenth Annual ACM Symposium on Parallel Algorithms and Architectures (SPAA '98). ACM, New York, NY, USA, 27--36. Google Scholar
Digital Library
- Réka Albert and Albert-László Barabási. 2002. Statistical mechanics of complex networks. Rev. Mod. Phys. 74 (Jan 2002), 47--97. Issue 1.Google Scholar
Cross Ref
- Friedhelm Meyer auf der Heide and Gabriel T. Martinez. 1998. Communication-efficient parallel multiway and approximate minimum cut computation. In LATIN'98: Theoretical Informatics. Springer, 316--330. Google Scholar
Digital Library
- Michael Brinkmeier. 2007. A Simple and Fast Min-Cut Algorithm. Theory Comput. Syst. 41, 2 (2007), 369--380. Google Scholar
Digital Library
- Deepayan Chakrabarti, Yiping Zhan, and Christos Faloutsos. 2004. R-MAT: A Recursive Model for Graph Mining. In Proceedings of the Fourth SIAM International Conference on Data Mining, Lake Buena Vista, Florida, USA, April 22--24, 2004, Michael W. Berry, Umeshwar Dayal, Chandrika Kamath, and David B. Skillicorn (Eds.). SIAM, 442--446.Google Scholar
- Ding-Kai Chen, Hong-Men Su, and Pen-Chung Yew. 1990. The Impact of Synchronization and Granularity on Parallel Systems. SIGARCH Comput. Archit. News 18, 2SI (May 1990), 239--248. Google Scholar
Digital Library
- Frank K. H. A. Dehne, Afonso Ferreira, Edson Cáceres, Siang W. Song, and Alessandro Roncato. 2002. Efficient Parallel Graph Algorithms for Coarse-Grained Multicomputers and BSP. Algorithmica 33, 2 (2002), 183--200. Google Scholar
Digital Library
- Paul Erdös and Alfréd Rényi. 1959. On random graphs, I. Publicationes Mathematicae (Debrecen) 6 (1959), 290--297.Google Scholar
Cross Ref
- L.R. Ford and Delbert R. Fulkerson. 1962. Flows in networks. Vol. 1962. Princeton Princeton University Press.Google Scholar
- Matteo Frigo, Charles E. Leiserson, Harald Prokop, and Sridhar Ramachandran. 2012. Cache-Oblivious Algorithms. ACM Trans. Algorithms 8, 1 (2012), 4:1--4:22. Google Scholar
Digital Library
- Hillel Gazit. 1986. An Optimal Randomized Parallel Algorithm for Finding Connected Components in a Graph. In 27th Annual Symposium on Foundations of Computer Science, Toronto, Canada, 27--29 October 1986. IEEE Computer Society, 492--501. Google Scholar
Digital Library
- Barbara Geissmann and Lukas Gianinazzi. 2017. Cache Oblivious Minimum Cut. Springer International Publishing, Cham, 285--296.Google Scholar
- Steve Goddard, Subodh Kumar, and Jan F. Prins. 1994. Connected components algorithms for mesh-connected parallel computers. In Parallel Algorithms, Proceedings of a DIMACS Workshop, Brunswick, New Jersey, USA, October 17--18, 1994 (DIMACS Series in Discrete Mathematics and Theoretical Computer Science), Sandeep Nautam Bhatt (Ed.), Vol. 30. DIMACS/AMS, 43--58. http://dimacs.rutgers.edu/Volumes/Vol30.htmlGoogle Scholar
- Douglas Gregor and Andrew Lumsdaine. 2005. The parallel BGL: A generic library for distributed graph computations. Parallel Object-Oriented Scientific Computing (POOSC) 2 (2005), 1--18.Google Scholar
- Shay Halperin and Uri Zwick. 1996. Optimal randomized EREW PRAM Algorithms for Finding Spanning Forests and for other Basic Graph Connectivity Problems. In Proceedings of the Seventh Annual ACM-SIAM Symposium on Discrete Algorithms, 28--30 January 1996, Atlanta, Georgia. 438--447. http://dl.acm.org/citation.cfm?id-313852.314099 Google Scholar
Digital Library
- Jianxiu Hao and James B. Orlin. 1992. A faster algorithm for finding the minimum cut in a graph. In Proceedings of the third annual ACM-SIAM symposium on Discrete algorithms. Society for Industrial and Applied Mathematics, 165--174. Google Scholar
Digital Library
- Torsten Hoefler and Roberto Belli. 2015. Scientific Benchmarking of Parallel Computing Systems. IEEE/ACM International Conference on High Performance Computing, Networking, Storage and Analysis (SC15). Google Scholar
Digital Library
- Torsten Hoefler, William Gropp, Rajeev Thakur, and Jesper Larsson Träff. 2010. Toward Performance Models of MPI Implementations for Understanding Application Scaling Issues. In Recent Advances in the Message Passing Interface - 17th European MPI Users' Group Meeting, EuroMPI 2010, Stuttgart, Germany, September 12--15, 2010. Proceedings (Lecture Notes in Computer Science), Rainer Keller, Edgar Gabriel, Michael M. Resch, and Jack Dongarra (Eds.), Vol. 6305. Springer, 21--30. Google Scholar
Digital Library
- Mark Hoemmen. 2010. Communication-avoiding Krylov Subspace Methods. Ph.D. Dissertation. Berkeley, CA, USA. Advisor(s) Demmel, James W. AAI3413388. Google Scholar
Digital Library
- Keechul Jung, Kwang In Kim, and Anil K. Jain. 2004. Text information extraction in images and video: a survey. Pattern Recognition 37, 5 (2004), 977 -- 997.Google Scholar
Cross Ref
- David R. Karger. 2000. Minimum cuts in near-linear time. J. ACM 47, 1 (2000), 46--76. Google Scholar
Digital Library
- David R. Karger. 2001. A randomized fully polynomial time approximation scheme for the all-terminal network reliability problem. SIAM review 43, 3 (2001), 499--522. Google Scholar
Digital Library
- David R. Karger, Philip N. Klein, and Robert Endre Tarjan. 1995. A Randomized Linear-Time Algorithm to Find Minimum Spanning Trees. J. ACM 42, 2 (1995), 321--328. Google Scholar
Digital Library
- David R. Karger and Clifford Stein. 1996. A new approach to the minimum cut problem. Journal of the ACM (JACM) 43, 4 (1996), 601--640. Google Scholar
Digital Library
- John Kim, Wiliam J Dally, Steve Scott, and Dennis Abts. 2008. Technology-driven, highly-scalable dragonfly topology. In ACM SIGARCH Computer Architecture News, Vol. 36. IEEE Computer Society, 77--88. Google Scholar
Digital Library
- Jean-Yves Le Boudec. 2010. Performance evaluation of computer and communication systems. EPFL Press.Google Scholar
- Andrew Lumsdaine, Douglas P. Gregor, Bruce Hendrickson, and Jonathan W. Berry. 2007. Challenges in Parallel Graph Processing. Parallel Processing Letters 17, 1 (2007), 5--20.Google Scholar
Cross Ref
- Hiroshi Nagamochi and Toshihide Ibaraki. 1992. Computing edge-connectivity in multigraphs and capacitated graphs. SIAM Journal on Discrete Mathematics 5, 1 (1992), 54--66. Google Scholar
Digital Library
- Donald Nguyen, Andrew Lenharth, and Keshav Pingali. 2013. A light-weight infrastructure for graph analytics. In ACM SIGOPS 24th Symposium on Operating Systems Principles, SOSP '13, Farmington, PA, USA, November 3--6, 2013, Michael Kaminsky and Mike Dahlin (Eds.). ACM, 456--471. Google Scholar
Digital Library
- Simone F. Oliveira, Karl Fürlinger, and Dieter Kranzlmüller. 2012. Trends in Computation, Communication and Storage and the Consequences for Data-intensive Science. In 14th IEEE International Conference on High Performance Computing and Communication & 9th IEEE International Conference on Embedded Software and Systems, HPCC-ICESS 2012. 572--579. Google Scholar
Digital Library
- Víctor Osma-Ruiz, Juan I. Godino-Llorente, Nicolás Sáenz-Lechón, and Pedro Gómez-Vilda. 2007. An Improved Watershed Algorithm Based on Efficient Computation of Shortest Paths. Pattern Recogn. 40, 3 (March 2007), 1078--1090. Google Scholar
Digital Library
- David A. Patterson. 2004. Latency lags bandwith. Commun. ACM 47, 10 (2004), 71--75. Google Scholar
Digital Library
- Jelena Pjesivac-Grbovic, Thara Angskun, George Bosilca, Graham E. Fagg, Edgar Gabriel, and Jack Dongarra. 2007. Performance analysis of MPI collective operations. Cluster Computing 10, 2 (2007), 127--143. Google Scholar
Digital Library
- Michael Oser Rabin. 1976. Probablistic Algorithms. In Algorithms and Complexity, Joseph F. Traub (Ed.). Academic Press, 21--36.Google Scholar
- John H. Reif. 1993. Synthesis of Parallel Algorithms (1st ed.). Morgan Kaufmann Publishers Inc., San Francisco, CA, USA. Google Scholar
Digital Library
- John H. Reif and Sandeep Sen. 1989. Polling: A New Randomized Sampling Technique for Computational Geometry. In Proceedings of the 21st Annual ACM Symposium on Theory of Computing, May 14--17, 1989, Seattle, Washigton, USA. 394--404. Google Scholar
Digital Library
- John K. Salmon, Mark A. Moraes, Ron O. Dror, and David E. Shaw. 2011. Parallel Random Numbers: As Easy As 1, 2, 3. In Proceedings of 2011 International Conference for High Performance Computing, Networking, Storage and Analysis (SC '11). ACM, New York, NY, USA, Article 16, 12 pages. Google Scholar
Digital Library
- Satu Elisa Schaeffer. 2007. Survey: Graph Clustering. Comput. Sci. Rev. 1, 1 (Aug. 2007), 27--64. Google Scholar
Digital Library
- Roded Sharan and Ron Shamir. 2000. CLICK: a clustering algorithm with applications to gene expression analysis. In Proc Int Conf Intell Syst Mol Biol, Vol. 8. 16. Google Scholar
Digital Library
- Jeremy G. Siek, Lie-Quan Lee, and Andrew Lumsdaine. 2001. Boost Graph Library: User Guide and Reference Manual, The. Pearson Education.Google Scholar
- Francesco Silvestri. 2007. On the Limits of Cache-oblivious Matrix Transposition. In Proceedings of the 2Nd International Conference on Trustworthy Global Computing (TGC'06). Springer-Verlag, Berlin, Heidelberg, 233--243. http://dl.acm.org/citation.cfm?id = 1776656.1776677 Google Scholar
Digital Library
- Marc Snir. 1998. MPI-the Complete Reference: The MPI core. Vol. 1. MIT press. Google Scholar
Digital Library
- Robert Solovay and Volker Strassen. 1977. A Fast Monte-Carlo Test for Primality. SIAM J. Comput. 6, 1 (1977), 84--85.Google Scholar
Digital Library
- Mechthild Stoer and Frank Wagner 1997. A simple min-cut algorithm. J. ACM 44, 4 (1997), 585--591. Google Scholar
Digital Library
- Jayaram K. Udupa and Venkatramana G. Ajjanagadde. 1990. Boundary and object labelling in three-dimensional images. Computer Vision, Graphics, and Image Processing 51, 3 (1990), 355--369. Google Scholar
Digital Library
- Leslie G. Valiant. 1990. A bridging model for parallel computation. Commun. ACM 33, 8 (1990), 103--111. Google Scholar
Digital Library
- Duncan J. Watts and Steven H Strogatz. 1998. Collective Dynamics of small-world networks. Nature 393 (1998).Google Scholar
- Andrew D. Wilson. 2006. Robust Computer Vision-based Detection of Pinching for One and Two-handed Gesture Input. In Proceedings of the 19th Annual ACM Symposium on User Interface Software and Technology (UIST '06). ACM, New York, NY, USA, 255--258. Google Scholar
Digital Library
- Yao Zhu and David F. Gleich. 2016. A parallel min-cut algorithm using iteratively reweighted least squares targeting at problems with floating-point edge weights. Parallel Comput. 59 (2016), 43--59. Google Scholar
Digital Library
Index Terms
Communication-avoiding parallel minimum cuts and connected components
Recommendations
Parallel Minimum Cuts in Near-linear Work and Low Depth
SPAA '18: Proceedings of the 30th on Symposium on Parallelism in Algorithms and ArchitecturesWe present the first near-linear work and poly-logritharithmic depth algorithm for computing a minimum cut in a graph, while previous parallel algorithms with poly-logarithmic depth required at least quadratic work in the number of vertices. In a graph ...
Communication-avoiding parallel minimum cuts and connected components
PPoPP '18: Proceedings of the 23rd ACM SIGPLAN Symposium on Principles and Practice of Parallel ProgrammingWe present novel scalable parallel algorithms for finding global minimum cuts and connected components, which are important and fundamental problems in graph processing. To take advantage of future massively parallel architectures, our algorithms are ...
Minimum cuts, girth and a spectral threshold
Let G = (V, E) be a simple, undirected, unweighted, connected graph. A cut (A, A) defined by a subset A of V is called trivial if either A or A is a singleton set. Let µ be the second smallest eigenvalue of the Laplacian matrix of G. The length of the ...







Comments