Window-based greedy contention management for transactional memory: theory and practice

被引:13
作者
Sharma, Gokarna [1 ]
Busch, Costas [1 ]
机构
[1] Louisiana State Univ, Dept Comp Sci, Baton Rouge, LA 70803 USA
关键词
Transactional memory; Execution window; Contention management; Greedy transaction scheduling; Shared memory; Concurrency control;
D O I
10.1007/s00446-012-0159-7
中图分类号
TP301 [理论、方法];
学科分类号
081202 ;
摘要
We consider greedy contention managers for transactional memory for M x N execution windows of transactions with M threads and N transactions per thread. We present, formally analyze, and experimentally evaluate three new randomized greedy contention management algorithms for transaction windows. Assuming that each transaction has duration tau and conflicts with at most C other transactions inside the window, the first algorithm Offline-Greedy produces a schedule of length O(tau center dot (C + N center dot log(MN))) with high probability. The offline algorithm depends on knowing the conflict graph which evolves while the execution of the transactions progresses. The second algorithm Online-Greedy produces a schedule of length that is only a logarithmic factor worse than Offline-Greedy, but does not require knowledge of the conflict graph. The third algorithm Adaptive-Greedy is the adaptive version of the previous algorithms which produces a schedule of length asymptotically the same as with online algorithm by adaptively guessing the value of C. All of the algorithms exhibit competitive ratio very close to O(s), where s is the number of shared resources, and at the same time, our algorithms provide new non-trivial tradeoffs for greedy transaction scheduling that parameterize window sizes and transaction conflicts within the execution window. We evaluate these window-based algorithms experimentally using the sorted link list, red-black tree, skip list, and vacation benchmarks. The evaluation results confirm their benefits in practical performance throughput and other metrics such as aborts per commit ratio and execution time overhead, along with the non-trivial provable properties of the algorithms.
引用
收藏
页码:225 / 248
页数:24
相关论文
共 46 条
[1]   On the Performance of Contention Managers for Complex Transactional Memory Benchmarks [J].
Ansari, Mohammad ;
Kotselidis, Christos ;
Lujan, Mikel ;
Kirkham, Chris ;
Watson, Ian .
EIGHTH INTERNATIONAL SYMPOSIUM ON PARALLEL AND DISTRIBUTED COMPUTING, PROCEEDINGS, 2009, :83-90
[2]  
Ansari M, 2009, LECT NOTES COMPUT SC, V5409, P4
[3]  
Attiya H, 2009, LECT NOTES COMPUT SC, V5923, P3, DOI 10.1007/978-3-642-10877-8_3
[4]   Transactional Contention Management as a Non-Clairvoyant Scheduling Problem [J].
Attiya, Hagit ;
Epstein, Leah ;
Shachnai, Hadas ;
Tamir, Tami .
ALGORITHMICA, 2010, 57 (01) :44-61
[5]  
Awerbuch B., 1990, Proceedings. 31st Annual Symposium on Foundations of Computer Science (Cat. No.90CH2925-6), P65, DOI 10.1109/FSCS.1990.89525
[6]   Mutual exclusion scheduling [J].
Baker, BS ;
Coffman, EG .
THEORETICAL COMPUTER SCIENCE, 1996, 162 (02) :225-243
[7]   RESTRICTIONS OF GRAPH PARTITION PROBLEMS .1. [J].
BODLAENDER, HL ;
JANSEN, K .
THEORETICAL COMPUTER SCIENCE, 1995, 148 (01) :93-109
[8]  
Chi Cao Minh, 2008, 2008 IEEE International Symposium on Workload Characterization (IISWC), P35, DOI 10.1109/IISWC.2008.4636089
[9]   Hybrid transactional memory [J].
Damron, Peter ;
Fedorova, Alexandra ;
Lev, Yossi ;
Luchangco, Victor ;
Moir, Mark ;
Nussbaum, Daniel .
ACM SIGPLAN NOTICES, 2006, 41 (11) :336-346
[10]  
Dice D, 2006, LECT NOTES COMPUT SC, V4167, P194