Executing Java']Java programs with transactional memory

被引:8
作者
Carlstrom, Brian D. [1 ]
Chung, JaeWoong [1 ]
Chafi, Hassan [1 ]
McDonald, Austen [1 ]
Minh, Chi Cao [1 ]
Hammond, Lance [1 ]
Kozyrakis, Christos [1 ]
Olukotun, Kunle [1 ]
机构
[1] Stanford Univ, Comp Syst Lab, Stanford, CA 94305 USA
基金
美国国家科学基金会;
关键词
transactions; feedback optimization; multiprocessor architecture;
D O I
10.1016/j.scico.2006.05.006
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Parallel programming is difficult due to the complexity of dealing with conventional lock-based synchronization. To simplify parallel programming, there have been a number of proposals to support transactions directly in hardware and eliminate locks completely. Although hardware support for transactions has the potential to completely change the way parallel programs are written, initially transactions will be used to execute existing parallel programs. In this paper we investigate the implications of using transactions to execute existing parallel Java programs. Our results show that transactions can be used to support all aspects of Java multithreaded programs, and once Java virtual machine issues have been addressed, the conversion of a lock-based application into transactions is largely straightforward. The performance that these converted applications achieve is equal to or sometimes better than the original lock-based implementation. (c) 2006 Elsevier B.V. All rights reserved.
引用
收藏
页码:111 / 129
页数:19
相关论文
共 48 条
[1]   Shared memory consistency models: A tutorial [J].
Adve, SV ;
Gharachorloo, K .
COMPUTER, 1996, 29 (12) :66-&
[2]  
Agarwal V, 2000, PROCEEDING OF THE 27TH INTERNATIONAL SYMPOSIUM ON COMPUTER ARCHITECTURE, P248, DOI [10.1145/342001.339691, 10.1109/ISCA.2000.854395]
[3]   The Jalapeno virtual machine [J].
Alpern, B ;
Attanasio, CR ;
Barton, JJ ;
Burke, MG ;
Cheng, P ;
Choi, JD ;
Cocchi, A ;
Fink, SJ ;
Grove, D ;
Hind, M ;
Hummel, SF ;
Lieber, D ;
Litvinov, V ;
Mergen, MF ;
Ngo, T ;
Russell, JR ;
Sarkar, V ;
Serrano, MJ ;
Shepherd, JC ;
Smith, SE ;
Sreedhar, VC ;
Srinivasan, H ;
Whaley, J .
IBM SYSTEMS JOURNAL, 2000, 39 (01) :211-238
[4]   Unbounded transactional memory [J].
Ananian, CS ;
Asanovic, K ;
Kuszmaul, BC ;
Leiserson, CE ;
Lie, S .
11TH INTERNATIONAL SYMPOSIUM ON HIGH-PERFORMANCE COMPUTER ARCHITECTURE, PROCEEDINGS, 2005, :316-327
[5]  
[Anonymous], FORTRESS LANGUAGE SP
[6]  
[Anonymous], 1993, P S COMP ARCH ISCA
[7]  
[Anonymous], 2005, OOPSLA
[8]  
BLUNDELL C, 2005, WORKSH DUPL DEC DEB
[9]  
*BROADC CORP, 2002, BROADC BCM1250 MULT
[10]  
CAMPIONE M, 2000, JAVA TUTORIAL