Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
research-article
Open access

Techniques to improve performance in requester-wins hardware transactional memory

Published: 01 December 2013 Publication History

Abstract

The simplicity of requester-wins Hardware Transactional Memory (HTM) makes it easy to incorporate in existing chip multiprocessors. Hence, such systems are expected to be widely available in the near future. Unfortunately, these implementations are prone to suffer severe performance degradation due to transient and persistent livelock conditions. This article shows that existing techniques are unable to mitigate this degradation effectively. It then proposes and evaluates four novel techniques—two software-based that employ information provided by the hardware and two that require simple core-local hardware additions—which have the potential to boost the performance of requester-wins HTM designs substantially.

References

[1]
Ananian, C. S., Asanović, K., Kuszmaul, B. C., Leiserson, C. E., and Lie, S. 2005. Unbounded transactional memory. In Proceedings of the 11th International Symposium on High-Performance Computer Architecture.
[2]
Binkert, N., Beckmann, B., Black, G., Reinhardt, S. K., Saidi, A., Basu, A., Hestness, J., Hower, D. R., Krishna, T., Sardashti, S., Sen, R., Sewell, K., Shoaib, M., Vaish, N., Hill, M. D., and Wood, D. A. 2011. The gem5 simulator. SIGARCH Comput. Archit. News.
[3]
Blake, G., Dreslinski, R. G., and Mudge, T. 2009. Proactive transaction scheduling for contention management. In Proceedings of the 42nd Annual IEEE/ACM International Symposium on Microarchitecture.
[4]
Bloom, B. H. 1970. Space/time trade-offs in hash coding with allowable errors. Commun. ACM 13, 422--426.
[5]
Blundell, C., Raghavan, A., and Martin, M. M. K. 2010. RetCon: Transactional repair without replay. In Proceedings of the 37th Annual International Symposium on Computer Architecture.
[6]
Bobba, J., Moore, K. E., Yen, L., Volos, H., Hill, M. D., Swift, M. M., and Wood, D. A. 2007. Performance pathologies in hardware transactional memory. In Proceedings of the 34th Annual International Symposium on Computer Architecture.
[7]
Cao Minh, C., Chung, J., Kozyrakis, C., and Olukotun, K. 2008. STAMP: Stanford transactional applications for multi-processing. In Proceedings of the IEEE International Symposium on Workload Characterization.
[8]
Christie, D., Chung, J.-W., Diestelhorst, S., Hohmuth, M., Pohlack, M., Fetzer, C., Nowack, M., Riegel, T., Felber, P., Marlier, P., and Rivière, E. 2010. Evaluation of AMD’s advanced synchronization facility within a complete transactional memory stack. In Proceedings of the 5th European Conference on Computer Systems.
[9]
Chung, J., Yen, L., Diestelhorst, S., Pohlack, M., Hohmuth, M., Christie, D., and Grossman, D. 2010. ASF: AMD64 extension for lock-free data structures and transactional memory. In Proceedings of the 43th International Symposium on Microarchitecture.
[10]
Click, C. 2009. Azul’s experiences with hardware transactional memory. HP Labs, Bay Area Workshop on Transactional Memory.
[11]
Dalessandro, L., Carouge, F., White, S., Lev, Y., Moir, M., Scott, M. L., and Spear, M. F. 2011. Hybrid NOrec: A case study in the effectiveness of best effort hardware transactional memory. In Proceedings of the 16th International Conference on Architectural Support for Programming Languages and Operating Systems.
[12]
Dolev, S., Hendler, D., and Suissa, A. 2008. CAR-STM: scheduling-based collision avoidance and resolution for software transactional memory. In Proceedings of the 27th Symposium on Principles of Distributed Computing.
[13]
Dragojević, A., Guerraoui, R., Singh, A. V., and Singh, V. 2009. Preventing versus curing: Avoiding conflicts in transactional memories. In Proceedings of the 28th ACM Symposium on Principles of Distributed Computing.
[14]
Felber, P., Fetzer, C., Marlier, P., and Riegel, T. 2010. Time-based software transactional memory. IEEE Transactions on Parallel and Distributed Systems 21, 12.
[15]
Gharachorloo, K., Lenoski, D., Laudon, J., Gibbons, P., Gupta, A., and Hennessy, J. 1990. Memory consistency and event ordering in scalable shared-memory multiprocessors. In Proceedings of the 17th Annual International Symposium on Computer Architecture.
[16]
Hammond, L., Wong, V., Chen, M., Carlstrom, B. D., Davis, J. D., Hertzberg, B., Prabhu, M. K., Wijaya, H., Kozyrakis, C., and Olukotun, K. 2004. Transactional memory coherence and consistency. In Proceedings of the 31st International Symposium on Computer Architecture.
[17]
Harris, T., Larus, J., and Rajwar, R. 2010. Transactional Memory 2nd Ed. Morgan and Claypool Publishers.
[18]
Herlihy, M. and Moss, J. E. B. 1993. Transactional memory: Architectural support for lock-free data structures. In Proceedings of the 20th Annual International Symposium on Computer Architecture.
[19]
Intel Corporation. 2012. Transaction Synchronization Extensions (TSX). In Intel Architecture Instruction Set Extensions Programming Reference. 506--529. Retrieved from http://software.intel.com/file/41604.
[20]
Jafri, S. A. R., Voskuilen, G., and Vijaykumar, T. N. 2013. Wait-n-GoTM: Improving HTM performance by serializing cyclic dependencies. In Proceedings of the 18th International Conference on Architectural Support for Programming Languages and Operating Systems.
[21]
Liu, Y. and Spear, M. 2011. Toxic transactions. In Proceedings of the 6th Workshop on Transactional Computing.
[22]
Lupon, M., Magklis, G., and González, A. 2010. A dynamically adaptable hardware transactional memory. In Proceedings of 43rd Annual IEEE/ACM International Symposium on Microarchitecture.
[23]
Martin, M. M. K., Sorin, D. J., Beckmann, B. M., Marty, M. R., Xu, M., Alameldeen, A. R., Moore, K. E., Hill, M. D., and Wood, D. A. 2005. Multifacet’s general execution-driven multiprocessor simulator (gems) toolset. SIGARCH Comput. Archit. News.
[24]
Moore, K. E., Bobba, J., Moravan, M. J., Hill, M. D., and Wood, D. A. 2006. LogTM: Log-based transactional memory. In Proceedings of the 12th International Symposium on High-Performance Computer Architecture.
[25]
Negi, A., Armejach, A., Cristal, A., Unsal, O. S., and Stenström, P. 2012a. Transactional prefetching: narrowing the window of contention in hardware transactional memory. In Proceedings of the 21st International Conference on Parallel Architectures and Compilation Techniques.
[26]
Negi, A., Titos-Gil, R., Acacio, M. E., Garcia, J. M., and Stenstrom, P. 2011. Eager Meets Lazy: The impact of write-buffering on hardware transactional memory. Proceedings of the International Conference on Parallel Processing.
[27]
Negi, A., Titos-Gil, R., Acacio, M. E., Garcia, J. M., and Stenstrom, P. 2012b. Pi-TM: Pessimistic invalidation for scalable lazy hardware transactional memory. In Proceedings of the 18th International Symposium on High Performance Computer Architecture.
[28]
Ramadan, H. E., Rossbach, C. J., and Witchel, E. 2008. Dependence-aware transactional memory for increased concurrency. In Proceedings of the 41st IEEE/ACM International Symposium on Microarchitecture.
[29]
Scherer III, W. N. and Scott, M. L. 2005. Advanced contention management for dynamic software transactional memory. In Proceedings of the 24th ACM Symposium on Principles of Distributed Computing.
[30]
Shriraman, A. and Dwarkadas, S. 2009. Refereeing conflicts in hardware transactional memory. In Proceedings of the 23rd International Conference on Supercomputing.
[31]
Shriraman, A., Dwarkadas, S., and Scott, M. L. 2008. Flexible decoupled transactional memory support. In Proceedings of the 35th Annual International Symposium on Computer Architecture.
[32]
Titos, R., Acacio, M. E., and Garcia, J. M. 2009. Speculation-based conflict resolution in hardware transactional memory. In Proceedings 23rd International Parallel and Distributed Processing Symposium.
[33]
Titos-Gil, R., Negi, A., Acacio, M. E., García, J. M., and Stenstrom, P. 2011. ZEBRA: A data-centric, hybrid-policy hardware transactional memory design. In Proceedings of the International Conference on Supercomputing.
[34]
Titos-Gil, R., Negi, A., Acacio, M. E., Garcia, J. M., and Stenstrom, P. 2012. Eager beats lazy: Improving store management in eager hardware transactional memory. IEEE Transactions on Parallel and Distributed Systems 99, 2192--2201.
[35]
Tomić, S., Perfumo, C., Kulkarni, C., Armejach, A., Cristal, A., Unsal, O., Harris, T., and Valero, M. 2009. EazyHTM: Eager-lazy hardware transactional memory. In Proceedings of the 42nd Annual IEEE/ACM International Symposium on Microarchitecture.
[36]
Waliullah, M. and Stenstrom, P. 2012. Removal of conflicts in hardware transactional emory systems. International Journal of Parallel Programming. http://link.springer.com/article/10.1007%2Fs10766-012-0210-0.
[37]
Wang, A., Gaudet, M., Wu, P., Amaral, J. N., Ohmacht, M., Barton, C., Silvera, R., and Michael, M. 2012. Evaluation of blue gene/q hardware support for transactional memories. In Proceedings of the 21st International Conference on Parallel Architectures and Compilation Techniques.
[38]
Welc, A., Saha, B., and Adl-Tabatabai, A.-R. 2008. Irrevocable transactions and their applications. In Proceedings of the 20th Annual Symposium on Parallelism in Algorithms and Architectures.
[39]
Woo, S. C., Ohara, M., Torrie, E., Singh, J. P., and Gupta, A. 1995. The splash-2 programs: characterization and methodological considerations. In Proceedings of the 22nd annual International Symposium on Computer Architecture.
[40]
Yen, L., Bobba, J., Marty, M. M., Moore, K. E., Volos, H., Hill, M. D., Swift, M. M., and Wood, D. A. 2007. LogTM-SE: Decoupling hardware transactional memory from caches. In Proceedings of the 13th International Symposium on High-Performance Computer Architecture.
[41]
Yoo, R. M. and Lee, H.-H. S. 2008. Adaptive transaction scheduling for transactional memory systems. In Proceedings of the 20th Annual Symposium on Parallelism in Algorithms and Architectures.

Cited By

View all
  • (2024)LockillerTM: Enhancing Performance Lower Bounds in Best-Effort Hardware Transactional Memory2024 IEEE International Parallel and Distributed Processing Symposium (IPDPS)10.1109/IPDPS57955.2024.00081(865-875)Online publication date: 27-May-2024
  • (2024)On the interactions between ILP and TLP with hardware transactional memoryMicroprocessors and Microsystems10.1016/j.micpro.2023.104975104(104975)Online publication date: Feb-2024
  • (2022)LosaTM: A Hardware Transactional Memory Integrated With a Low-Overhead Scenario-Awareness Conflict ManagerIEEE Transactions on Parallel and Distributed Systems10.1109/TPDS.2022.320677733:12(4849-4862)Online publication date: 1-Dec-2022
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Transactions on Architecture and Code Optimization
ACM Transactions on Architecture and Code Optimization  Volume 10, Issue 4
December 2013
1046 pages
ISSN:1544-3566
EISSN:1544-3973
DOI:10.1145/2541228
Issue’s Table of Contents
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: 01 December 2013
Accepted: 01 November 2013
Revised: 01 September 2013
Received: 01 June 2013
Published in TACO Volume 10, Issue 4

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. Contention management
  2. hardware transactional memory
  3. requester-wins conflict resolution

Qualifiers

  • Research-article
  • Research
  • Refereed

Funding Sources

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)108
  • Downloads (Last 6 weeks)17
Reflects downloads up to 13 Nov 2024

Other Metrics

Citations

Cited By

View all
  • (2024)LockillerTM: Enhancing Performance Lower Bounds in Best-Effort Hardware Transactional Memory2024 IEEE International Parallel and Distributed Processing Symposium (IPDPS)10.1109/IPDPS57955.2024.00081(865-875)Online publication date: 27-May-2024
  • (2024)On the interactions between ILP and TLP with hardware transactional memoryMicroprocessors and Microsystems10.1016/j.micpro.2023.104975104(104975)Online publication date: Feb-2024
  • (2022)LosaTM: A Hardware Transactional Memory Integrated With a Low-Overhead Scenario-Awareness Conflict ManagerIEEE Transactions on Parallel and Distributed Systems10.1109/TPDS.2022.320677733:12(4849-4862)Online publication date: 1-Dec-2022
  • (2021)DeTraS: Delaying Stores for Friendly-Fire Mitigation in Hardware Transactional MemoryIEEE Transactions on Parallel and Distributed Systems10.1109/TPDS.2021.3085210(1-1)Online publication date: 2021
  • (2020)Unbounded Hardware Transactional Memory for a Hybrid DRAM/NVM Memory System2020 53rd Annual IEEE/ACM International Symposium on Microarchitecture (MICRO)10.1109/MICRO50266.2020.00051(525-538)Online publication date: Oct-2020
  • (2018)The Transactional Conflict ProblemProceedings of the 30th on Symposium on Parallelism in Algorithms and Architectures10.1145/3210377.3210406(383-392)Online publication date: 11-Jul-2018
  • (2018)Improving Parallelism in Hardware Transactional MemoryACM Transactions on Architecture and Code Optimization10.1145/317796215:1(1-24)Online publication date: 22-Mar-2018
  • (2016)PleaseTM: Enabling transaction conflict management in requester-wins hardware transactional memory2016 IEEE International Symposium on High Performance Computer Architecture (HPCA)10.1109/HPCA.2016.7446072(285-296)Online publication date: Mar-2016

View Options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Get Access

Login options

Full Access

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media