Skip to main content

The Cost of Privatization

  • Conference paper
Book cover Distributed Computing (DISC 2010)

Part of the book series: Lecture Notes in Computer Science ((LNTCS,volume 6343))

Included in the following conference series:

Abstract

Software transactional memory (STM) guarantees that a transaction, consisting of a sequence of operations on the memory, appears to be executed atomically. In practice, it is important to be able to run transactions together with nontransactional legacy code accessing the same memory locations, by supporting privatization. Privatization should be provided without sacrificing the parallelism offered by today’s multicore systems and multiprocessors.

This paper proves an inherent cost for supporting privatization, which is linear in the number of privatized items. Specifically, we show that a transaction privatizing k items must have a data set of size at least k, in an STM with invisible reads, which is oblivious to different non-conflicting executions and guarantees progress in such executions. When reads are visible, it is shown that Ω(k) memory locations must be accessed by a privatizing transaction, where k is the minimum between the number of privatized items and the number of concurrent transactions guaranteed to make progresss, thus capturing the tradeoff between the cost of privatization and the parallelism offered by the STM.

This research is supported in part by the Israel Science Foundation (grant number 953/06). The full version of this paper  contains additional results, proofs and illustrations.

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

Access this chapter

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

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Abadi, M., Birrell, A., Harris, T., Hsieh, J., Isard, M.: Implementation and use of transactional memory with dynamic separation. In: CC ’09, pp. 63–77 (2009)

    Google Scholar 

  2. Abadi, M., Birrell, A., Harris, T., Isard, M.: Semantics of transactional memory and automatic mutual exclusion. In: POPL ’08, pp. 63–74 (2008)

    Google Scholar 

  3. Abadi, M., Harris, T., Mehrara, M.: Transactional memory with strong atomicity using off-the-shelf memory protection hardware. In: PPoPP’09, pp. 185–196 (2009)

    Google Scholar 

  4. Attiya, H., Hillel, E.: The cost of privatization. Technical Report CS-2010-11, Department of Computer Science, Technion. (2010)

    Google Scholar 

  5. Avni, H., Shavit, N.: Maintaining consistent transactional states without a global clock. In: Shvartsman, A.A., Felber, P. (eds.) SIROCCO 2008. LNCS, vol. 5058, pp. 131–140. Springer, Heidelberg (2008)

    Chapter  Google Scholar 

  6. Bloom, B.H.: Space/time trade-offs in hash coding with allowable errors. ACM Commun. 13(7), 422–426 (1970)

    Article  MATH  Google Scholar 

  7. Cascaval, C., Blundell, C., Michael, M., Cain, H.W., Wu, P., Chiras, S., Chatterjee, S.: Software transactional memory: why is it only a research toy? ACM Commun. 51(11), 40–46 (2008)

    Article  Google Scholar 

  8. Dalessandro, L., Spear, M.F., Scott, M.L.: NOrec: Streamlining STM by abolishing ownership records. In: PPoPP ’10 (2010)

    Google Scholar 

  9. Dice, D., Matveev, A., Shavit, N.: Implicit privatization using private transactions. In: TRANSACT ’10 (2010)

    Google Scholar 

  10. Dice, D., Shalev, O., Shavit, N.: Transactional locking II. In: Dolev, S. (ed.) DISC 2006. LNCS, vol. 4167, pp. 194–208. Springer, Heidelberg (2006)

    Chapter  Google Scholar 

  11. Dice, D., Shavit, N.: TLRW: Return of the read-write lock. In: SPAA ’10 (2010)

    Google Scholar 

  12. Dragojevic, A., Felber, P., Gramoli, V., Guerraoui, R.: Why STM can be more than a Research Toy. Technical Report LPD-REPORT-2009-003, EPFL (2009)

    Google Scholar 

  13. Gottschlich, J.E., Vachharajani, M., Jeremy, S.G.: An efficient software transactional memory using commit-time invalidation. In: CGO’10 (2010)

    Google Scholar 

  14. Guerraoui, R., Henzinger, T., Kapalka, M., Singh, V.: Transactions in the jungle. In: SPAA ’10, pp. 275–284 (2010)

    Google Scholar 

  15. Guerraoui, R., Kapalka, M.: On the correctness of transactional memory. In: PPoPP ’08, pp. 175–184 (2008)

    Google Scholar 

  16. Guerraoui, R., Kapalka, M.: The semantics of progress in lock-based transactional memory. In: POPL ’09, pp. 404–415 (2009)

    Google Scholar 

  17. Herlihy, M., Luchangco, V., Moir, M.: Obstruction-free synchronization: Double-ended queues as an example. In: ICDCS ’03, p. 522 (2003)

    Google Scholar 

  18. Israeli, A., Rappoport, L.: Disjoint-access parallel implementations of strong shared memory primitives. In: PODC ’94, pp. 151–160 (1994)

    Google Scholar 

  19. Larus, J.R., Rajwar, R.: Transactional Memory. Morgan & Claypool, San Francisco (2006)

    Google Scholar 

  20. Lev, Y., Luchangco, V., Marathe, V.J., Moir, M., Nussbaum, D., Olszewski, M.: Anatomy of a scalable software transactional memory. In: TRANSACT ’09 (2009)

    Google Scholar 

  21. Marathe, V.J., Spear, M.F., Scott, M.L.: Scalable techniques for transparent privatization in software transactional memory. In: ICPP ’08, pp. 67–74 (2008)

    Google Scholar 

  22. Martin, M., Blundell, C., Lewis, E.: Subtleties of transactional memory atomicity semantics. IEEE Comput. Archit. Lett. 5(2), 17 (2006)

    Article  Google Scholar 

  23. Menon, V., Balensiefer, S., Shpeisman, T., Adl-Tabatabai, A.-R., Hudson, R.L., Saha, B., Welc, A.: Practical weak-atomicity semantics for Java STM. In: SPAA ’08, pp. 314–325 (2008)

    Google Scholar 

  24. Olszewski, M., Cutler, J., Steffan, J.G.: JudoSTM: A dynamic binary-rewriting approach to software transactional memory. In: PACT ’07, pp. 365–375 (2007)

    Google Scholar 

  25. Riegel, T., Felber, P., Fetzer, C.: A lazy snapshot algorithm with eager validation. In: Dolev, S. (ed.) DISC 2006. LNCS, vol. 4167, pp. 284–298. Springer, Heidelberg (2006)

    Chapter  Google Scholar 

  26. Riegel, T., Fetzer, C., Felber, P.: Time-based transactional memory with scalable time bases. In: SPAA ’07, pp. 221–228 (2007)

    Google Scholar 

  27. Schneider, F.T., Menon, V., Shpeisman, T., Adl-Tabatabai, A.-R.: Dynamic optimization for efficient strong atomicity. SIGPLAN Not. 43(10), 181–194 (2008)

    Article  Google Scholar 

  28. Shpeisman, T., Menon, V., Adl-Tabatabai, A.-R., Balensiefer, S., Grossman, D., Hudson, R.L., Moore, K.F., Saha, B.: Enforcing isolation and ordering in STM. SIGPLAN Not. 42(6), 78–88 (2007)

    Article  Google Scholar 

  29. Spear, M.F., Dalessandro, L., Marathe, V.J., Scott, M.L.: Ordering-based semantics for software transactional memory. In: Baker, T.P., Bui, A., Tixeuil, S. (eds.) OPODIS 2008. LNCS, vol. 5401, pp. 275–294. Springer, Heidelberg (2008)

    Chapter  Google Scholar 

  30. Spear, M.F., Marathe, V.J., Dalessandro, L., Scott, M.L.: Privatization techniques for software transactional memory. Technical Report Tr 915, Dept. of Computer Science, Univ. of Rochester (2007)

    Google Scholar 

  31. Spear, M.F., Michael, M.M., von Praun, C.: RingSTM: scalable transactions with a single atomic instruction. In: SPAA ’08, pp. 275–284 (2008)

    Google Scholar 

  32. Wang, C., Chen, W.-Y., Wu, Y., Saha, B., Adl-Tabatabai, A.-R.: Code generation and optimization for transactional memory constructs in an unmanaged language. In: CGO ’07, pp. 34–48 (2007)

    Google Scholar 

  33. Yoo, R.M., Ni, Y., Welc, A., Saha, B., Adl-Tabatabai, A.-R., Lee, H.-H.S.: Kicking the tires of software transactional memory: why the going gets tough. In: SPAA ’08, pp. 265–274 (2008)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2010 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Attiya, H., Hillel, E. (2010). The Cost of Privatization. In: Lynch, N.A., Shvartsman, A.A. (eds) Distributed Computing. DISC 2010. Lecture Notes in Computer Science, vol 6343. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-15763-9_5

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-15763-9_5

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-15762-2

  • Online ISBN: 978-3-642-15763-9

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics