skip to main content
10.1145/1583991.1584015acmconferencesArticle/Chapter ViewAbstractPublication PagesspaaConference Proceedingsconference-collections
research-article

Inherent limitations on disjoint-access parallel implementations of transactional memory

Published:11 August 2009Publication History

ABSTRACT

Transactional memory (TM) is a promising approach for designing concurrent data structures, and it is essential to develop better understanding of the formal properties that can be achieved by TM implementations. Two fundamental properties of TM implementations are disjoint-access parallelism, which is critical for their scalability, and the invisibility of read operations, which reduces memory contention.

This paper proves an inherent tradeoff for implementations of transactional memories: they cannot be both disjoint-access parallel and have read-only transactions that are invisible and always terminate successfully. In fact, a lower bound of Ω(t) is proved on the number of writes needed in order to implement a read-only transaction of t items, which successfully terminates in a disjoint-access parallel TM implementation. The results assume strict serializability and thus hold under the assumption of opacity. It is shown how to extend the results to hold also for weaker consistency conditions, serializability and snapshot isolation.

References

  1. Y. Afek, H. Attiya, D. Dolev, E. Gafni, M. Merritt, and N. Shavit. Atomic snapshots of shared memory. J. ACM, 40(4):873--890, 1993. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. H. Attiya, F. Ellen, and P. Fatourou. The complexity of updating multi-writer snapshot objects. In ICDCN '06, pages 319--330.Google ScholarGoogle Scholar
  3. H. Attiya, R. Guerraoui, and E. Ruppert. Partial snapshot objects. In SPAA '08, pages 336--343. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. H. Avni and N. Shavit. Maintaining consistent transactional states without a global clock. In SIROCCO '08, pages 131--140. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. U. Aydonat and T. Abdelrahman. Serializability of transactions in software transactional memory. In TRANSACT '08.Google ScholarGoogle Scholar
  6. D. Dice, O. Shalev, and N. Shavit. Transactional locking II. In DISC '06, pages 194--208.Google ScholarGoogle Scholar
  7. V. Gramoli, D. Harmanci, and P. Felber. Towards a theory of input acceptance for transactional memories. In OPODIS '08, pages 527--533. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. R. Guerraoui, T. A. Henzinger, and V. Singh. Permissiveness in transactional memories. In DISC '08. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. R. Guerraoui and M. Kapalka. On obstruction-free transactions. In SPAA '08, pages 304--313. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. R. Guerraoui and M. Kapalka. On the correctness of transactional memory. In PPoPP '08, pages 175--184. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. R. Guerraoui and M. Kapalka. The semantics of progress in lock-based transactional memory. In POPL '09, pages 404--415. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. T. L. Harris, K. Fraser, and I. A. Pratt. A practical multi-word compare-and-swap operation. In DISC '02, pages 265--279. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. M. Herlihy, V. Luchangco, M. Moir, and W. N. Scherer III. Software transactional memory for dynamic-sized data structures. In PODC '03, pages 92--101. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. M. Herlihy and N. Shavit. The Art of Multiprocessor Programming. Morgan Kaufmann, 2008. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. M. P. Herlihy and J. M. Wing. Linearizability: a correctness condition for concurrent objects. ACM Trans. Program. Lang. Syst., 12(3):463--492, 1990. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. D. Imbs and M. Raynal. A lock-based protocol for software transactional memory. In OPODIS '08, pages 226--245. Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. A. Israeli and L. Rappoport. Disjoint-access-parallel implementations of strong shared memory primitives. PODC '94, pages 151--160. Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. A. Israeli and A. Shirazi. The time complexity of updating snapshot memories. Inf. Process. Lett., 65(1):33--40, 1998. Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. S. Lu, A. Bernstein, and P. Lewis. Correct execution of transactions at different isolation levels. IEEE Transactions on Knowledge and Data Engineering, 16(9):1070--1081, 2004. Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. J. Napper and L. Alvisi. Lock-free serializable transactions. Technical Report TR-05-04, The University of Texas at Austin, 2005.Google ScholarGoogle Scholar
  21. C. H. Papadimitriou. The serializability of concurrent database updates. J. ACM, 26(4):631--653, 1979. Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. T. Riegel, P. Felber, and C. Fetzer. A lazy snapshot algorithm with eager validation. In DISC '06, pages 284--298. Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. T. Riegel, C. Fetzer, and P. Felber. Snapshot isolation for software transactional memory. In TRANSACT '06.Google ScholarGoogle Scholar
  24. T. Riegel, C. Fetzer, H. Sturzrehm, and P. Felber. From causal to z-linearizable transactional memory. In PODC '07, pages 340--341. Google ScholarGoogle ScholarDigital LibraryDigital Library
  25. G. Weikum and G. Vossen. Transactional Information Systems: Theory, Algorithms, and the Practice of Concurrency Control and Recovery. Morgan Kaufmann, 2001. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Inherent limitations on disjoint-access parallel implementations of transactional memory

        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
          SPAA '09: Proceedings of the twenty-first annual symposium on Parallelism in algorithms and architectures
          August 2009
          370 pages
          ISBN:9781605586069
          DOI:10.1145/1583991

          Copyright © 2009 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: 11 August 2009

          Permissions

          Request permissions about this article.

          Request Permissions

          Check for updates

          Qualifiers

          • research-article

          Acceptance Rates

          Overall Acceptance Rate447of1,461submissions,31%

          Upcoming Conference

          SPAA '24

        PDF Format

        View or Download as a PDF file.

        PDF

        eReader

        View online with eReader.

        eReader