Parallel hashing and integer sorting. Technical report
The problem of sorting n integers from a restricted range (1..m), where m is superpolynomial in n, is considered. An o(n log n) randomized algorithm is given. Our algorithm takes O(n log log m) expected time and O(n) space. (Thus, for m = n sub polylog(m) we have an O(n log log n) algorithm.) The algorithm is parallelizable. The resulting parallel algorithm achieves optimal speed up. Some features of the algorithm make us believe that it is relevant for practical applications. A result of independent interest is a parallel hashing technique. The expected construction time is logarithmic using an optimal number of processors, and Searching for a value takes O(1) time in the worst case. This technique enables drastic reduction of space requirements for the price of using randomness. Applicability of the technique is demonstrated for the parallel sorting algorithm, and for some parallel string matching algorithms. The parallel sorting algorithm is designed for a strong and non standard model of parallel computation. Efficient simulations of the strong model on a CRCW PRAM (Concurrent Read Concurrent Write Parallel Random Access Machine) are introduced. One of the simulations even achieves optimal speed up. This is probably a first optimal speed up simulation of a certain kind.
- Research Organization:
- Maryland Univ., College Park, MD (USA). Inst. for Advanced Computer Studies
- OSTI ID:
- 6680754
- Report Number(s):
- AD-A-221569/7/XAB; UMIACS-TR-90-13
- Country of Publication:
- United States
- Language:
- English
Similar Records
Randomized parallel speedups for list ranking
Recursive star-tree parallel data structure. Technical report