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 ScholarDigital 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 ScholarDigital 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 ScholarCross 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 ScholarDigital Library
- Michael Brinkmeier. 2007. A Simple and Fast Min-Cut Algorithm. Theory Comput. Syst. 41, 2 (2007), 369--380. Google ScholarDigital 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 ScholarDigital 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 ScholarDigital Library
- Paul Erdös and Alfréd Rényi. 1959. On random graphs, I. Publicationes Mathematicae (Debrecen) 6 (1959), 290--297.Google ScholarCross 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 ScholarDigital 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 ScholarDigital 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 ScholarDigital 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 ScholarDigital 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 ScholarDigital 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 ScholarDigital Library
- Mark Hoemmen. 2010. Communication-avoiding Krylov Subspace Methods. Ph.D. Dissertation. Berkeley, CA, USA. Advisor(s) Demmel, James W. AAI3413388. Google ScholarDigital 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 ScholarCross Ref
- David R. Karger. 2000. Minimum cuts in near-linear time. J. ACM 47, 1 (2000), 46--76. Google ScholarDigital 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 ScholarDigital 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 ScholarDigital 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 ScholarDigital 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 ScholarDigital 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 ScholarCross 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 ScholarDigital 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 ScholarDigital 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 ScholarDigital 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 ScholarDigital Library
- David A. Patterson. 2004. Latency lags bandwith. Commun. ACM 47, 10 (2004), 71--75. Google ScholarDigital 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 ScholarDigital 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 ScholarDigital 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 ScholarDigital 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 ScholarDigital Library
- Satu Elisa Schaeffer. 2007. Survey: Graph Clustering. Comput. Sci. Rev. 1, 1 (Aug. 2007), 27--64. Google ScholarDigital 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 ScholarDigital 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 ScholarDigital Library
- Marc Snir. 1998. MPI-the Complete Reference: The MPI core. Vol. 1. MIT press. Google ScholarDigital Library
- Robert Solovay and Volker Strassen. 1977. A Fast Monte-Carlo Test for Primality. SIAM J. Comput. 6, 1 (1977), 84--85.Google ScholarDigital Library
- Mechthild Stoer and Frank Wagner 1997. A simple min-cut algorithm. J. ACM 44, 4 (1997), 585--591. Google ScholarDigital 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 ScholarDigital Library
- Leslie G. Valiant. 1990. A bridging model for parallel computation. Commun. ACM 33, 8 (1990), 103--111. Google ScholarDigital 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 ScholarDigital 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 ScholarDigital Library
Index Terms
- Communication-avoiding parallel minimum cuts and connected components
Recommendations
Communication-avoiding parallel minimum cuts and connected components
PPoPP '18We 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 ...
Cuts leaving components of given minimum order
For a connected graph G, the restricted edge-connectivity @l"p(G) is defined as the minimum cardinality of an edge-cut over all edge-cuts S such that each component of G-S contains at least p vertices. In the present paper we introduce the more general ...
Comments