Transactional memory coherence and consistency
Top Cited Papers
- 13 November 2004
- conference paper
- Published by Institute of Electrical and Electronics Engineers (IEEE)
Abstract
In this paper, we propose a new shared memory model: transactional memory coherence and consistency (TCC). TCC provides a model in which atomic transactions are always the basic unit of parallel work, communication, memory coherence, and memory reference consistency. TCC greatly simplifies parallel software by eliminating the need for synchronization using conventional locks and semaphores, along with their complexities. TCC hardware must combine all writes from each transaction region in a program into a single packet and broadcast this packet to the permanent shared memory state atomically as a large block. This simplifies the coherence hardware because it reduces the need for small, low-latency messages and completely eliminates the need for conventional snoopy cache coherence protocols, as multiple speculatively written versions of a cache line may safely coexist within the system. Meanwhile, automatic, hardware-controlled rollback of speculative transactions resolves any correctness violations that may occur when several processors attempt to read and write the same data simultaneously. The cost of this simplified scheme is higher interprocessor bandwidth. To explore the costs and benefits of TCC, we study the characteristics of an optimal transaction-based memory system, and examine how different design parameters could affect the performance of real systems. Across a spectrum of applications, the TCC model itself did not limit available parallelism. Most applications are easily divided into transactions requiring only small write buffers, on the order of 4-8 KB. The broadcast requirements of TCC are high, but are well within the capabilities of CMPs and small-scale SMPs with high-speed interconnects.Keywords
This publication has 28 references indexed in Scilit:
- Itanium 2 processor microarchitectureIEEE Micro, 2003
- Speculative synchronizationPublished by Association for Computing Machinery (ACM) ,2002
- Power4 system design for high reliabilityIEEE Micro, 2002
- The Stanford Hydra CMPIEEE Micro, 2000
- Is SC + ILP = RC?ACM SIGARCH Computer Architecture News, 1999
- A chip-multiprocessor architecture with speculative multithreadingIEEE Transactions on Computers, 1999
- Starfire: extending the SMP envelopeIEEE Micro, 1998
- ARB: a hardware mechanism for dynamic reordering of memory referencesIEEE Transactions on Computers, 1996
- Shared memory consistency models: a tutorialComputer, 1996
- On optimistic methods for concurrency controlACM Transactions on Database Systems, 1981