Conflict Detection in Hardware Transactional Memory

This chapter is dedicated to the conflict detection mechanism in the context of hardware transactional memory (HTM) systems. An effective mechanism is needed to detect conflicts amongst transactions, thus ensuring atomicity while allowing concurrency. Together with version management and conflict resolution, the conflict detection mechanism is one of the main design choices in HTM systems.

[1]  David A. Wood,et al.  TokenTM: Efficient Execution of Large Transactions with Hardware Transactional Memory , 2008, 2008 International Symposium on Computer Architecture.

[2]  Jeffrey T. Draper,et al.  Unified Signatures for Improving Performance in Transactional Memory , 2011, 2011 IEEE International Parallel & Distributed Processing Symposium.

[3]  Li Fan,et al.  Summary cache: a scalable wide-area web cache sharing protocol , 2000, TNET.

[4]  Stark C. Draper,et al.  Notary: Hardware techniques to enhance signatures , 2008, 2008 41st IEEE/ACM International Symposium on Microarchitecture.

[5]  Kunle Olukotun,et al.  STAMP: Stanford Transactional Applications for Multi-Processing , 2008, 2008 IEEE International Symposium on Workload Characterization.

[6]  David A. Wood,et al.  LogTM: log-based transactional memory , 2006, The Twelfth International Symposium on High-Performance Computer Architecture, 2006..

[7]  Adam Welc,et al.  Irrevocable transactions and their applications , 2008, SPAA '08.

[8]  Emilio L. Zapata,et al.  Improving Signatures by Locality Exploitation for Transactional Memory , 2009, 2009 18th International Conference on Parallel Architectures and Compilation Techniques.

[9]  Kunle Olukotun,et al.  Transactional memory coherence and consistency , 2004, Proceedings. 31st Annual International Symposium on Computer Architecture, 2004..

[10]  Viktor K. Prasanna,et al.  High Performance Computing - HiPC 2008, 15th International Conference, Bangalore, India, December 17-20, 2008. Proceedings , 2008, HiPC.

[11]  Oscar Plata,et al.  LS-Sig: Locality-Sensitive Signatures for Transactional Memory , 2013, IEEE Transactions on Computers.

[12]  Emilio L. Zapata,et al.  Hardware Signature Designs to Deal with Asymmetry in Transactional Data Sets , 2013, IEEE Transactions on Parallel and Distributed Systems.

[13]  Marc Tremblay,et al.  Rock: A High-Performance Sparc CMT Processor , 2009, IEEE Micro.

[14]  Burton H. Bloom,et al.  Space/time trade-offs in hash coding with allowable errors , 1970, CACM.

[15]  Milo M. K. Martin,et al.  Subtleties of transactional memory atomicity semantics , 2006, IEEE Computer Architecture Letters.

[16]  Ravi Rajwar,et al.  Speculative lock elision: enabling highly concurrent multithreaded execution , 2001, Proceedings. 34th ACM/IEEE International Symposium on Microarchitecture. MICRO-34.

[17]  Maurice Herlihy,et al.  Transactional Memory: Architectural Support For Lock-free Data Structures , 1993, Proceedings of the 20th Annual International Symposium on Computer Architecture.

[18]  Manuel E. Acacio,et al.  Directory-based conflict detection in hardware transactional memory , 2008, HiPC'08.

[19]  Maurice Herlihy,et al.  Virtualizing Transactional Memory , 2005, ISCA 2005.

[20]  David A. Wood,et al.  Performance Pathologies in Hardware Transactional Memory , 2007, IEEE Micro.

[21]  Timothy J. Slegel,et al.  Transactional Memory Architecture and Implementation for IBM System Z , 2012, 2012 45th Annual IEEE/ACM International Symposium on Microarchitecture.

[22]  Javier D. Bruguera,et al.  FlexSig: Implementing flexible hardware signatures , 2012, TACO.

[23]  Milo M. K. Martin,et al.  Specifying and Verifying a Broadcast and a Multicast Snooping Cache Coherence Protocol , 2002, IEEE Trans. Parallel Distributed Syst..

[24]  Daniel Sánchez,et al.  Implementing Signatures for Transactional Memory , 2007, 40th Annual IEEE/ACM International Symposium on Microarchitecture (MICRO 2007).

[25]  Bradley C. Kuszmaul,et al.  Unbounded Transactional Memory , 2005, HPCA.

[26]  David A. Wood,et al.  LogTM-SE: Decoupling Hardware Transactional Memory from Caches , 2007, 2007 IEEE 13th International Symposium on High Performance Computer Architecture.

[27]  Dan Grossman,et al.  ASF: AMD64 Extension for Lock-Free Data Structures and Transactional Memory , 2010, 2010 43rd Annual IEEE/ACM International Symposium on Microarchitecture.

[28]  Jeffrey T. Draper,et al.  Locality-aware adaptive grain signatures for Transactional Memories , 2010, 2010 IEEE International Symposium on Parallel & Distributed Processing (IPDPS).

[29]  Josep Torrellas,et al.  OmniOrder: Directory-based conflict serialization of transactions , 2014, 2014 ACM/IEEE 41st International Symposium on Computer Architecture (ISCA).

[30]  James R. Goodman Using cache memory to reduce processor-memory traffic , 1998, ISCA '98.

[31]  Elena Tsanko,et al.  Verification of transactional memory in POWER8 , 2014, 2014 51st ACM/EDAC/IEEE Design Automation Conference (DAC).

[32]  Emilio L. Zapata,et al.  Multiset signatures for transactional memory , 2011, ICS '11.

[33]  Maged M. Michael,et al.  Robust architectural support for transactional memory in the power architecture , 2013, ISCA.

[34]  Maged M. Michael,et al.  Evaluation of Blue Gene/Q hardware support for transactional memories , 2012, 2012 21st International Conference on Parallel Architectures and Compilation Techniques (PACT).

[35]  Josep Torrellas,et al.  Bulk Disambiguation of Speculative Threads in Multiprocessors , 2006, 33rd International Symposium on Computer Architecture (ISCA'06).