|
ABSTRACT
Dependence-aware transactional memory (DATM) is a recently proposed model for increasing concurrency of memory transactions without complicating their interface. DATM manages dependences between conflicting, uncommitted transactions so that they commit safely. The contributions of this paper are twofold. First, we provide a safety proof for the dependence-aware model. This proof also shows that the DATM model accepts all concurrent interleavings that are conflict-serializable. Second, we describe the first application of dependence tracking to software transactional memory (STM) design and implementation. We compare our implementation with a state of the art STM, TL2 [4]. We use benchmarks from the STAMP [21] suite, quantifying how dependence tracking converts certain types of transactional conflicts into successful commits. On high contention workloads, DATM is able to take advantage of dependences to speed up execution by up to 4.8x.
REFERENCES
Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.
 |
1
|
Ali-Reza Adl-Tabatabai , Brian T. Lewis , Vijay Menon , Brian R. Murphy , Bratin Saha , Tatiana Shpeisman, Compiler and runtime support for efficient software transactional memory, Proceedings of the 2006 ACM SIGPLAN conference on Programming language design and implementation, June 11-14, 2006, Ottawa, Ontario, Canada
|
| |
2
|
Utku Aydonat and Tarek Abdelrahman. Serializability of transactions in software transactional memory. In TRANS-ACT, Feb 2008.
|
| |
3
|
|
| |
4
|
Charles T. Davies. Data processing spheres of control. IBM Systems Journal, 17(2), 1978.
|
| |
5
|
Dave Dice, Ori Shalev, and Nir Shavit. Transactional locking II. In DISC, Sep 2006.
|
| |
6
|
Dave Dice and Nir Shavit. What really makes transactions faster? In TRANSACT, Jun 2006.
|
| |
7
|
Aleksandar Dragojevic, Rachid Guerraoui, and Michal Kapalka. Dividing Transactional Memories by Zero. In TRANSACT, Feb 2008.
|
| |
8
|
|
 |
9
|
|
 |
10
|
Tim Harris , Keir Fraser, Language support for lightweight transactions, Proceedings of the 18th annual ACM SIGPLAN conference on Object-oriented programing, systems, languages, and applications, October 26-30, 2003, Anaheim, California, USA
|
 |
11
|
Tim Harris , Mark Plesko , Avraham Shinnar , David Tarditi, Optimizing memory transactions, Proceedings of the 2006 ACM SIGPLAN conference on Programming language design and implementation, June 11-14, 2006, Ottawa, Ontario, Canada
|
| |
12
|
Tim Harris and Srdan Stipic. Abstract nested transactions. In TRANSACT, Aug 2007.
|
| |
13
|
Maurice Herlihy and Eric Koskinen. Dreadlocks: Efficient deadlock detection for stm. In TRANSACT, Feb 2008.
|
 |
14
|
|
| |
15
|
Maurice Herlihy, Victor Luchangco, and Mark Moir. A flexible framework for implementing software transactional memory. In OOPSLA, Oct 2006.
|
 |
16
|
|
 |
17
|
|
 |
18
|
Milind Kulkarni , Keshav Pingali , Bruce Walter , Ganesh Ramanarayanan , Kavita Bala , L. Paul Chew, Optimistic parallelism requires abstractions, Proceedings of the 2007 ACM SIGPLAN conference on Programming language design and implementation, June 10-13, 2007, San Diego, California, USA
|
| |
19
|
Jim Larus and Ravi Rajwar. Transactional Memory. Morgan & Claypool, 2006.
|
| |
20
|
Nancy A. Lynch, Michael Merritt, William E. Weihl, and Alan Fekete. Atomic Transactions. Morgan Kaufmann, 1993.
|
| |
21
|
Virendra J. Marathe, Michael F. Spear, Christopher Heriot, Athul Acharya, David Eisenstat, William N. Scherer III, and Michael L. Scott. Lowering the overhead of nonblocking software transactional memory. In TRANSACT, Jun 2006.
|
| |
22
|
Chi Cao Minh, JaeWoong Chung, Christos Kozyrakis, and Kunle Olukotun. Stamp: Stanford transactional applications for multi-processing. In IEEE International Symposium on Workload Characterization (IISWC), Sep 2008.
|
| |
23
|
Chi Cao Minh, Martin Trautmann, JaeWoong Chung, Austen McDonald, Nathan Bronson, Jared Casper, Christos Kozyrakis, and Kunle Olukotun. An effective hybrid transactional memory system with strong isolation guarantees. In ISCA, Jun 2007.
|
 |
24
|
Michelle J. Moravan , Jayaram Bobba , Kevin E. Moore , Luke Yen , Mark D. Hill , Ben Liblit , Michael M. Swift , David A. Wood, Supporting nested transactional memory in logTM, Proceedings of the 12th international conference on Architectural support for programming languages and operating systems, October 21-25, 2006, San Jose, California, USA
|
| |
25
|
J. Eliot Moss and Antony L. Hosking. Nested transactional memory: Model and preliminary architecture sketches. In SCOOL, Oct 2005.
|
| |
26
|
Hany E. Ramadan, Christopher J. Rossbach, Owen Hofmann, and Emmett Witchel. Dependence-aware transactional memory. Technical Report TR-07-58, University of Texas at Austin, Computer Sciences Department, 2007.
|
| |
27
|
Hany E. Ramadan, Christopher J. Rossbach, and Emmett Witchel. Dependence-aware transactions for increased concurrency. In MICRO, Nov 2008.
|
 |
28
|
|
| |
29
|
Torvald Riegel, Christof Fetzer, and Pascal Felber. Snapshot isolation for software transactional memory. In TRANSACT, Jun 2006.
|
| |
30
|
Torvald Riegel, Heiko Sturzrehm, Pascal Felber, and Christof Fetzer. From causal to z-linearizable transactional memory. Technical Report RR-I-07-02.1, Universite de Neuchatel, Institut d'Informatique, February 2007.
|
 |
31
|
|
| |
32
|
Travis Skare and Christos Kozyrakis. Early release: Friend or foe? In Workshop on Transactional Memory Workloads, Jun 2006.
|
 |
33
|
Michael F. Spear , Virendra J. Marathe , Luke Dalessandro , Michael L. Scott, Privatization techniques for software transactional memory, Proceedings of the twenty-sixth annual ACM symposium on Principles of distributed computing, August 12-15, 2007, Portland, Oregon, USA
[doi> 10.1145/1281100.1281161]
|
|