ABSTRACT
We present a parallel version of the Karp-Sipser graph matching heuristic for the maximum cardinality problem. It is bulk-synchronous, separating computation and communication, and uses an edge-based partitioning of the graph, translated from a two-dimensional partitioning of the corresponding adjacency matrix. It is shown that the communication volume of Karp-Sipser graph matching is proportional to that of parallel sparse matrix-vector multiplication (SpMV), so that efficient partitioners developed for SpMV can be used. The algorithm is presented using a small basic set of 7 message types, which are discussed in detail. Experimental results show that for most matrices, edge-based partitioning is superior to vertex-based partitioning, in terms of both parallel speedup and matching quality. Good speedups are obtained on up to 64 processors.
- }}J. Aronson, A. Frieze, and B. G. Pittel. Maximum matchings in sparse random graphs: Karp-Sipser revisited. Rand. Struct. Alg., 12 (2): 111--177, 1998. Google ScholarDigital Library
- }}D. A. Bader and K. Madduri. GTGraph: A synthetic graph generator suite. http://www.cc.gatech.edu/~kamesh/GTgraph, 2006.Google Scholar
- }}R. H. Bisseling. Parallel Scientific Computation: A Structured Approach Using BSP and MPI. Oxford University Press, 2004. Google ScholarDigital Library
- }}D. Bozdag, A. Gebremedhin, F. Manne, E. Boman, and U. Catalyurek. A framework for scalable greedy coloring on distributed-memory parallel computers. J. Par. Distr. Comput., 68 (4): 515--535, 2008. Google ScholarDigital Library
- }}U. V. Catalyurek and C. Aykanat. A fine-grain hypergraph model for 2D decomposition of sparse matrices. In Proc. IPDPS, 2001. Google ScholarDigital Library
- }}P. Chebolu, A. Frieze, and P. Melsted. Finding a maximum matching in a sparse random graph in O(n) expected time. Proc. ICALP, pages 161--172, 2008. LNCS 5125. Google ScholarDigital Library
- }}T. A. Davis. University of Florida sparse matrix collection. NA Digest, 92, 1994.Google Scholar
- }}I. S. Duff, A. M. Erisman, and J. K. Reid. Direct Methods for Sparse Matrices. Oxford University Press, 1986. Google ScholarDigital Library
- }}J. M. D. Hill, B. McColl, D. C. Stefanescu, M. W. Goudreau, K. Lang, S. B. Rao, T. Suel, T. Tsantilas, and R. H. Bisseling. BSPlib: The BSP programming library. Par. Comput., 24 (14): 1947--1980, 1998. Google ScholarDigital Library
- }}R. M. Karp and M. Sipser. Maximum matching in sparse random graphs. Proc. FOCS, pages 364--375, 1981. Google ScholarDigital Library
- }}G. Karypis and V. Kumar. Multilevel k-way partitioning scheme for irregular graphs. J. Par. Distr. Comput., 48: 96--129, 1998. Google ScholarDigital Library
- }}J. Koster. Parasol matrices. http://www.parallab.uib.no/projects/, 1999.Google Scholar
- }}J. Langguth, F. Manne, and P. Sanders. Heuristic initialization for bipartite matching problems. ACM J. Exp. Alg., 15: 1.3:1--1.3:22, 2010. Google ScholarDigital Library
- }}G. Malewicz, M. H. Austern, A. J. Bik, J. C. Dehnert, I. Horn, N. Leiser, and G. Czajkowski. Pregel: a system for large-scale graph processing. In Proc. PODC, pages 6--6. ACM, 2009. Google ScholarDigital Library
- }}F. Manne and R. H. Bisseling. A parallel approximation algorithm for the weighted maximum matching problem. In Proc. PPAM, pages 708--717, 2008. LNCS 4967. Google ScholarDigital Library
- }}R. H. Möhring and M. Müller-Hannemann. Cardinality matching: Heuristic search for augmenting paths. Technical Report 439, Tech. Univ. Berlin, Dept. Math., 1995.Google Scholar
- }}F. Pellegrini and J. Roman. Scotch: A software package for static mapping by dual recursive bipartitioning of process and architecture graphs. In HPCN'96, pages 493--498, 1996. LNCS 1067. Google ScholarDigital Library
- }}W. J. Suijlen. BSPonMPI: An implementation of the BSPlib standard on top of MPI, Version 0.3, 2010.Google Scholar
- }}L. G. Valiant. A bridging model for parallel computation. Comm. ACM, 33 (8): 103--111, 1990. Google ScholarDigital Library
- }}B. Vastenhouw and R. H. Bisseling. A two-dimensional data distribution method for parallel sparse matrix-vector multiplication. SIAM Review, 47 (1): 67--95, 2005. Google ScholarDigital Library
Index Terms
- Parallel greedy graph matching using an edge partitioning approach
Recommendations
A Parallel Algorithm for Graph Matching and Its MasPar Implementation
Search of discrete spaces is important in combinatorial optimization. Such problems arise in artificial intelligence, computer vision, operations research, and other areas. For realistic problems, the search spaces to be processed are usually huge, ...
Equimatchable Graphs on Surfaces
A graph G is equimatchable if each matching in G is a subset of a maximum-size matching and it is factor critical if G-v has a perfect matching for each vertex v of G. It is known that any 2-connected equimatchable graph is either bipartite or factor ...
Partitioning a graph into two isomorphic pieces
A simple graph G has the neighbour-closed-co-neighbour property, or ncc property, if for all vertices x of G, the subgraph induced by the set of neighbours of x is isomorphic to the subgraph induced by the set of non-neighbours of x. We present ...
Comments