Parallel algorithms for bipartite matching problems on distributed memory computers

  • Authors:
  • Johannes Langguth;Md. Mostofa Ali Patwary;Fredrik Manne

  • Affiliations:
  • University of Bergen, Department of Informatics, Thormøhlensgate 55, N-5008 Bergen, Norway;University of Bergen, Department of Informatics, Thormøhlensgate 55, N-5008 Bergen, Norway;University of Bergen, Department of Informatics, Thormøhlensgate 55, N-5008 Bergen, Norway

  • Venue:
  • Parallel Computing
  • Year:
  • 2011

Quantified Score

Hi-index 0.00

Visualization

Abstract

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 @e-approximate matchings quickly.