7 research outputs found
Recommended from our members
Distributed Algorithms in Synchronous Broadcasting Networks
In this paper we consider a synchronous broadcasting network, a distributed computation model which represents communication networks that are used extensively in practice. This is the first work we know of that deals with this model in a theoretical context. The problem we consider is a basic problem of information sharing, the computation of the multiple identification function. That is, given a network of p processors, each of which contains an n-bit string of information, the question is how every processor can compute the subset of processors which have the same information as itself. The problem was suggested by Yao in his classical paper in communication complexity [17], as a generalization of the two-processor case studied in that paper. The immediate algorithm which solves this problem takes O(np) time (time = communication time in bits, which is our complexity measure). We present the following algorithms: - a. An algorithm which takes advantage of properties of strings, uses a very simple scheduling policy, and does not use arithmetic operations. (In fact, the processor can be a Turing machine). 'the algorithm's complexity is O(nlog2p+p). - b. An algorithm which uses a simulation of sorting networks by the distributed system. If t(p) is the depth of the sorting network of p processors, then our algorithm takes O( n t(p) + p) time. Using recent results on sorting networks we get an O(nlogp+p) (impractical) algorithm. The algorithm also uses addition and subtraction operations. -c. By letting the processor use modular arithmetic operations as well, we can use Yao's probabilistic version, modify our algorithms and get probabilistic algorithms (with small error) where logn replaces n in the complexity expressions. To prove lower bounds for the problem we use Yao's result to get an fl(n) bound, and we also show an fl(p) bound. We suggest open problems concerning new techniques for proving lower bounds in the presence of broadcasting, as well as other problems about efficient use of the model and comparisons between different models of distributed computation
Recommended from our members
Distributed Algorithms in Synchronous Broadcasting Networks
In this paper we consider a synchronous broadcasting network, a distributed computation model which represents communication networks that are used extensively in practice. This is the first work we know of that deals with this model in a theoretical context. The problem we consider is a basic problem of information sharing, the computation of the multiple identification function. That is, given a network of p processors, each of which contains an n-bit string of information, the question is how every processor can compute the subset of processors which have the same information as itself. The problem was suggested by Yao in his classical paper in communication complexity [17], as a generalization of the two-processor case studied in that paper. The immediate algorithm which solves this problem takes O(np) time (time = communication time in bits, which is our complexity measure). We present the following algorithms: - a. An algorithm which takes advantage of properties of strings, uses a very simple scheduling policy, and does not use arithmetic operations. (In fact, the processor can be a Turing machine). 'the algorithm's complexity is O(nlog2p+p). - b. An algorithm which uses a simulation of sorting networks by the distributed system. If t(p) is the depth of the sorting network of p processors, then our algorithm takes O( n t(p) + p) time. Using recent results on sorting networks we get an O(nlogp+p) (impractical) algorithm. The algorithm also uses addition and subtraction operations. -c. By letting the processor use modular arithmetic operations as well, we can use Yao's probabilistic version, modify our algorithms and get probabilistic algorithms (with small error) where logn replaces n in the complexity expressions. To prove lower bounds for the problem we use Yao's result to get an fl(n) bound, and we also show an fl(p) bound. We suggest open problems concerning new techniques for proving lower bounds in the presence of broadcasting, as well as other problems about efficient use of the model and comparisons between different models of distributed computation
Some lower bound results for decentralized extrema-finding in rings of processors
AbstractWe consider the problem of finding the largest of a set of n uniquely numbered processors, arranged in a ring, by means of an asynchronous distributed algorithm without a central controller. Processors are identical, except for their unique number (identity). Using a technique of Frederickson and Lynch we show that arbitrary algorithms that solve this problem on rings where processors know the ring size cannot have a better worst-case number of messages than algorithms that use only comparisons between identities. We show a similar type of result for rings, where the ring size is not known. We use these results to answer a question, posed by Korach, Rotem, and Santoro in 1981 whether each extrema-finding algorithm that uses time n on a ring of n processors must use a quadratic number of messages; and to show a lower bound of 0.683 n log(n) on the worst-case number of messages for unidirectional rings with known ring size n. Also, we give a lower bound of 12n log(n) on the average number of messages for algorithms that use only comparisons on rings with known ring size n
The Complexity of Sorting on Distributed Systems
Coordinated Science Laboratory was formerly known as Control Systems LaboratoryJoint Services Electronics Program / N00014-79-C-0424National Science Foundation / MCS-821744
Lower Bounds on Common Knowledge in Distributed Algorithms
Coordinated Science Laboratory was formerly known as Control Systems LaboratoryJoint Services Electronics Program / N00014-79-C-0424National Science Foundation / MCS-8217445Eastman Kodak CompanyNational Science Foundation / MCS-830239