Solving the At-Most-Once Problem with Nearly Optimal Effectiveness

We present and analyze a wait-free deterministic algorithm for solving the at-most-once problem: how m shared-memory fail-prone processes perform asynchronously n tasks at most once. Our algorithmic strategy provides for the first time nearly optimal effectiveness, which is a measure that expresses the total number of tasks completed in the worst case. The effectiveness of our algorithm equals n−2m+2. This is up to an additive factor of m close to the known effectiveness upper bound n−m+1 over all possible algorithms and improves on the previously best known deterministic solutions that have effectiveness only n−logm ·o(n). We also present an iterated version of our algorithm that for any $m = \mathrm{O}(\sqrt[3+\epsilon]{n/\log n})$ is both effectiveness-optimal and work-optimal, for any constant e>0. We then employ this algorithm to provide a new algorithmic solution for the Write-All problem which is work optimal for any $m=\mathrm{O}(\sqrt[3+\epsilon]{n/\log n})$ .

[1]  Nancy A. Lynch,et al.  An introduction to input/output automata , 1989 .

[2]  Dariusz R. Kowalski,et al.  Cooperative asynchronous update of shared memory , 2005, STOC '05.

[3]  Barbara Liskov,et al.  Distributed programming in Argus , 1988, CACM.

[4]  Aggelos Kiayias,et al.  At-most-once semantics in asynchronous shared memory , 2009, SPAA '09.

[5]  Maurice Herlihy,et al.  Wait-free synchronization , 1991, TOPL.

[6]  Nancy A. Lynch,et al.  Correctness of At-Most-Once Message Delivery Protocols , 1993, FORTE.

[7]  Brian A. Coan,et al.  Using adaptive timeouts to achieve at-most-once message delivery , 2009, Distributed Computing.

[8]  Hagit Attiya,et al.  Renaming in an asynchronous environment , 1990, JACM.

[9]  Kwei-Jay Lin,et al.  Atomic Remote Procedure Call , 1985, IEEE Transactions on Software Engineering.

[10]  Liuba Shrira,et al.  Efficient at-most-once messages based on synchronized clocks , 1991, TOCS.

[11]  Alexander A. Shvartsman,et al.  Fault-Tolerant Parallel Computation , 1997 .

[12]  Andrew Birrell,et al.  Implementing remote procedure calls , 1984, TOCS.

[13]  Grzegorz Malewicz,et al.  A Work-Optimal Deterministic Algorithm for the Certified Write-All Problem with a Nontrivial Number of Asynchronous Processors , 2005, SIAM J. Comput..

[14]  Richard W. Watson,et al.  The Delta-t transport protocol: features and experience , 1989, [1989] Proceedings. 14th Conference on Local Computer Networks.

[15]  Keren Censor Hillel Multi-sided shared coins and randomized set-agreement , 2010, SPAA 2010.

[16]  Nancy A. Lynch,et al.  Modelling shared state in a shared action model , 1990, [1990] Proceedings. Fifth Annual IEEE Symposium on Logic in Computer Science.

[17]  Richard J. Anderson,et al.  Algorithms for the Certified Write-All Problem , 1997, SIAM J. Comput..

[18]  Leslie Lamport,et al.  The part-time parliament , 1998, TOCS.

[19]  Aggelos Kiayias,et al.  Asynchronous Perfectly Secure Communication over One-Time Pads , 2005, ICALP.

[20]  Nancy A. Lynch,et al.  Impossibility of distributed consensus with one faulty process , 1985, JACM.

[21]  Nancy A. Lynch,et al.  Distributed Algorithms , 1994, Lecture Notes in Computer Science.

[22]  Jan Friso Groote,et al.  An algorithm for the asynchronous Write-All problem based on process collision , 2001, Distributed Computing.

[23]  Dariusz R. Kowalski,et al.  Writing-all deterministically and optimally using a nontrivial number of asynchronous processors , 2008, ACM Trans. Algorithms.