Access the full text.
Sign up today, get DeepDyve free for 14 days.
Bratin Saha, Ali-Reza Adl-Tabatabai, Richard Hudson, C. Minh, Ben Hertzberg (2006)
McRT-STM: a high performance software transactional memory system for a multi-core runtime
M. Scott, Michael Spear, Luke Dalessandro, Virendra Marathe (2007)
Delaunay Triangulation with Transactions and Barriers2007 IEEE 10th International Symposium on Workload Characterization
Virendra Marathe, William Scherer, M. Scott (2004)
Design tradeoffs in modern software transactional memory systems
M. Herlihy, Victor Luchangco, Mark Moir, William Scherer (2003)
Software transactional memory for dynamic-sized data structures
Milo Martin, Colin Blundell, E. Lewis (2006)
Subtleties of transactional memory atomicity semanticsIEEE Computer Architecture Letters, 5
Milo Martin, Daniel Sorin, Bradford Beckmann, Michael Marty, Min Xu, Alaa Alameldeen, Kevin Moore, M. Hill, D. Wood (2005)
Multifacet's general execution-driven multiprocessor simulator (GEMS) toolsetSIGARCH Comput. Archit. News, 33
Lance Hammond, Vicky Wong, Michael Chen, Brian Carlstrom, John Davis, Ben Hertzberg, Manohar Prabhu, Honggo Wijaya, C. Kozyrakis, K. Olukotun (2004)
Transactional memory coherence and consistencyProceedings. 31st Annual International Symposium on Computer Architecture, 2004.
LaudonJames, LenoskiDaniel (1997)
The SGI OriginACM Sigarch Computer Architecture News
Michael Spear, Virendra Marathe, Luke Dalessandro, M. Scott (2007)
Privatization techniques for software transactional memory
Michael Spear, Arrvindh Shriraman, Hemayet Hossain, S. Dwarkadas, M. Scott (2007)
Alert-on-update: a communication aid for shared memory multiprocessorsProceedings of the 12th ACM SIGPLAN symposium on Principles and practice of parallel programming
William Scherer, M. Scott (2005)
Advanced contention management for dynamic software transactional memory
Arrvindh Shriraman, Michael Spear, Hemayet Hossain, Virendra Marathe, S. Dwarkadas, M. Scott (2007)
An integrated hardware-software approach to flexible transactional memory
Michael Spear, Virendra Marathe, William Scherer, M. Scott (2006)
Conflict Detection and Validation Strategies for Software Transactional Memory
Virendra Marathe, William Scherer, M. Scott (2005)
Adaptive Software Transactional Memory
Kevin Moore, J. Bobba, M. Moravan, M. Hill, D. Wood (2006)
LogTM: log-based transactional memoryThe Twelfth International Symposium on High-Performance Computer Architecture, 2006.
B. Bloom (1970)
Space/time trade-offs in hash coding with allowable errorsCommun. ACM, 13
N. Sakran, Marcelo Yuffe, M. Mehalel, Jack Doweck, E. Knoll, A. Kovacs (2007)
The Implementation of the 65nm Dual-Core 64b Merom Processor2007 IEEE International Solid-State Circuits Conference. Digest of Technical Papers
Luke Yen, J. Bobba, Michael Marty, Kevin Moore, Haris Volos, M. Hill, M. Swift, D. Wood (2007)
LogTM-SE: Decoupling Hardware Transactional Memory from Caches2007 IEEE 13th International Symposium on High Performance Computer Architecture
M. Cekleov, M. Dubois (1997)
Virtual-address caches. Part 1: problems and solutions in uniprocessorsIEEE Micro, 17
F. Dahlgren, J. Torrellas (1999)
Cache-Only Memory ArchitecturesComputer, 32
Shan Lu, Zhenmin Li, Feng Qin, Lin Tan, Pin Zhou, Yuanyuan Zhou (2005)
BugBench: Benchmarks for Evaluating Bug Detection Tools
J. Laudon, D. Lenoski (1997)
The SGI Origin: A ccnuma Highly Scalable ServerConference Proceedings. The 24th Annual International Symposium on Computer Architecture
Ravi Rajwar, M. Herlihy, Konrad Lai (2005)
Virtualizing transactional memory32nd International Symposium on Computer Architecture (ISCA'05)
Michael Spear, Arrvindh Shriraman, Luke Dalessandro, S. Dwarkadas, M. Scott (2007)
Nonblocking transactions without indirection using alert-on-update
Daniel Sánchez, Luke Yen, M. Hill, K. Sankaralingam (2007)
Implementing Signatures for Transactional Memory40th Annual IEEE/ACM International Symposium on Microarchitecture (MICRO 2007)
D. Lenoski, J. Laudon, K. Gharachorloo, W. Weber, Anoop Gupta, J. Hennessy, M. Horowitz, M. Lam (1992)
The Stanford Dash multiprocessorComputer, 25
L. Ceze, James Tuck, J. Torrellas, Calin Cascaval (2006)
Bulk Disambiguation of Speculative Threads in Multiprocessors33rd International Symposium on Computer Architecture (ISCA'06)
Arrvindh Shriraman, Virendra Marathe, S. Dwarkadas, M. Scott, David Eisenstat, Christopher Heriot, William Scherer, Michael Spear (2005)
Hardware Acceleration of Software Transactional Memory
Acknowledgments Multifacet Research group, Wisconsin STAMP group
K. Fraser, T. Harris (2007)
Concurrent programming without locksACM Trans. Comput. Syst., 25
Sun Microsystems Inc. OpenSPARC T2 Core Microarchitecture Specification
C. Minh, M. Trautmann, Jaewoong Chung, Austen McDonald, N. Bronson, J. Casper, C. Kozyrakis, K. Olukotun (2007)
An effective hybrid transactional memory system with strong isolation guarantees
C. Ananian, K. Asanović, Bradley Kuszmaul, C. Leiserson, Sean Lie (2005)
Unbounded transactional memory11th International Symposium on High-Performance Computer Architecture
J. Larus, Ravi Rajwar (2007)
Transactional Memory (Synthesis Lectures on Computer Architecture)
L. Ceze, James Tuck, Pablo Montesinos, J. Torrellas (2007)
BulkSC: bulk enforcement of sequential consistency
Jaewoong Chung, Hassan Chafi, C. Minh, Austen McDonald, Brian Carlstrom, C. Kozyrakis, K. Olukotun (2006)
The common case transactional behavior of multithreaded programsThe Twelfth International Symposium on High-Performance Computer Architecture, 2006.
Maurice Herlihy, J. Moss (1993)
Transactional Memory: Architectural Support For Lock-free Data StructuresProceedings of the 20th Annual International Symposium on Computer Architecture
C. Zilles, Lee Baugh (2006)
Extending Hardware Transactional Memory to Support Non-busy Waiting and Non-transactional Actions
Hassan Chafi, J. Casper, Brian Carlstrom, Austen McDonald, C. Minh, Woongki Baek, C. Kozyrakis, K. Olukotun (2007)
A Scalable, Non-blocking Approach to Transactional Memory2007 IEEE 13th International Symposium on High Performance Computer Architecture
P. Damron, Alexandra Fedorova, Yossi Lev, Victor Luchangco, Mark Moir, Daniel Nussbaum (2006)
Hybrid transactional memory
D. Dice, Ori Shalev, N. Shavit (2006)
Transactional Locking II
M. Hill, Derek Hower, Kevin Moore, M. Swift, Haris Volos, D. Wood (2007)
A Case for Deconstructing Hardware Transactional Memory Systems
J. Bobba, Kevin Moore, Haris Volos, Luke Yen, M. Hill, M. Swift, D. Wood (2007)
Performance Pathologies in Hardware Transactional MemoryIEEE Micro, 28
J. Friedrich, B. McCredie, N. James, W. Huott, B. Curran, E. Fluhr, Gaurav Mittal, E. Chan, Y. Chan, D. Plass, S. Chu, Hung Le, L. Clark, John Ripley, Scott Taylor, Jack DiLullo, M. Lanzerotti (2007)
Design of the Power6 Microprocessor2007 IEEE International Solid-State Circuits Conference. Digest of Technical Papers
Virendra Marathe, Michael Spear, Christopher Heriot, A. Acharya, David Eisenstat, William Scherer, M. Scott (2006)
Lowering the Overhead of Software Transactional Memory
A high-concurrency transactional memory (TM) implementation needs to track concurrent accesses, buffer speculative updates, and manage conflicts. We present a system, FlexTM (FLEXible Transactional Memory), that coordinates four decoupled hardware mechanisms: read and write signatures, which summarize per-thread access sets; per-thread conflict summary tables (CSTs), which identify the threads with which conflicts have occurred; Programmable Data Isolation, which maintains speculative updates in the local cache and employs a thread-private buffer (in virtual memory) in the rare event of overflow; and Alert-On-Update, which selectively notifies threads about coherence events. All mechanisms are software-accessible, to enable virtualization and to support transactions of arbitrary length. FlexTM allows software to determine when to manage conflicts (either eagerly or lazily), and to employ a variety of conflict management and commit protocols. We describe an STM-inspired protocol thatuses CSTs to manage conflicts in a distributed manner (no global arbitration) and allows parallel commits. In experiments with a prototype on Simics/GEMS, FlexTM exhibits 5x speedup over high-quality software TM, with no loss in policy flexibility. Its distributed commit protocol is also more efficient than a central hardware manager. Our results highlight the importance of flexibility in determining when to manage conflicts: lazy maximizes concurrency and helps to ensure forward progress while eager provides better overall utilization in a multi-programmed system.
ACM SIGARCH Computer Architecture News – Association for Computing Machinery
Published: Jun 1, 2008
Read and print from thousands of top scholarly journals.
Already have an account? Log in
Bookmark this article. You can see your Bookmarks on your DeepDyve Library.
To save an article, log in first, or sign up for a DeepDyve account if you don’t already have one.
Copy and paste the desired citation format or use the link below to download a file formatted for EndNote
Access the full text.
Sign up today, get DeepDyve free for 14 days.
All DeepDyve websites use cookies to improve your online experience. They were placed on your computer when you launched this website. You can change your cookie settings through your browser.