On Parallel Push-Relabel based Algorithms for Bipartite Maximum Matching
We study multithreaded push-relabel based algorithms for computing maximum cardinality matching in bipartite graphs. Matching is a fundamental combinatorial (graph) problem with applications in a wide variety of problems in science and engineering. We are motivated by its use in the context of sparse linear solvers for computing maximum transversal of a matrix. We implement and test our algorithms on several multi-socket multicore systems and compare their performance to state-of-the-art augmenting path-based serial and parallel algorithms using a testset comprised of a wide range of real-world instances. Building on several heuristics for enhancing performance, we demonstrate good scaling for the parallel push-relabel algorithm. We show that it is comparable to the best augmenting path-based algorithms for bipartite matching. To the best of our knowledge, this is the first extensive study of multithreaded push-relabel based algorithms. In addition to a direct impact on the applications using matching, the proposed algorithmic techniques can be extended to preflow-push based algorithms for computing maximum flow in graphs.
- Research Organization:
- Pacific Northwest National Lab. (PNNL), Richland, WA (United States)
- Sponsoring Organization:
- USDOE
- DOE Contract Number:
- AC05-76RL01830
- OSTI ID:
- 1171882
- Report Number(s):
- PNNL-SA-91913; 400470000
- Journal Information:
- Parallel Computing, 40(7):289 - 308, Journal Name: Parallel Computing, 40(7):289 - 308
- Country of Publication:
- United States
- Language:
- English
Similar Records
Computing Maximum Cardinality Matchings in Parallel on Bipartite Graphs via Tree-Grafting
A distributed-memory approximation algorithm for maximum weight perfect bipartite matching