Abstract

We discuss parallel algorithms for computing maximum matchings in bipartite graphs on multithreaded computers, reporting for the first time, good speedups for the maximum cardinality matching problem. Experiments with serial matching algorithms have shown that their performance is sensitive to the order in which vertices are processed. In the execution of a multithreaded parallel algorithm for matching, variability in the order in which different threads process vertices is unavoidable. This sensitivity raises the possibility that different execution orderings might adversely affect the performance of parallel matching algorithms. In this paper, we answer this question by showing that good speedups are attainable by careful design of algorithms tuned to the characteristics of multithreaded architectures and the structure of the input graphs. We discuss preliminary results from parallel implementations of two key algorithms (Hopcroft-Karp and Pothen-Fan) and their variants on three multithreaded platforms (Cray XMT, AMD Opteron and Intel Nehalem) using a carefully chosen test set from real-world applications as well as synthetical graphs.

Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call