efficient selection algorithms on distributed memory computers
Consider the selection problem of determining the k th smallest element of a sequence of n elements. Under the CGM (Coarse Grained Multicomputer) model with p processors and O ( n/p ) local memory, we present a deterministic parallel algorithm for the selection problem that requires O (log p ) communication rounds. Besides requiring a low number of communication rounds, the algorithm also attempts to minimize the total amount of data transmitted in each round (only O ( p ) except in the last round). The basic algorithm is then extended to solve the problem of q simultaneous selections using the same input sequence, also in O (log p ) communication rounds and asymptotically same local computing time (if q = O ( p ) ). The simultaneous selection algorithm gives rise to a communication efficient sorting algorithm, with O (log p ) communication rounds and a total of O ( p 2 ) data transmitted in each round except in the last one. In addition to showing theoretical complexities, we present very promising experimental results obtained on two parallel machines that show almost linear speedup, indicating the efficiency and scalability of the proposed algorithms. To our knowledge, this is the best deterministic CGM algorithm in the literature for the selection problem.
selection problem coarse grained multicomputer parallel algorithm simultaneous selection sorting