Merge Sort - Parallel Processing

Parallel Processing

Merge sort parallelizes well due to use of the divide-and-conquer method. A parallel implementation is shown in pseudo-code in the third edition of Cormen, Leiserson, and Stein's Introduction to Algorithms. This algorithm uses a parallel merge algorithm to not only parallelize the recursive division of the array, but also the merge operation. It performs well in practice when combined with a fast stable sequential sort, such as insertion sort, and a fast sequential merge as a base case for merging small arrays. Merge sort was one of the first sorting algorithms where optimal speed up was achieved, with Richard Cole using a clever subsampling algorithm to ensure O(1) merge. Other sophisticated parallel sorting algorithms can achieve the same or better time bounds with a lower constant. For example, in 1991 David Powers described a parallelized quicksort (and a related radix sort) that can operate in O(log n) time on a CRCW PRAM with n processors by performing partitioning implicitly.

Read more about this topic:  Merge Sort

Famous quotes containing the word parallel:

    If from the earth we came, it was an earth
    That bore us as a part of all the things
    It breeds and that was lewder than it is.
    Our nature is her nature. Hence it comes,
    Since by our nature we grow old, earth grows
    The same. We parallel the mother’s death.
    Wallace Stevens (1879–1955)