کد مقاله | کد نشریه | سال انتشار | مقاله انگلیسی | نسخه تمام متن |
---|---|---|---|---|
524673 | 868818 | 2011 | 26 صفحه PDF | دانلود رایگان |
We present a new parallel algorithm for computing a maximum cardinality matching in a bipartite graph suitable for distributed memory computers.The presented algorithm is based on the Push-Relabel algorithm which is known to be one of the fastest algorithms for the bipartite matching problem. Previous attempts at developing parallel implementations of it have focused on shared memory computers using only a limited number of processors.We first present a straightforward adaptation of these shared memory algorithms to distributed memory computers. However, this is not a viable approach as it requires too much communication. We then develop our new algorithm by modifying the previous approach through a sequence of steps with the main goal being to reduce the amount of communication and to increase load balance. The first goal is achieved by changing the algorithm so that many push and relabel operations can be performed locally between communication rounds and also by selecting augmenting paths that cross processor boundaries infrequently. To achieve good load balance, we limit the speed at which global relabelings traverse the graph. In several experiments on a large number of instances, we study weak and strong scalability of our algorithm using up to 128 processors.The algorithm can also be used to find ϵ-approximate matchings quickly.
► First practical distributed parallel algorithm for maximum cardinality matching.
► Suitable for computing maximum matrix transversals in parallel linear solvers.
► Adapts core ideas of the Push-Relabel algorithm to the distributed memory setting.
► Scalability experiments using up to 128 processors.
Journal: Parallel Computing - Volume 37, Issue 12, December 2011, Pages 820–845