Modular competitiveness for distributed algorithms

Modular Competitiveness for Distributed Algorithms James Aspnes” Orli Waartst We define a novel measure of competitive performance for distributed algorithms based on throughput, the number of tasks that an a3gorithm can carry out in a fixed amount of work. An important property of the throughput measure is that it is modular: we define a notion of relative competitiveness with the property that a k-relatively competitive implementation of an object T using a subroutine U, combined with an l-competitive implement ation of U, gives a M-competitive algorithm for T. We prove the throughput-competitiveness of an algorithm for a fundamental building block of many well-known distributed algorithms: the cooperative collect primitive. ThE permits a straightforward construction of competitive versions of these algorithms— the first examples of algorithms obtained through a general method for modular construction of competitive distributed algorithms. Moreover, we provide a lower bound that shows that the throughput competitiveness of the cooperative collect algorithm we study is nearly optimal Thus, we see our paper aa making two main contributions: one is the introduction of a modular measurement for competitiveness, whose interest is justified by the throughput competitiveness of the cooperative collect algorithms; and the other is a technique for proving throughput competitiveness, which may apply to other distributed problems. ● Yale University, Department of Computer Science, 51 Prospect Street/P.O. Box 208285, New Haven CT 06520-8285. Supported by NSF grants CCR9410228 and CCR941541O. E mail: a.spnes-jsaes@cs. yala .eda tcomputer science Division, U. C. Berkeley. sup ported in part by an NSF postdoctoral fellowship. EMail: waartsacs. berkalay. edn Permission to make digital/hard copies of all or part of tbk material for persons] or claaaroom use is granted without fee provided that the copies are not made or dktributed for profit or conunemial advantage, the copyright notice, the title of the publication and its date appear, and notice is given that copyright is by permission of the ACM, Ioc. To copy otherwise, to republish, to poet on servera or to redistribute to lists, requires specific pennisaion and/or fee. STOC’96, Philadelphia PA, USA e 1996 ACM 0-89791-785-5/96/05. .$3.50

[1]  Maurice Herlihy,et al.  Time-Lapse Snapshots , 1992, SIAM J. Comput..

[2]  Nancy A. Lynch,et al.  Concurrent Timestamping Made Simple , 1992, ISTCS.

[3]  Eli Gafni,et al.  Immediate atomic snapshots and fast renaming , 1993, PODC '93.

[4]  Mihalis Yannakakis,et al.  Linear programming without the matrix , 1993, STOC.

[5]  Maurice Herlihy,et al.  Fast Randomized Consensus Using Shared Memory , 1990, J. Algorithms.

[6]  James Aspnes,et al.  Randomized Consensus in Expected O(n log² n) Operations Per Processor , 1996, SIAM J. Comput..

[7]  Adi Rosén,et al.  The distributed k-server problem-a competitive distributed translator for k-server algorithms , 1992, Proceedings., 33rd Annual Symposium on Foundations of Computer Science.

[8]  Joseph Y. Halpern,et al.  Performing work efficiently in the presence of faults , 1992, PODC '92.

[9]  Gil Neiger,et al.  Common Knowledge and Consistent Simultaneous Coordination , 1990, WDAG.

[10]  Amos Fiat,et al.  Competitive distributed file allocation , 1993, STOC '93.

[11]  Robert E. Tarjan,et al.  Amortized efficiency of list update and paging rules , 1985, CACM.

[12]  Boaz Patt-Shamir,et al.  A theory of clock synchronization (extended abstract) , 1994, STOC '94.

[13]  Maurice Herlihy,et al.  Bounded round number , 1993, PODC '93.

[14]  Maurice Herlihy,et al.  Efficient Atomic Snapshots Using Lattice Agreement (Extended Abstract) , 1992, WDAG.

[15]  James Aspnes Time- and Space-Efficient Randomized Consensus , 1993, J. Algorithms.

[16]  Michael J. Fischer,et al.  Sacrificing serializability to attain high availability of data in an unreliable network , 1982, PODS.

[17]  Baruch Awerbuch,et al.  Competitive distributed job scheduling (extended abstract) , 1992, STOC '92.

[18]  Baruch Awerbuch,et al.  Atomic shared register access by asynchronous hardware , 1986, 27th Annual Symposium on Foundations of Computer Science (sfcs 1986).

[19]  Hagit Attiya,et al.  Optimal Clock Synchronization under Different Delay Assumptions , 1996, SIAM J. Comput..

[20]  Joseph Y. Halpern,et al.  A characterization of eventual Byzantine agreement , 1990, PODC '90.

[21]  Amos Israeli,et al.  Wait-Free Consensus Using Asynchronous Hardware , 1994, SIAM J. Comput..

[22]  Amos Fiat,et al.  Heat and Dump: competitive distributed paging , 1993, Proceedings of 1993 IEEE 34th Annual Foundations of Computer Science.

[23]  Yossi Azar,et al.  Local optimization of global objectives: competitive distributed deadlock resolution and resource allocation , 1994, Proceedings 35th Annual Symposium on Foundations of Computer Science.

[24]  Nir Shavit,et al.  Bounded concurrrent time-stamp systems are constructible , 1989, STOC '89.

[25]  Joseph Y. Halpern,et al.  Knowledge and common knowledge in a distributed environment , 1984, JACM.

[26]  Adi Rosén,et al.  The Distributed k-Server Problem - A Competitive Distributed Translator for k-Server Algorithms , 1997, J. Algorithms.

[27]  Danny Dolev,et al.  Early stopping in Byzantine agreement , 1990, JACM.

[28]  Yuval Rabani,et al.  Competitive Algorithms for Distributed Data Management , 1995, J. Comput. Syst. Sci..

[29]  Paul G. Spirakis,et al.  Reading Many Variables in One Atomic Operation: Solutions With Linear or Sublinear Complexity , 1991, WDAG.

[30]  Cynthia Dwork,et al.  A theory of competitive analysis for distributed algorithms , 1994, Proceedings 35th Annual Symposium on Foundations of Computer Science.

[31]  Boaz Patt,et al.  A theory of clock synchronization , 1994 .

[32]  Shmuel Zaks,et al.  Proceedings of the 6th International Workshop on Distributed Algorithms , 1992 .

[33]  Hagit Attiya,et al.  Atomic snapshots in O(n log n) operations , 1993, PODC '93.

[34]  Maurice Herlihy,et al.  Wait-free data structures in the asynchronous PRAM model , 1990, SPAA '90.

[35]  Nir Shavit,et al.  Optimal time randomized consensus—making resilient algorithms fast in practice , 1991, SODA '91.

[36]  Hagit Attiya,et al.  Optimal clock synchronization under different delay assumptions , 1993, PODC '93.

[37]  Yuval Rabani,et al.  Competitive algorithms for distributed data management (extended abstract) , 1992, STOC '92.

[38]  Maurice Herlihy,et al.  Randomized wait-free concurrent objects (extended abstract) , 1991, PODC '91.

[39]  Karl R. Abrahamson On achieving consensus using a shared memory , 1988, PODC '88.

[40]  Maurice Herlihy,et al.  Contention in shared memory algorithms , 1997, J. ACM.

[41]  Baruch Awerbuch,et al.  Sparse partitions , 1990, Proceedings [1990] 31st Annual Symposium on Foundations of Computer Science.

[42]  Ophir Rachman,et al.  Randomized Consensus in Expected O(n²log n) Operations , 1991, WDAG.

[43]  Subhasis Haldar,et al.  Efficient bounded timestamping using traceable use abstraction - is writer's guessing better than re , 1993 .

[44]  Cynthia Dwork,et al.  Simple and efficient bounded concurrent timestamping or bounded concurrent timestamp systems are comprehensible! , 1992, STOC '92.

[45]  Amos Israeli,et al.  A Concurrent Time-Stamp Scheme which is Linear in Time and Space , 1992, WDAG.

[46]  James H. Anderson Composite Registers , 1990, PODC.

[47]  Noga Alon,et al.  Lower bounds on the competitive ratio for mobile user tracking and distributed job scheduling , 1992, Proceedings., 33rd Annual Symposium on Foundations of Computer Science.

[48]  Yoram Moses,et al.  Knowledge and Common Knowledge in a Byzantine Environment I: Crash Failures , 1986, TARK.