Optimizing Parallel Bitonic Sort

  • Authors:
  • Mihai F Ionescu

  • Affiliations:
  • -

  • Venue:
  • Optimizing Parallel Bitonic Sort
  • Year:
  • 1997

Quantified Score

Hi-index 0.00

Visualization

Abstract

Sorting is an important component of many applications and parallel sorting algorithms have been studied extensively in the last three decades. One of the earliest parallel sorting algorithms is Bitonic Sort which is represented by a sorting network consisting of multiple butterfly stages. Not surprisingly, the algorithm has been studied on different parallel network topologies which provide an easy embedding of butterflies, such as the hypercube or the shuffle-exchange. This thesis studies bitonic sort on modern parallel machines. These machines are relatively coarse grained and consist of only a modest number of nodes. Thus many data elements have to be mapped onto each processor. Under such a setting optimizing the bitonic sort algorithm becomes a question of mapping the data elements to processing nodes (data layout) to minimize communication and optimizing the local computation on each node. We developed a bitonic sort algorithm which minimizes the number of communication steps and optimizes the local computation. We have implemented the new algorithm on the Meiko CS-2, analyzed and evaluated its performance under the LogP and LogGP models of parallel computation. The resulting algorithm is faster than the previous implementations, as experimental results collected on a 64 node Meiko CS-2 show.