Skip to main content

Abort-Free STM: A Non-blocking Concurrency Control Approach Using Software Transactional Memory

  • Chapter
  • First Online:
Advanced Computing and Systems for Security

Part of the book series: Advances in Intelligent Systems and Computing ((AISC,volume 567))

  • 463 Accesses

Abstract

Software transactional memory (STM) is a promising approach for concurrency control in parallel computing environment. The non-blocking progress implementations for STM forces transactions to abort. Although this is primarily done to ensure block-freedom, it may lead to poor system performance. This paper proposes a new Abort-Free STM methodology (AFTM) to achieve abort-free execution so that a group of processes, which are contending for a common set of concurrent objects can commit in finite number of steps. The proposed STM allows wait-free, non-blocking execution of multiple read and write transactions on shared data object without aborting any of the transactions. The important properties of AFTM have been proved towards establishing its advantages.

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

Access this chapter

eBook
USD 16.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 16.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

References

  1. Shavit, N., Touitou, D.: Software transactional memory. In: ACM SIGACT-SIGOPS Symposium on Principles of Distributed Computing, pp. 204–213 (1995)

    Google Scholar 

  2. Rachid, G., Romano, P. (eds.): Transactional Memory. Foundations, Algorithms, Tools, and Applications: COST Action Euro-TM IC1001, vol. 8913. Springer (2014)

    Google Scholar 

  3. Perelman, D., Fan, R., Keidar, I.: On maintaining multiple versions in STM. In: Proceedings of the 29th ACM SIGACT-SIGOPS Symposium on Principles of Distributed Computing, pp. 16–25. ACM (2010)

    Google Scholar 

  4. Attiya, H., Milani, A.: Transactional scheduling for read-dominated workloads. J Parallel Distrib. Comput. 72(10), 1386–1396 (2012)

    Article  MATH  Google Scholar 

  5. Cachopo, J., Rito-Silva, A.: Versioned boxes as the basis for memory transactions. Sci. Comput. Program. 63(2), 172–185 (2006)

    Article  MathSciNet  MATH  Google Scholar 

  6. Fernandes, S.M., Cachopo, J.A.: Lock-free and scalable multi-version software transactional memory. ACM SIGPLAN Not. 46(8), 179–188 (2011)

    Article  Google Scholar 

  7. Riegel, T., Felber, P., Fetzer, C.: A lazy snapshot algorithm with eager validation. In: Distributed Computing, pp. 284–298. Springer, Berlin, Heidelberg (2006)

    Google Scholar 

  8. Aydonat, U., Abdelrahman, T.S.: Relaxed concurrency control in software transactional memory. IEEE Trans. Parallel Distrib. Syst. 23(7), 1312–1325 (2012)

    Article  Google Scholar 

  9. Avni, H., Dolev, S., Fatourou, P., Kosmas, E.: Abort free semanticTM by dependency aware scheduling of transactional instructions. In: Networked Systems, pp. 25–40. Springer (2014)

    Google Scholar 

  10. Ghosh, A., Chaki, N.: The new OFTM algorithm toward abort-free execution. In: Proceedings of the 9th International Conference on Distributed Computing and Information Technology, pp. 255–266. Springer (2013)

    Google Scholar 

  11. Ghosh, A., Chaki, R., Chaki, N.: A new concurrency control mechanism for multi-threaded environment using transactional memory. J. Super Comput. 71(11), 4095–4115 (2015)

    Article  Google Scholar 

  12. Diegues, N., Cachopo, J.: Practical parallel nesting for software transactional memory. In: Distributed Computing, pp. 149–163. Springer (2013)

    Google Scholar 

  13. Marathe, V.J., Scott, M.L.: A qualitative survey of modern software transactional memory systems, University of Rochester Computer Science Department, Technical Report (2004)

    Google Scholar 

  14. Marathe, V.J., Spear, M.F., Heriot, C., Acharya, A., Eisenstat, D., III, W.N.S., Scott, M.L.: The Rochester software transactional memory runtime. http://www.cs.rochester.edu/research/synchronization/rstm (2015)

  15. Scherer III, W.N., Scott, M.L.: Advanced contention management for dynamic software transactional memory. In: Proceedings of 24th annual ACM Symposium on Principles of Distributed Computing, pp. 240–248. ACM (2005)

    Google Scholar 

  16. Herlihy, M., Luchangco, V., Moir, M., Scherer III, W.N.: Software transactional memory for dynamic-sized data structures. In: 22nd Annual ACM Symposium on Principles of Distributed Computing, pp. 92–101 (2003)

    Google Scholar 

  17. Marathe, V.J., Scherer III, W.N., Scott, M.L.: Adaptive software transactional memory. In: Proceedings of the 19th International Symposium on Distributed Computing (DISC), pp. 354–368 (2005)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Ammlan Ghosh .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2017 Springer Nature Singapore Pte Ltd.

About this chapter

Cite this chapter

Ghosh, A., Chaki, R., Chaki, N. (2017). Abort-Free STM: A Non-blocking Concurrency Control Approach Using Software Transactional Memory. In: Chaki, R., Saeed, K., Cortesi, A., Chaki, N. (eds) Advanced Computing and Systems for Security. Advances in Intelligent Systems and Computing, vol 567. Springer, Singapore. https://doi.org/10.1007/978-981-10-3409-1_4

Download citation

  • DOI: https://doi.org/10.1007/978-981-10-3409-1_4

  • Published:

  • Publisher Name: Springer, Singapore

  • Print ISBN: 978-981-10-3408-4

  • Online ISBN: 978-981-10-3409-1

  • eBook Packages: EngineeringEngineering (R0)

Publish with us

Policies and ethics