A comparative evaluation of parallel garbage collector implementations

被引:2
作者
Attanasio, CR [1 ]
Bacon, DF [1 ]
Cocchi, A [1 ]
Smith, S [1 ]
机构
[1] IBM Corp, Thomas J Watson Res Ctr, Yorktown Hts, NY 10598 USA
来源
LANGUAGES AND COMPILERS FOR PARALLEL COMPUTING | 2003年 / 2624卷
关键词
D O I
10.1007/3-540-35767-X_12
中图分类号
TP301 [理论、方法];
学科分类号
081202 ;
摘要
While uniprocessor garbage collection is relatively well understood, experience with collectors for large multiprocessor servers is limited and it is unknown which techniques best scale with large memories and large numbers of processors. In order to explore these issues we designed a modular garbage collection framework in the IBM Jalapeno Java virtual machine and implemented five different parallel garbage collectors: non-generational:and generational versions of mark-and-sweep and semi-space copying collectors, as well as a hybrid of the two: We describe the optimizations necessary to achieve good performance across all of the collectors, including load balancing, fast synchronization, and inter-processor sharing of free lists. We then quantitatively compare the different collectors to find their asymptotic performance both with respect to how fast they can run applications as well as how little memory they can run them in. All of our collectors scale linearly up to sixteen processors. The least memory is usually required by the hybrid mark-sweep collector that uses a copying collector for its nursery; although sometimes the non-generational mark-sweep collector requires less memory. The fastest execution is more application-dependent. Our only application with a large working set performed best using the mark-sweep collector; with one exception, the rest of the applications ran fastest with one of the generational collectors.
引用
收藏
页码:177 / 192
页数:16
相关论文
共 14 条
[1]   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
[2]   Implementing Jalapeno in Java']Java [J].
Alpern, B ;
Barton, JJ ;
Hummel, SF ;
Ngo, T ;
Shepherd, JC ;
Attanasio, CR ;
Cocchi, A ;
Lieber, D ;
Mergen, M ;
Smith, S .
ACM SIGPLAN NOTICES, 1999, 34 (10) :314-324
[3]  
ARNOLD M, 2000, SIGPLAN NOTICES, V35, P10
[4]   GARBAGE COLLECTION IN AN UNCOOPERATIVE ENVIRONMENT [J].
BOEHM, HJ ;
WEISER, M .
SOFTWARE-PRACTICE & EXPERIENCE, 1988, 18 (09) :807-820
[5]  
BOEHM HJ, 2000, HPL2000165 HEWL PACK
[6]   A GARBAGE COLLECTION ALGORITHM FOR SHARED MEMORY PARALLEL PROCESSORS [J].
CRAMMOND, J .
INTERNATIONAL JOURNAL OF PARALLEL PROGRAMMING, 1988, 17 (06) :497-522
[7]  
ENDO T, 1997, P SUP 97 SAN JOS CAL
[8]  
FITZGERALD R, ISMM, P111
[9]  
FLOOD C, 2001, P US JAV VIRT MACH R
[10]   MULTILISP - A LANGUAGE FOR CONCURRENT SYMBOLIC COMPUTATION [J].
HALSTEAD, RH .
ACM TRANSACTIONS ON PROGRAMMING LANGUAGES AND SYSTEMS, 1985, 7 (04) :501-538