Skip to main content

Consensus Numbers of Transactional Objects

  • Conference paper
  • First Online:

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 1693))

Abstract

This paper describes the ability of asynchronous shared- memory distributed systems to solve the consensus problem in a wait-free manner if processes are permitted to perform transactions on the shared memory in a single atomic action. It will be shown that transactional memory is often extremely powerful, even if weak types of shared objects are used and the transactions are short. Suppose T is a type of shared object. For any positive integer m, the transactional type trans(T,m) allows processes to perform up to m accesses to a collection of objects of type T in a transaction. The transaction may also include internal process actions that do not affect the shared memory. For any non-trivial type T, trans(T,m) can solve consensus among Ω(2m/2) processes. A stronger lower bound of Ω(2m) is given for a large class of objects that includes all non-trivial read-modify-write types T. If the type T is equipped with operations that allow processes to read the state of the object without altering the state, then trans(T, 2) is capable of solving consensus among any number of processes. This paper also gives a consensus algorithm for n m-1 processes using trans(n-consensus,m) and a consensus algo- rithm for any number of processes that uses trans(test&set, 3).

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

Buying options

Chapter
USD   29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD   39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD   54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Learn about institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Yehuda Afek, Michael Merritt, AND Gadi Taubenfeld. The power of multiobjects. In Proc. 15th ACM Symposium on Principles of Distributed Computing, pages 213–222, 1996.

    Google Scholar 

  2. James H. Anderson AND Mark Moir. Universal constructions for multi-object operations. In Proc. 14th ACM Symposium on Principles of Distributed Computing, pages 184–193, 1995.

    Google Scholar 

  3. Hagit Attiya AND Eyal Dagan. Universal operations: Unary versus binary. In Proc. 15th ACM Symposium on Principles of Distributed Computing, pages 223–232, 1996.

    Google Scholar 

  4. Maurice Herlihy. Wait-free synchronization. ACM Transactions on Programming Languages and Systems, 11(1), pages 124–149, January 1991.

    Article  Google Scholar 

  5. Maurice Herlihy. A methodology for implementing highly concurrent data objects. ACM Transactions on Programming Languages and Systems, 15(5), pages 745–770, November 1993.

    Article  Google Scholar 

  6. Maurice Herlihy AND J. Eliot B. Moss. Transactional memory: Architectural support for lock-free data structures. In Proc. 20th International Symposium on Computer Architecture, pages 289–300, 1993.

    Google Scholar 

  7. Amos Israeli AND Lihu Rappoport. Disjoint-access-parallel implementations of strong shared memory primitives. In Proc. 13th ACM Symposium on Principles of Distributed Computing, pages 151–160, 1994.

    Google Scholar 

  8. Prasad Jayanti. Robust wait-free hierarchies. Journal of the ACM, 44(4), pages 592–614, July 1997.

    Article  MATH  MathSciNet  Google Scholar 

  9. Prasad Jayanti AND Sanjay Khanna. On the power of multi-objects. In Distributed Algorithms, 11th International Workshop, volume 1320 of LNCS, pages 320–332, 1997.

    Chapter  Google Scholar 

  10. Clyde P. Kruskal, Larry Rudolph, AND Marc Snir. Efficient synchronization on multiprocessors with shared memory. ACM Transactions on Programming Languages and Systems, 10(4), pages 579–601, October 1988.

    Article  MATH  Google Scholar 

  11. Nancy A. Lynch. Distributed Algorithms, chapter 8. Morgan Kaufmann, 1996.

    Google Scholar 

  12. Mark Moir. Transparent support for wait-free transactions. In Distributed Algorithms, 11th International Workshop, volume 1320 of LNCS, pages 305–319, 1997.

    Chapter  Google Scholar 

  13. Eric Ruppert. Determining consensus numbers. In Proc. 16th ACM Symposium on Principles of Distributed Computing, pages 93–99, 1997.

    Google Scholar 

  14. Eric Ruppert. Consensus numbers of multi-objects. In Proc. 17th ACM Symposium on Principles of Distributed Computing, pages 211–217, 1998.

    Google Scholar 

  15. Nir Shavit AND Dan Touitou. Software transactional memory. Distributed Computing, 10(2), pages 99–116, February 1997.

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 1999 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Ruppert, E. (1999). Consensus Numbers of Transactional Objects. In: Jayanti, P. (eds) Distributed Computing. DISC 1999. Lecture Notes in Computer Science, vol 1693. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-48169-9_22

Download citation

  • DOI: https://doi.org/10.1007/3-540-48169-9_22

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-66531-1

  • Online ISBN: 978-3-540-48169-0

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics