事务内存TM(Transactional Memory)是Herlihy和Moss于1993年在ISCA会议上提出的一种基于硬件实现的无锁同步机制。该机制基于SMP结构,通过增加事务Cache,并修改 Cache一致性协议来实现。事务内存不仅避免了传统锁机制带来的一系列问题,增强了线程间的并行度,而且简化了并行程序开发的过程,更利于程序模块的组合。斯坦福大学于2004年提出了一种新的基于硬件的TM系统TCC(Transaction Memory Coherence and Consistency),该系统将事务作为并行工作任务、通信和内存一致性的基本单元。现在,除了基于硬件实现的HTM(Hardware Transactional Memory),还有用软件方法实现的STM(Software Transactional Memory),以及软硬件结合实现的Hybrid TM。
Web Resources about Intel® Transactional Synchronization Extensions
http://software.intel.com/en-us/blogs/2013/06/07/web-resources-about-intelr-transactional-synchronization-extensionsTransactional Synchronization in Haswell
http://software.intel.com/en-us/blogs/2012/02/07/transactional-synchronization-in-haswell/
http://download-software.intel.com/sites/default/files/m/3/2/1/0/b/41417-319433-012.pdf
Intel Haswell的事务内存分析
http://blog.youkuaiyun.com/coryxie/article/details/8606268
Transactional memory
http://en.wikipedia.org/wiki/Transactional_memory
http://zh.wikipedia.org/wiki/%E4%BA%8B%E5%8A%A1%E5%86%85%E5%AD%98
http://www.anandtech.com/show/6290/making-sense-of-intel-haswell-transactional-synchronization-extensions
Transactional Memory:Architectural Support for Lock-Free Data Structures
http://cs.brown.edu/~mph/HerlihyM93/herlihy93transactional.pdf
Transactional Memory in GCC
http://gcc.gnu.org/wiki/TransactionalMemory
Transactional memory for GCC 4.7.0
http://lwn.net/Articles/466513/
Towards Transactional Memory Support for GCC
http://www.doc.ic.ac.uk/~phjk/GROW09/papers/03-Transactions-Schwindewolf.pdf
Transactional Memory in C++
http://cppnow.org/session/transactional-memory-in-c/
关注STM(software transactional memory)
http://blog.youkuaiyun.com/st_monad/article/details/1550065
software transactional memory in gcc
http://www-users.cs.umn.edu/~boutcher/stm/
Software transactional memory
http://en.wikipedia.org/wiki/Software_transactional_memory
IBM在其商用芯片中引入事务内存(Transaction Memory)支持
http://www.lingcc.com/2011/08/28/11694/
Transactional Synchronization Extensions
http://en.wikipedia.org/wiki/Transactional_Synchronization_Extensions
Analysis of Haswell’s Transactional Memory
http://www.realworldtech.com/haswell-tm/
Haswell's TSX and Memory Transaction Throughput (HLE and RTM)
http://www.sisoftware.co.uk/?d=qa&f=ben_mem_hle
X86 transaction memory intrinsics
http://gcc.gnu.org/onlinedocs/gcc/X86-transactional-memory-intrinsics.html#X86-transactional-memory-intrinsics
x86 specific memory model extensions for transactional memory
http://gcc.gnu.org/onlinedocs/gcc/x86-specific-memory-model-extensions-for-transactional-memory.html#x86-specific-memory-model-extensions-for-transactional-memory
GCC 4.7的软件事务内存(STM)实现框架
http://blog.youkuaiyun.com/coryxie/article/details/8606247
A Highly-Configurable C++ Software Transactional Memory (STM) Library
https://code.google.com/p/rstm/