A Fast Parallel Algorithm for Routing Unicast Assignments in Benes Networks

  • Authors:
  • Ching-Yi Lee;A. Yavuz Oruç

  • Affiliations:
  • -;-

  • Venue:
  • IEEE Transactions on Parallel and Distributed Systems
  • Year:
  • 1995

Quantified Score

Hi-index 0.00

Visualization

Abstract

This paper presents a new parallel algorithm for routing unicast (one-to-one) assignments in Bene\u s networks. Parallel routing algorithms for such networks were reported earlier, but these algorithms were designed primarily to route permutation assignments. The routing algorithm presented in this paper removes this restriction without an increase in the order of routing cost or routing time. We realize this new routing algorithm on two different topologies. The algorithm routes a unicast assignment involving $O(k)$ pairs of inputs and outputs in $O(\lg^2\,k + \lg\,n)$ time on a completely connected network of $n$ processors and in $O(\lg^4\,k + \lg^2k\,\lg\,n)$ time on an extended shuffle-exchange network of $n$ processors. Using $O(n\,\lg\,n)$ processors, the same algorithm can be pipelined to route $\alpha$ unicast assignments, each involving $O(k)$ pairs of inputs and outputs, in $O(\lg^2\,k + \lg\, n + (\alpha - 1)\,\lg\,k)$ time on a completely connected network and in $O(\lg^4\,k + \lg^2\,k\,\lg\,n + (\alpha - 1)(\lg^3\,k + \lg\,k\,\lg\, n))$ time on the extended shuffle-exchange network. These yield an average routing time of $O(\lg\,k)$ in the first case, and $O(\lg^3\,k + \lg\,k\lg\,n)$ in the second case, for all $\alpha\,\ge\,\lg\,n.$ These complexities indicate that the algorithm given in this paper is as fast as Nassimi and Sahni's algorithm for unicast assignments, and with pipelining, it is faster than the same algorithm at least by a factor of $O(\lg\,n)$ on both topologies. Furthermore, for sparse assignments, i.e., when $k = O(1),$ it is the first algorithm which has an average routing time of $O(\lg\,n)$ on a topology with $O(n)$ links.Index Terms驴Connector, packet switching network, permutation network, unicast assignment.