Skip to main content
Log in

Wait-freedom with advice

  • Published:
Distributed Computing Aims and scope Submit manuscript

Abstract

We motivate and propose a new way of thinking about failure detectors which allows us to define what it means to solve a distributed task wait-free using a failure detector. In our model, the system is composed of computation processes that obtain inputs and are supposed to produce outputs and synchronization processes that are subject to failures and can query a failure detector. Under the condition that correct (never failing) synchronization processes take sufficiently many steps, they provide the computation processes with enough advice to solve the given task wait-free: every computation process outputs in a finite number of its own steps, regardless of the behavior of other computation processes. Every task can thus be characterized by the weakest failure detector that allows for solving it, and we show that every such failure detector captures a form of set agreement. We then obtain a complete classification of tasks, including ones that evaded comprehensible characterization so far, such as renaming or weak symmetry breaking.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4

Similar content being viewed by others

Notes

  1. Informally, \(\mathcal {D}\) is the weakest failure detector to solve a task \(T\) if it (1) solves \(T\) and (2) can be deduced from any failure detector that solves \(T\).

  2. Note that all tasks can be solved \(1\)-concurrently.

  3. For some values of \(j\) and \(k\), however, the question of the maximal tolerated concurrency of \((j,j+k-1)\)-renaming is still open [11].

  4. In other words, point contention [6] in the run with respect to \(C\)-processes does not exceed \(k\).

  5. A trivial failure detector always outputs \(\bot \).

  6. Recall that, informally, in a solution of a colorless task, a process is free to adopt the input or the output value of any other participating process.

  7. The procedure is similar to the corridor-based depth-first search simulation of [26].

References

  1. Afek, Y., Attiya, H., Dolev, D., Gafni, E., Merritt, M., Shavit, N.: Atomic snapshots of shared memory. J. ACM 40(4), 873–890 (1993)

    Article  MATH  Google Scholar 

  2. Afek, Y., Kuznetsov, P., Nir, I.: Renaming and the weakest family of failure detectors. Distrib. Comput. 25(6), 411–425 (2012)

    Article  MATH  Google Scholar 

  3. Aguilera, M.K., Delporte-Gallet, C., Fauconnier, H., Toueg, S.: Partial synchrony based on set timeliness. Distrib. Comput. 25(3), 249–260 (2012)

    Article  MATH  Google Scholar 

  4. Attiya, H., Bar-Noy, A., Dolev, D.: Sharing memory robustly in message passing systems. J. ACM 42(2), 124–142 (1995)

    Article  MATH  Google Scholar 

  5. Attiya, H., Bar-Noy, A., Dolev, D., Peleg, D., Reischuk, R.: Renaming in an asynchronous environment. J. ACM 37(3), 524–548 (1990)

    Article  MATH  MathSciNet  Google Scholar 

  6. Attiya, H., Fouren, A.: Algorithms adapting to point contention. J. ACM 50(4), 444–468 (2003)

    Article  MathSciNet  Google Scholar 

  7. Attiya, H., Welch, J.: Distributed Computing. Fundamentals, Simulations, and Advanced Topics. Wiley, Hoboken (2004)

    Google Scholar 

  8. Borowsky, E., Gafni, E.: Generalized FLP impossibility result for \(t\)-resilient asynchronous computations. In: STOC, pp. 91–100. ACM Press (1993)

  9. Borowsky, E., Gafni, E.: Immediate atomic snapshots and fast renaming. In: PODC, pp. 41–51. ACM Press (1993)

  10. Borowsky, E., Gafni, E., Lynch, N.A., Rajsbaum, S.: The BG distributed simulation algorithm. Distrib. Comput. 14(3), 127–146 (2001)

    Article  Google Scholar 

  11. Castañeda, A., Rajsbaum, S.: New combinatorial topology bounds for renaming: the lower bound. Distrib. Comput. 22(5–6), 287–301 (2010)

    Article  MATH  Google Scholar 

  12. Chandra, T.D., Hadzilacos, V., Toueg, S.: The weakest failure detector for solving consensus. J. ACM 43(4), 685–722 (1996)

    Article  MATH  MathSciNet  Google Scholar 

  13. Chandra, T.D., Toueg, S.: Unreliable failure detectors for reliable distributed systems. J. ACM 43(2), 225–267 (1996)

    Article  MATH  MathSciNet  Google Scholar 

  14. Chaudhuri, S.: More choices allow more faults: set consensus problems in totally asynchronous systems. Inf. Comput. 105(1), 132–158 (1993)

    Article  MATH  Google Scholar 

  15. Delporte-Gallet, C., Fauconnier, H., Gafni, E., Kuznetsov, P.: Wait-freedom with advice. In: PODC, pp. 105–114 (2012)

  16. Delporte-Gallet, C., Fauconnier, H., Guerraoui, R.: Tight failure detection bounds on atomic object implementations. J. ACM 57(4), 22:1–22:32 (2010)

  17. Delporte-Gallet, C., Fauconnier, H., Guerraoui, R., Hadzilacos, V., Koutnetzov, P., Toueg, S.: The weakest failure detectors to solve certain fundamental problems in distributed computing. In: PODC, pp. 338–346. ACM Press (2004)

  18. Delporte-Gallet, C., Fauconnier, H., Guerraoui, R., Kouznetsov, P.: Mutual exclusion in asynchronous systems with failure detectors. J. Parallel Distrib. Comput. 65(4), 492–505 (2005)

    Article  MATH  Google Scholar 

  19. Delporte-Gallet, C., Fauconnier, H., Guerraoui, R., Tielmann, A.: The disagreement power of an adversary. Distrib. Comput. 24(3–4), 137–147 (2011)

    Article  MATH  Google Scholar 

  20. Fischer, M.J., Lynch, N.A., Paterson, M.S.: Impossibility of distributed consensus with one faulty process. J. ACM 32(2), 374–382 (1985)

    Article  MATH  MathSciNet  Google Scholar 

  21. Gafni, E.: Round-by-round fault detectors: unifying synchrony and asynchrony (extended abstract). In: PODC, pp. 143–152 (1998)

  22. Gafni, E.: The extended BG-simulation and the characterization of t-resiliency. In: STOC, pp. 85–92. ACM Press (2009)

  23. Gafni, E., Guerraoui, R.: Simulating few by many: limited concurrency = set consensus. Technical Report. http://www.cs.ucla.edu/eli/eli/kconc.pdf (2009)

  24. Gafni, E., Guerraoui, R.: Generalized universality. In: Proceedings of the 22nd international conference on concurrency theory, CONCUR’11, pp. 17–27. Springer, Berlin (2011)

  25. Gafni, E., Kuznetsov, P.: Turning adversaries into friends: simplified, made constructive, and extended. In: OPODIS, pp. 380–394 (2010)

  26. Gafni, E., Kuznetsov, P.: On set consensus numbers. Distrib. Comput. 24(3–4), 149–163 (2011)

    Article  MATH  Google Scholar 

  27. Gafni, E., Kuznetsov, P.: Relating L-resilience and wait-freedom via hitting sets. In: ICDCN, pp. 191–202. Full version: http://arxiv.org/abs/1004.4701 (2011)

  28. Gafni, E., Rajsbaum, S.: Distributed programming with tasks. In: OPODIS, pp. 205–218 (2010)

  29. Gray, J.: Notes on data base operating systems. In: Bayer, R.,Graham, R.M., Seegmueller, G. (eds.) An Advanced Course : Operating Systems. Lecture Notes in Computer Science 60, pp. 393–481. Springer, Berlin (1978)

  30. Guerraoui, R., Kuznetsov, P.: Failure detectors as type boosters. Distrib. Comput. 20(5), 343–358 (2008)

    Article  MATH  MathSciNet  Google Scholar 

  31. Herlihy, M.: Wait-free synchronization. ACM Trans. Progr. Lang. Syst. 13(1), 123–149 (1991)

    Article  Google Scholar 

  32. Herlihy, M., Shavit, N.: The topological structure of asynchronous computability. J. ACM 46(2), 858–923 (1999)

    Article  MATH  MathSciNet  Google Scholar 

  33. Jayanti, P., Toueg, S.: Every problem has a weakest failure detector. In: PODC, pp. 75–84 (2008)

  34. Lamport, L.: Time, clocks, and the ordering of events in a distributed system. Commun. ACM 21(7), 558–565 (1978)

    Article  MATH  Google Scholar 

  35. Lamport, L.: The part-time parliament. ACM Trans. Comput. Syst. 16(2), 133–169 (1998)

    Article  Google Scholar 

  36. Lo, W.-K., Hadzilacos, V.: Using failure detectors to solve consensus in asynchronous shared memory systems. WDAG, LNCS 857, 280–295 (1994)

    Google Scholar 

  37. Loui, M., Abu-Amara, H.: Memory requirements for agreement among unreliable asynchronous processes. Adv. Comput. Res. 4, 163–183 (1987)

    MathSciNet  Google Scholar 

  38. Lynch, N.A.: Distributed Algorithms. Morgan Kaufmann, Burlington (1996)

    MATH  Google Scholar 

  39. Raynal, M.: \(K\)-anti-Omega, August 2007. Rump session at PODC (2007)

  40. Saks, M., Zaharoglou, F.: Wait-free k-set agreement is impossible: the topology of public knowledge. SIAM J. Comput. 29, 1449–1483 (2000)

    Article  MATH  MathSciNet  Google Scholar 

  41. Zieliński, P.: Anti-\(Omega\): the weakest failure detector for set agreement. Distrib. Comput. 22(5–6), 335–348 (2010)

    Article  MATH  Google Scholar 

Download references

Acknowledgments

The work of Carole Delporte-Gallet and Hugues Fauconnier is supported by the ANR SIMI2 DISPLEXITY.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Carole Delporte-Gallet.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Delporte-Gallet, C., Fauconnier, H., Gafni, E. et al. Wait-freedom with advice. Distrib. Comput. 28, 3–19 (2015). https://doi.org/10.1007/s00446-014-0231-6

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s00446-014-0231-6

Keywords

Navigation