Advertisement

The Weakest Failure Detectors to Boost Obstruction-Freedom

  • Rachid Guerraoui
  • Michał Kapałka
  • Petr Kouznetsov
Part of the Lecture Notes in Computer Science book series (LNCS, volume 4167)

Abstract

This paper determines necessary and sufficient conditions to implement wait-free and non-blocking contention managers in a shared memory system. The necessary conditions hold even when universal objects (like compare-and-swap) or random oracles are available, whereas the sufficient ones assume only registers.

We show that failure detector \(\diamond\mathcal{P}\)is the weakest to convert any obstruction-free algorithm into a wait-free one, and Ω*, a new failure detector which we introduce in this paper, and which is strictly weaker than \(\diamond\mathcal{P}\) but strictly stronger than Ω, is the weakest to convert any obstruction-free algorithm into a non-blocking one.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Herlihy, M.: Wait-free synchronization. ACM Transactions on Programming Languages and Systems 13(1), 124–149 (1991)CrossRefGoogle Scholar
  2. 2.
    Herlihy, M., Wing, J.M.: Linearizability: a correctness condition for concurrent objects. ACM Transactions on Programming Languages and Systems 12(3), 463–492 (1990)CrossRefGoogle Scholar
  3. 3.
    Attiya, H., Welch, J.L.: Distributed Computing: Fundamentals, Simulations and Advanced Topics, 2nd edn. Wiley, Chichester (2004)Google Scholar
  4. 4.
    LaMarca, A.: A performance evaluation of lock-free synchronization protocols. In: Proceedings of the 13th Annual ACM Symposium on Principles of Distributed Computing (PODC 1994), pp. 130–140 (1994)Google Scholar
  5. 5.
    Bershad, B.N.: Practical considerations for non-blocking concurrent objects. In: Proceedings of the 14th IEEE International Conference on Distributed Computing Systems (ICDCS 1993), pp. 264–273 (1993)Google Scholar
  6. 6.
    Herlihy, M., Luchango, V., Moir, M.: Obstruction-free synchronization: Double-ended queues as an example. In: Proceedings of the 23rd IEEE International Conference on Distributed Computing Systems (ICDCS 1993), pp. 522–529 (2003)Google Scholar
  7. 7.
    Herlihy, M., Luchangco, V., Moir, M., Scherer III, W.N.: Software transactional memory for dynamic-sized data structures. In: Proceedings of the 22nd Annual ACM Symposium on Principles of Distributed Computing (PODC 2003), pp. 92–101 (2003)Google Scholar
  8. 8.
    Scherer III, W.N., Scott, M.L.: Contention management in dynamic software transactional memory. In: PODC Workshop on Concurrency and Synchronization in Java Programs (2004)Google Scholar
  9. 9.
    Scherer III, W.N., Scott, M.L.: Advanced contention management for dynamic software transactional memory. In: Proceedings of the 24th Annual ACM Symposium on Principles of Distributed Computing (PODC 2005) (2005)Google Scholar
  10. 10.
    Guerraoui, R., Herlihy, M.P., Pochon, B.: Polymorphic contention management. In: Fraigniaud, P. (ed.) DISC 2005. LNCS, vol. 3724, pp. 303–323. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  11. 11.
    Guerraoui, R., Herlihy, M., Pochon, B.: Toward a theory of transactional contention managers. In: Proceedings of the 24th Annual ACM Symposium on Principles of Distributed Computing (PODC 2005) (2005)Google Scholar
  12. 12.
    Fich, F.E., Luchangco, V., Moir, M., Shavit, N.N.: Obstruction-free algorithms can be practically wait-free. In: Fraigniaud, P. (ed.) DISC 2005. LNCS, vol. 3724, pp. 78–92. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  13. 13.
    Guerraoui, R., Herlihy, M., Kapałka, M., Pochon, B.: Robust contention management in software transactional memory. In: Proceedings of the Workshop on Synchronization and Concurrency in Object-Oriented Languages (SCOOL); in conjunction with the ACM Conference on Object-Oriented Programming, Systems, Languages and Applications (OOPSLA 2005) (2005)Google Scholar
  14. 14.
    Chandra, T.D., Toueg, S.: Unreliable failure detectors for reliable distributed systems. Journal of the ACM 43(2), 225–267 (1996)MATHCrossRefMathSciNetGoogle Scholar
  15. 15.
    Chandra, T.D., Hadzilacos, V., Toueg, S.: The weakest failure detector for solving consensus. Journal of the ACM 43(4), 685–722 (1996)MATHCrossRefMathSciNetGoogle Scholar
  16. 16.
    Lamport, L.: The part-time parliament. ACM Transactions on Computer Systems 16(2), 133–169 (1998)CrossRefGoogle Scholar
  17. 17.
    Guerraoui, R., Kapałka, M., Kouznetsov, P.: Boosting obstruction-freedom with low overhead. Technical report, EPFL (submitted for publication, 2006)Google Scholar
  18. 18.
    Guerraoui, R., Kapałka, M., Kouznetsov, P.: The weakest failure detectors to boost obstruction-freedom. Technical report, EPFL (2006)Google Scholar
  19. 19.
    Jayanti, P.: Robust wait-free hierarchies. Journal of the ACM 44(4), 592–614 (1997)MATHCrossRefMathSciNetGoogle Scholar
  20. 20.
    Attiya, H., Guerraoui, R., Kouznetsov, P.: Computing with reads and writes in the absence of step contention. In: Fraigniaud, P. (ed.) DISC 2005. LNCS, vol. 3724, pp. 122–136. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  21. 21.
    Guerraoui, R., Schiper, A.: Γ-accurate failure detectors. In: Babaoğlu, Ö., Marzullo, K. (eds.) WDAG 1996. LNCS, vol. 1151. Springer, Heidelberg (1996)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2006

Authors and Affiliations

  • Rachid Guerraoui
    • 1
    • 2
  • Michał Kapałka
    • 2
  • Petr Kouznetsov
    • 3
  1. 1.Computer Science and Artificial Intelligence LaboratoryMIT 
  2. 2.School of Computer and Communication SciencesEPFL 
  3. 3.Max Planck Institute for Software Systems 

Personalised recommendations