skip to main content
10.1145/2484239.2484255acmconferencesArticle/Chapter ViewAbstractPublication PagespodcConference Proceedingsconference-collections
research-article

An O(1)-barriers optimal RMRs mutual exclusion algorithm: extended abstract

Published:22 July 2013Publication History

ABSTRACT

Mutual exclusion is a fundamental coordination problem. Over the last 20 years, shared-memory mutual exclusion research focuses on local-spin algorithms and uses the remote memory references (RMRs) metric.

To ensure the correctness of concurrent algorithms in general, and mutual exclusion algorithms in particular, it is often required to prohibit certain re-orderings of memory instructions that may compromise correctness, by inserting memory barrier instructions. Memory barriers incur non-negligible overhead and may significantly increase the algorithm's time complexity.

This paper presents the first read/write mutual exclusion algorithm with asymptotically optimal complexity under both the RMRs and barriers metrics: each passage through the critical section incurs O(log n) RMRs and a constant number of barriers. The algorithm works in the popular Total Store Ordering model.

References

  1. S. V. Adve and K. Gharachorloo. Shared memory consistency models: A tutorial. IEEE Computer, 29(12):66--76, 1996. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. J. H. Anderson and Y.-J. Kim. Adaptive mutual exclusion with local spinning. In DISC, pages 29--43, 2000. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. H. Attiya, R. Guerraoui, D. Hendler, P. Kuznetsov, M. M. Michael, and M. T. Vechev. Laws of order: expensive synchronization in concurrent algorithms cannot be eliminated. In POPL, pages 487--498, 2011. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. H. Attiya, D. Hendler, and P. Woelfel. Tight RMR lower bounds for mutual exclusion and other problems. In STOC, pages 217--226, 2008. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. T. Craig. Building FIFO and priority-queuing spin locks from atomic swap. Technical report, 1993.Google ScholarGoogle Scholar
  6. R. Danek and W. M. Golab. Closing the complexity gap between FCFS mutual exclusion and mutual exclusion. In DISC, pages 93--108, 2008. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. D. Dice. personal communication, May 2013.Google ScholarGoogle Scholar
  8. W. M. Golab, V. Hadzilacos, D. Hendler, and P. Woelfel. RMR-efficient implementations of comparison primitives using read and write operations. Distributed Computing, 25(2):109--162, 2012.Google ScholarGoogle ScholarCross RefCross Ref
  9. W. M. Golab, D. Hendler, and P. Woelfel. An O(1) rmrs leader election algorithm. SIAM J. Comput., 39(7):2726--2760, 2010. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. D. Hendler and P. Woelfel. Randomized mutual exclusion with sub-logarithmic rmr-complexity. Distributed Computing, 24(1):3--19, 2011.Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. M. P. Herlihy and J. M. Wing. Linearizability: a correctness condition for concurrent objects. ACM Transactions on Programming Languages and Systems, 12(3):463--492, 1990. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. Intel Corporation. Intel® 64 and IA-32 Architectures Software Developer's Manual. Number 253669-033US. December 2009.Google ScholarGoogle Scholar
  13. P. Jayanti. Adaptive and efficient abortable mutual exclusion. In PODC, pages 295--304, 2003. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. P. Jayanti, S. Petrovic, and N. Narula. Read/write based fast-path transformation for FCFS mutual exclusion. In SOFSEM, pages 209--218, 2005. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. Y.-J. Kim and J. Anderson. A time complexity bound for adaptive mutual exclusion. In DISC, pages 1--15, 2001. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. M. Kuperstein, M. Vechev, and E. Yahav. Automatic inference of memory fences. In FMCAD, pages 111--119, 2010. Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. L. Lamport. A new solution of dijkstra's concurrent programming problem. Commun. ACM, 17(8):453--455, 1974. Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. L. Lamport. How to make a correct multiprocess program execute correctly on a multiprocessor. IEEE Trans. Computers, 46(7):779--782, 1997. Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. D. L.Weaver and T. Germond, editors. The SPARC Architecture Manual. Prentice Hall, 1994. Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. P. Magnusson, A. Landin, and E. Hagersten. Queue locks on cache coherent multiprocessors. In IPPS, pages 165--171, 1994. Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. J. M. Mellor-Crummey and M. L. Scott. Algorithms for scalable synchronization on shared-memory multiprocessors. ACM Trans. Comput. Syst., 9(1):21--65, 1991. Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. S. Owens, S. Sarkar, and P. Sewell. A better x86 memory model: x86-tso. In Theorem Proving in Higher Order Logics, pages 391--407, 2009. Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. S. Park and D. Dill. An executable specification and verifier for relaxed memory order. Computers, IEEE Transactions on, 48(2):227--235, 1999. Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. G. L. Peterson. Myths about the mutual exclusion problem. Inf. Process. Lett., 12(3):115--116, 1981.Google ScholarGoogle ScholarCross RefCross Ref
  25. P. Sewell, S. Sarkar, S. Owens, F. Z. Nardelli, and M. O. Myreen. x86-tso: a rigorous and usable programmer's model for x86 multiprocessors. Commun. ACM, 53(7):89--97, 2010. Google ScholarGoogle ScholarDigital LibraryDigital Library
  26. J.-H. Yang and J. Anderson. A fast, scalable mutual exclusion algorithm. Distributed Computing, 9(1):51--60, 1995.Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. An O(1)-barriers optimal RMRs mutual exclusion algorithm: extended abstract

        Recommendations

        Comments

        Login options

        Check if you have access through your login credentials or your institution to get full access on this article.

        Sign in
        • Published in

          cover image ACM Conferences
          PODC '13: Proceedings of the 2013 ACM symposium on Principles of distributed computing
          July 2013
          422 pages
          ISBN:9781450320658
          DOI:10.1145/2484239

          Copyright © 2013 ACM

          Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

          Publisher

          Association for Computing Machinery

          New York, NY, United States

          Publication History

          • Published: 22 July 2013

          Permissions

          Request permissions about this article.

          Request Permissions

          Check for updates

          Qualifiers

          • research-article

          Acceptance Rates

          PODC '13 Paper Acceptance Rate37of145submissions,26%Overall Acceptance Rate740of2,477submissions,30%

          Upcoming Conference

          PODC '24

        PDF Format

        View or Download as a PDF file.

        PDF

        eReader

        View online with eReader.

        eReader