TurboLock: increasing associativity of lock table in transactional memory

被引:1
作者
Bavarsad, Amir Ghanbari [1 ]
Atoofian, Ehsan [1 ]
机构
[1] Lakehead Univ, Dept Elect Engn, Thunder Bay, ON P7B 5E1, Canada
基金
加拿大自然科学与工程研究理事会;
关键词
Transactional memory; Lock table; Aliasing; False conflict; Performance;
D O I
10.1007/s00607-013-0375-4
中图分类号
TP301 [理论、方法];
学科分类号
081202 ;
摘要
Transactional memory (TM) is emerging as a promising paradigm to simplify parallel programming for chip multiprocessors. Most of software transactional memory (STM) systems exploit a lock table to synchronize transactional accesses to the shared memory locations. Memory addresses map to entries of the lock table through a hash function to detect conflicts in the event of simultaneous accesses to the shared memory locations. In the current implementation of the lock table, if two distinct addresses map to the same entry of the table, they are treated as a conflict even though there is no true conflict between the two addresses. This is called false conflict. In the event of a false conflict, transactions are aborted conservatively which reduces concurrency level in programs. In this paper, we study false conflicts in STMs and propose TurboLock to reduce frequency of false conflicts. Inspired by set associative caches, TurboLock increases associativity of the lock table to reduce likelihood of aliasing-induced conflicts. While TurboLock is effective in reducing the false conflicts, it may degrade performance due to overhead of the associative lock table in software. To improve performance of TurboLock, we propose HW-TurboLock which exploits hardware to reduce overhead of the associative lock table. We have evaluated our optimization techniques using Gem5 full-system simulator and compared the performance of the new implementation with the baseline scheme. Our simulation results reveal that HW-TurboLock is highly effective and significantly improves performance of TM systems.
引用
收藏
页码:649 / 661
页数:13
相关论文
共 18 条
[1]  
Adl-Tabatabai AR, 2006, ACM SIGPLAN NOTICES, V41, P26, DOI 10.1145/1133981.1133985
[2]  
Atoofian E, 2011, 2 WORKSH APPL MULT M
[3]   The M5 simulator: Modeling networked systems [J].
Binkert, Nathan L. ;
Dreslinski, Ronald G. ;
Hsu, Lisa R. ;
Lim, Kevin T. ;
Saidi, Ali G. ;
Reinhardt, Steven K. .
IEEE MICRO, 2006, 26 (04) :52-60
[4]  
Chung J, 2010, P MICRO ATL DEC
[5]  
Culler D., 1998, PARALLEL COMPUTER AR
[6]   Hybrid transactional memory [J].
Damron, Peter ;
Fedorova, Alexandra ;
Lev, Yossi ;
Luchangco, Victor ;
Moir, Mark ;
Nussbaum, Daniel .
ACM SIGPLAN NOTICES, 2006, 41 (11) :336-346
[7]  
Dice D, 2006, LECT NOTES COMPUT SC, V4167, P194
[8]  
Dragojevi'c A, 2009, P 2009 ACM SIGPLAN C
[9]  
FELBER P, 2008, P 13 ACM SIGPLAN S P
[10]  
Herlihy M., 1993, P 20 ANN INT S COMP