The Complexity of Parallel Sorting

The model we consider-is the (concurrent-write, PRIORITY) PRAM. It has n synchronous processors, which communicate via an infinite shared memory. When several processors simultaneously write to the same cell, the one with the largest index succeeds. We allow the processors arbitrary computational power.Our main result is that sorting n integers requires $\Omega (\sqrt {\log n} )$ steps in this strong model. This bound is proved in two stages. First, using a novel Ramsey theoretic argument, we “reduce” sorting on a PRAM to sorting on a parallel merge tree. This tree is a generalization of Valiant’s parallel comparison tree from [V] in which at every step n pairs of (previously ordered) sets are merged (rather then n pairs of elementscompared). The second stage is proving the lower bound for such trees.The Ramsey theoretic technique, together with known methods for bounding the “degree” of the computation, can be used to unify and generalize previous lower bounds for PRAM’s. For example, we can show that th...