Skip to main content

Exploring Data Reusing of Failed Transaction

  • Conference paper

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

Abstract

Transactional Memory (TM) has been the promising parallel programming technique to relieve the tedious work of synchronizing shared object using lock mechanism. Transaction execution required to be atomic and isolated relative to the whole system. The transaction fails if found violated access to the shared object from other transaction, and it will be re-executed till finally commit successfully; currently, most TM systems are required to restore shared memory’s state before re-execution, this cleanup cost and the shared object’s opening cost greatly hurdle system’s performance.

In this paper, we propose a new general transaction iteration’s data reusing (TItDR) method which reuses the opened object of failed transaction in the following re-execution. The obvious advantage is that it greatly simplify the opening process if it has been opened in previous failed transaction and most of the cleanup work are no longer needed. TItDR leaves opened object in pseudo-active state and restart the transaction, We talk about conflicts resolution, validation, commit/abort processing problem along with our data reusing method and show that TItDR will not incur more conflicts and more overhead for validation or commit. Both currently proposed software transactional memory (STM) systems and hardware systems (HTM) have much potential data reusing.

Our test result is based on STM implementation, which shows 40% performance improvement on average.

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   84.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD   109.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. Marathe, V.J., Spear, M.F., Heriot, C., Acharya, A., Eisenstat, D.: Scherer III, W.N., Scott, M.L.: Lowering the overhead of software transactional memory. Technical Report TR 893, Computer Science Department, University of Rochester (2006)

    Google Scholar 

  2. Chuang, W., Narayanasamy, S., Venkatesh, G., Sampson, J., Van Biesbrouck, M., Pokam, G., Calder, B., Colavin, O.: Unbounded page-based transactional memory. In: ASPLOS-XII: Proceedings of the 12th international conference on Architectural support for programming languages and operating systems, San Jose, California, USA, pp. 347–358. ACM Press, New York, NY, USA (2006)

    Chapter  Google Scholar 

  3. Moore, K.E., Bobba, J., Moravan, M.J., Hill, M.D., Wood, D.A.: Logtm: Log-based transactional memory. In: Proceedings of the 12th International Symposium on High-Performance Computer Architecture, pp. 254–265 (2006)

    Google Scholar 

  4. Hammond, L., Wong, V., Chen, M., Carlstrom, B.D., Davis, J.D., Hertzberg, B., Prabhu, M.K., Wijaya, H., Kozyrakis, C., Olukotun, K.: Transactional memory coherence and consistency. SIGARCH Comput. Archit. News 32(2), 102 (2004)

    Article  Google Scholar 

  5. Liblit, B.: An operational semantics for LogTM. Technical Report, University of Wisconsin–Madison (2006) Version 1.0 (1571)

    Google Scholar 

  6. Moore, K.E.: Thread-level transactional memory. In: Wisconsin Industrial Affiliates Meeting (2004)

    Google Scholar 

  7. Hammond, L., Carlstrom, B.D., Wong, V., Hertzberg, B., Chen, M., Kozyrakis, C., Olukotun, K.: Programming with transactional coherence and consistency (tcc). In: ASPLOS-XI: Proceedings of the 11th international conference on Architectural support for programming languages and operating systems, pp. 1–13. ACM Press, New York, NY, USA (2004)

    Chapter  Google Scholar 

  8. Lie, S.: Hardware support for unbounded transactional memory. Master’s thesis, Massachusetts Institute of Technology (2004)

    Google Scholar 

  9. William, N., Scherer, I., Scott, M.L.: Advanced contention management for dynamic software transactional memory. In: PODC 2005. Proceedings of the twenty-fourth annual ACM symposium on Principles of distributed computing, pp. 240–248. ACM Press, New York, NY, USA (2005)

    Google Scholar 

  10. Herlihy, M., Moss, J.E.B.: Transactional memory: architectural support for lock-free data structures. In: ISCA 1993. Proceedings of the 20th annual international symposium on Computer architecture, pp. 289–300. ACM Press, New York, NY, USA (1993)

    Chapter  Google Scholar 

  11. Herlihy, M., Luchangco, V., Moir, M.: A flexible framework for implementing software transactional memory. In: OOPSLA 2006. Proceedings of the 21st annual ACM SIGPLAN conference on Object-oriented programming systems, languages, and applications, pp. 253–262. ACM Press, New York, NY, USA (2006)

    Chapter  Google Scholar 

  12. Saha, B., Adl-Tabatabai, A.-R., Hudson, R.L., Minh, C.C., Hertzberg, B.: Mcrt-stm: a high performance software transactional memory system for a multi-core runtime. In: PPoPP 2006. Proceedings of the eleventh ACM SIGPLAN symposium on Principles and practice of parallel programming, pp. 187–197. ACM Press, New York, NY, USA (2006)

    Chapter  Google Scholar 

  13. Spear, M.F., Marathe, V.J., Scherer III, W.N., Scott, M.L.: Conflict detection and validation strategies for software transactional memory. In: DISC, pp. 179–193 (2006)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Ming Xu Yinwei Zhan Jiannong Cao Yijun Liu

Rights and permissions

Reprints and permissions

Copyright information

© 2007 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Wang, S., Wu, D., Yang, X., Pang, Z. (2007). Exploring Data Reusing of Failed Transaction. In: Xu, M., Zhan, Y., Cao, J., Liu, Y. (eds) Advanced Parallel Processing Technologies. APPT 2007. Lecture Notes in Computer Science, vol 4847. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-76837-1_18

Download citation

  • DOI: https://doi.org/10.1007/978-3-540-76837-1_18

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-76836-4

  • Online ISBN: 978-3-540-76837-1

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics