2007 IEEE 13th International Symposium on High Performance Computer Architecture
LogTM-SE: Decoupling Hardware Transactional Memory from Caches
Scottsdale, AZ, USA
February 10-February 14
ISBN: 1-4244-0804-0
Luke Yen, Department of Computer Sciences, University of Wisconsin-Madison, lyen@cs.wisc.edu
Jayaram Bobba, Department of Computer Sciences, University of Wisconsin-Madison, bobba@cs.wisc.edu
Michael R. Marty, Department of Computer Sciences, University of Wisconsin-Madison, mikem@cs.wisc.edu
Kevin E. Moore, Department of Computer Sciences, University of Wisconsin-Madison, kmoore@cs.wisc.edu
Haris Volos, Department of Computer Sciences, University of Wisconsin-Madison, hvolos@cs.wisc.edu
Mark D. Hill, Department of Computer Sciences, University of Wisconsin-Madison, markhill@cs.wisc.edu
Michael M. Swift, Department of Computer Sciences, University of Wisconsin-Madison, swift@cs.wisc.edu
David A. Wood, Department of Computer Sciences, University of Wisconsin-Madison, david@cs.wisc.edu
This paper proposes a hardware transactional memory (HTM) system called LogTM Signature Edition (LogTM-SE). LogTM-SE uses signatures to summarize a transaction's read-and write-sets and detects conflicts on coherence requests (eager conflict detection). Transactions update memory "in place" after saving the old value in a per-thread memory log (eager version management). Finally, a transaction commits locally by clearing its signature, resetting the log pointer, etc., while aborts must undo the log. LogTM-SE achieves two key benefits. First, signatures and logs can be implemented without changes to highly-optimized cache arrays because LogTM-SE never moves cached data, changes a block's cache state, or flash clears bits in the cache. Second, transactions are more easily virtualized because signatures and logs are software accessible, allowing the operating system and runtime to save and restore this state. In particular, LogTM-SE allows cache victimization, unbounded nesting (both open and closed), thread context switching and migration, and paging.
Citation:
Luke Yen, Jayaram Bobba, Michael R. Marty, Kevin E. Moore, Haris Volos, Mark D. Hill, Michael M. Swift, David A. Wood, "LogTM-SE: Decoupling Hardware Transactional Memory from Caches," hpca, pp.261-272, 2007 IEEE 13th International Symposium on High Performance Computer Architecture, 2007