Skip to main content
Log in

Restricted admission control in view-oriented transactional memory

  • Published:
The Journal of Supercomputing Aims and scope Submit manuscript

Abstract

This paper proposes a Restricted Admission Control (RAC) scheme for View-Oriented Transactional Memory. The scheme can control the number of threads concurrently accessing a view in order to reduce the number of aborts of transactions. The RAC scheme has the merits of both the locking mechanism and the transactional memory. A theoretical model is proposed to analyze the performance of the RAC scheme and to provide guidance for dynamic adjustment of the number of concurrent threads accessing the same view. Experimental results demonstrate that theoretical RAC model can mostly provide correct guidance to transactional concurrency control. Our RAC implementation shows that RAC can optimize concurrency control of transactions and performs much better than conventional transactional memory systems such as TinySTM that have no dynamic admission control.

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

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. Ansari M, Kotselidis C, Jarvis K, Luján M, Kirkham C, Watson I (2008) Lee-TM: A non-trivial benchmark for transactional memory. In: Proceedings of the 7th international conference on algorithms and architectures for parallel processing. LNCS. Springer, Berlin

    Google Scholar 

  2. Ansari M, Kotselidis C, Jarvis K, Luján M, Watson I (2007) Adaptive concurrency control for transactional memory. Tech rep, University of Manchester

  3. Attiya H, Epstein L, Shachnai H, Tamir T (2010) Transactional contention management as a non-clairvoyant scheduling problem. Algorithmica 57:44–61. doi:10.1007/s00453-008-9195-x

    Article  MathSciNet  MATH  Google Scholar 

  4. Bernstein P, Goodman N (1981) Concurrency control in distributed database systems. ACM Comput Surv 13(2):185–221

    Article  MathSciNet  Google Scholar 

  5. Bobba J, Moore KE, Volos H, Yen L, Hill MD, Swift MM, Wood DA (2007) Performance pathologies in hardware transactional memory. In: Proceedings of the 34th annual international symposium on Computer architecture. ACM, New York, pp 81–91. http://doi.acm.org/10.1145/1250662.1250674

    Google Scholar 

  6. Cascaval C, Blundell C, Michael M, Cain HW, Wu P, Chiras S, Chatterjee S (2008) Software transactional memory: Why is it only a research toy? ACM Queue 6:46–58. http://doi.acm.org/10.1145/1454456.1454466

    Article  Google Scholar 

  7. Dalessandro L, Spear MF, Scott ML (2010) NOrec: streamlining STM by abolishing ownership records. In: Proceedings of the 15th ACM SIGPLAN symposium on principles and practice of parallel programming. ACM, New York, pp 67–78. http://doi.acm.org/10.1145/1693453.1693464

    Chapter  Google Scholar 

  8. Dice D, Shalev O, Shavit N (2006) Transactional locking II. In: Proceedings of the 20th international symposium on distributed computing

    Google Scholar 

  9. Dragojević A, Guerraoui R, Singh AV, Singh V (2009) Preventing versus curing: avoiding conflicts in transactional memories. In: Proceedings of the 28th ACM symposium on principles of distributed computing. ACM, New York, pp 7–16. http://doi.acm.org/10.1145/1582716.1582725

    Chapter  Google Scholar 

  10. Ennals R (2006) Software transactional memory should not be obstruction-free. Tech rep, Intel Corporation

  11. Felber P, Fetzer C, Riegel T (2008) Dynamic performance tuning of word-based software transactional memory. In: Proceedings of the 13th ACM SIGPLAN symposium on principles and practice of parallel programming. ACM, New York, pp 237–246. http://doi.acm.org/10.1145/1345206.1345241

    Chapter  Google Scholar 

  12. Guerraoui R, Herlihy M, Pochon B (2005) Polymorphic contention management. In: Proceedings of the 19th international symposium on distributed computing. LNCS, Springer, Berlin, pp 26–29

    Google Scholar 

  13. Guerraoui R, Kapalka M (2008) On obstruction-free transactions. In: 20th ACM symposium on parallelism in algorithms and architectures

    Google Scholar 

  14. Herlihy M, Luchangco V, Moir M, Scherer WN III (2003) Software transactional memory for dynamic-sized data structures. In: Proceedings of the 22nd annual symposium on principles of distributed computing. ACM, New York, pp 92–101. http://doi.acm.org/10.1145/872035.872048

    Google Scholar 

  15. Herlihy M, Moss JEB (1993) Transactional memory: architectural support for lock-free data structures. ACM SIGARCH Comput Archit News 21:289–300. http://doi.acm.org/10.1145/173682.165164

    Article  Google Scholar 

  16. Hong S, Oguntebi T, Casper J, Bronson N, Kozyrakis C, Olukotun K (2010) Eigenbench: A simple exploration tool for orthogonal tm characteristics. In: Proceedings of the IEEE international symposium on workload characterization (IISWC’10). IEEE Computer Society, Washington, pp 1–11. doi:10.1109/IISWC.2010.5648812

    Chapter  Google Scholar 

  17. Huang Z, Cranefield S, Purvis MK, Sun C (2001) View-based consistency and its implementation. In: First IEEE international symposium on cluster computing and the grid, pp 74–81

    Chapter  Google Scholar 

  18. Huang Z, Purvis M, Werstein P (2005) Performance evaluation of view-oriented parallel programming. In: Proceedings of the 34th international conference on parallel processing. IEEE Computer Society, Oslo, pp 251–258

    Google Scholar 

  19. Kung H, Robinson J (1981) On the optimistic methods for concurrency control. ACM Trans Database Syst 6(2):213–226

    Article  Google Scholar 

  20. Lamport L (1974) A new solution of Dijkstra’s concurrent programming problem. Commun ACM 17(8):453–455. http://doi.acm.org/10.1145/361082.361093

    Article  MathSciNet  MATH  Google Scholar 

  21. Larus JR, Rajwar R (2007) Transactional memory. Synthesis lectures on computer architecture. Morgan and Claypool

  22. Leung K, Huang Z (2011) View-oriented transactional memory. In: The fourth international workshop on parallel programming models and systems software for high-end computing, in proceedings of the 40th international conference on parallel processing

    Google Scholar 

  23. Lomet DB (1977) Process structuring, synchronization, and recovery using atomic actions. In: ACM conference on language design for reliable software, pp 128–137

    Chapter  Google Scholar 

  24. Peterson G (1981) Myths about the mutual exclusion problem. Inf Process Lett 12(3):115–116

    Article  MATH  Google Scholar 

  25. Pettersson M (2004) The perfctr Linux performance monitoring counters driver. Uppsala University,

  26. Roy A, Hand S, Harris T (2009) A runtime system for software lock elision. In: Proceedings of the 4th ACM European conference on computer systems. ACM, New York, pp 261–274. http://doi.acm.org/10.1145/1519065.1519094

    Chapter  Google Scholar 

  27. Saha B, Adl-Tabatabai AR, Hudson RL, Minh CC, Hertzberg B (2006) McRT-STM: a high performance software transactional memory system for a multi-core runtime. In: Proceedings of the eleventh ACM SIGPLAN symposium on principles and practice of parallel programming. ACM, New York, pp 187–197. http://doi.acm.org/10.1145/1122971.1123001

    Chapter  Google Scholar 

  28. Scherer WN III, Scott ML (2005) Advanced contention management for dynamic software transactional memory. In: Aguilera MK, Aspnes J (eds) Proceedings of the twenty-fourth annual ACM symposium on principles of distributed computing. ACM, New York, pp 240–248. http://doi.acm.org/10.1145/1073814.1073861

    Chapter  Google Scholar 

  29. Tanenbaum A, Steen M (2002) Distributed systems: principles and paradigms. Prentice Hall, New York. Chapter 5

    MATH  Google Scholar 

  30. Usui T, Behrends R, Evans J, Smaragdakis Y (2009) Adaptive locks: combining transactions and locks for efficient concurrency. In: Proceedings of the 18th international conference on parallel architecture and compilation techniques. IEEE Computer Society, Washington, DC

    Google Scholar 

  31. Yoo RM, Lee HHS (2008) Adaptive transaction scheduling for transactional memory systems. In: Proceedings of the twentieth annual symposium on parallelism in algorithms and architectures. ACM, New York, pp 169–178. http://doi.acm.org/10.1145/1378533.1378564

    Chapter  Google Scholar 

  32. Zhang J, Huang Z, Chen W, Huang Q, Zheng W (2008) Maotai: view-oriented parallel programming on CMT processors. In: Proceedings of the 37th international conference on parallel processing, pp 636–643

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Kai-Cheung Leung.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Leung, KC., Chen, Y. & Huang, Z. Restricted admission control in view-oriented transactional memory. J Supercomput 63, 348–366 (2013). https://doi.org/10.1007/s11227-011-0733-y

Download citation

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s11227-011-0733-y

Keywords

Navigation