Input Sensitive, Optimal Parallel Randomized Algorithms for Addition and Identification

Published: 1986, Last Modified: 09 May 2025STACS 1986EveryoneRevisionsBibTeXCC BY-SA 4.0
Abstract: Although many sophisticated parallel algorithms now exist, it is not at all clear if any of them is sensitive to properties of the input which can be determined only at run-time. For example, in the case of parallel addition in shared memory models, we intuitively understand that we should not add those inputs whose value is zero. A technique which exploits this idea, may beat the general lower bound for addition if the count of nonzero operants is much smaller than the numbers to be added. In this paper, we device such algorithms for two fundamental problems of parallel computation. Our model of computation is the CRCW PRAM. We first provide a randomized algorithm for parallel addition which never errs and computes the result in 0 (logm) expected parallel time, where m is the count of nonzero entries among the n numbersto be added. This algorithm uses 0 (m) shared space. We then use this result to solve the following problem of processor identification : n processors are given, each keeping either a 0 or an 1. We want each processor at the end, to know which are the processors with the 1's. Our solution is randomized and sensitive to the number 10 of the 1's. It takes 0 (min { m, n logm/logn}) expected parallel time and only 0 (m) shared memory, capable of holding only 0(n) size numbers. Combinatorial techniques of Erdos and Renyi were helpful to a part of this second result.
Loading