Two approximation algorithms for bipartite matching on multicore architectures - Inria - Institut national de recherche en sciences et technologies du numérique Access content directly
Journal Articles Journal of Parallel and Distributed Computing Year : 2015

Two approximation algorithms for bipartite matching on multicore architectures


We propose two heuristics for the bipartite matching problem that are amenable to shared-memory parallelization. The first heuristic is very intriguing from a parallelization perspective. It has no significant algorithmic synchronization overhead and no conflict resolution is needed across threads. We show that this heuristic has an approximation ratio of around 0.632 under some common conditions. The second heuristic is designed to obtain a larger matching by employing the well-known Karp-Sipser heuristic on a judiciously chosen subgraph of the original graph. We show that the Karp-Sipser heuristic always finds a maximum cardinality matching in the chosen subgraph. Although the Karp-Sipser heuristic is hard to parallelize for general graphs, we exploit the structure of the selected subgraphs to propose a specialized implementation which demonstrates very good scalability. We prove that this second heuristic has an approximation guarantee of around 0.866 under the same conditions as in the first algorithm. We discuss parallel implementations of the proposed heuristics on a multicore architecture. Experimental results, for demonstrating speed-ups and verifying the theoretical results in practice, are provided.
Fichier principal
Vignette du fichier
randMatch.pdf (1.54 Mo) Télécharger le fichier
Origin : Files produced by the author(s)

Dates and versions

hal-01242516 , version 1 (12-12-2015)



Fanny Dufossé, Kamer Kaya, Bora Uçar. Two approximation algorithms for bipartite matching on multicore architectures. Journal of Parallel and Distributed Computing, 2015, 85, pp.62-78. ⟨10.1016/j.jpdc.2015.06.009⟩. ⟨hal-01242516⟩
235 View
807 Download



Gmail Facebook X LinkedIn More