Implementing an on-the-fly garbage collector for Java']Java

被引:7
|
作者
Domani, T [1 ]
Kolodner, EK [1 ]
Lewis, E [1 ]
Salant, EE [1 ]
Barabash, K [1 ]
Lahan, I [1 ]
Levanoni, Y [1 ]
Petrank, E [1 ]
Yanover, I [1 ]
机构
[1] IBM, MATAM Adv Technol Ctr, Haifa Res Lab, IL-31905 Haifa, Israel
关键词
!text type='Java']Java[!/text; programming languages; memory management; garbage collection; concurrent garbage collection; on-the-fly garbage collection;
D O I
10.1145/362426.362484
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Java uses garbage collection (GC) for the automatic reclamation of computer memory no longer required by a running application. GC implementations for Java Virtual Machines (JVM) are typically designed for single processor machines, and do not necessarily perform well for a server program with many threads running on a multiprocessor. We designed and implemented an on-the-fly CC, based on the algorithm of Doligez, Leroy and Gonthier [13, 12] (DLG), for Java in this environment. An on-the-fly collector, a collector that does not stop the program threads, allows all processors to be utilized during collection and provides uniform response times. We extended and adapted DLG for Java (e.g., adding support for weak references) and for modern multiprocessors without sequential consistency, and added performance improvements (e.g., to keep track of the objects remaining to be traced). We compared the performance of our implementation with stop-the-world mark-sweep GC, Our measurements show that the performance advantage for our collector increases as the number of threads increase and that it provides uniformly low response times.
引用
收藏
页码:155 / 166
页数:12
相关论文
共 50 条
  • [21] Java']Java garbage collection - a generic solution?
    Meehan, A
    Lunney, T
    [J]. INFORMATION AND SOFTWARE TECHNOLOGY, 2001, 43 (02) : 151 - 155
  • [22] Garbage Collections Delays on Java']Java GUIs
    Patros, Panagiotis
    Dawson, Michael
    Kent, Kenneth B.
    [J]. 2018 ELEVENTH INTERNATIONAL CONFERENCE ON MOBILE COMPUTING AND UBIQUITOUS NETWORK (ICMU 2018), 2018,
  • [23] A simple distributed garbage collector for distributed real-time Java
    Pablo Basanta-Val
    Marisol García-Valls
    [J]. The Journal of Supercomputing, 2014, 70 : 1588 - 1616
  • [24] Design and analysis of a hard real-time garbage collector for a Java']Java chip multi-processor
    Puffitsch, Wolfgang
    [J]. CONCURRENCY AND COMPUTATION-PRACTICE & EXPERIENCE, 2013, 25 (16): : 2269 - 2289
  • [25] Implementing assertions for Java']Java
    Payne, JE
    Schatz, MA
    Schmid, MN
    [J]. DR DOBBS JOURNAL, 1998, 23 (01): : 40 - &
  • [26] Implementing Jalapeno in Java']Java
    Alpern, B
    Barton, JJ
    Hummel, SF
    Ngo, T
    Shepherd, JC
    Attanasio, CR
    Cocchi, A
    Lieber, D
    Mergen, M
    Smith, S
    [J]. ACM SIGPLAN NOTICES, 1999, 34 (10) : 314 - 324
  • [27] ALGORITHMS FOR ON-THE-FLY GARBAGE COLLECTION
    BENARI, M
    [J]. ACM TRANSACTIONS ON PROGRAMMING LANGUAGES AND SYSTEMS, 1984, 6 (03): : 333 - 344
  • [28] Garbage collection in an embedded Java']Java virtual machine
    Cha, Chang-Il
    Kim, Hyung-Jun
    Hwang, Kyu-Jeong
    Kim, Sang-Wook
    Lee, Sang-Yun
    Won, Hee-Sun
    [J]. KNOWLEDGE-BASED INTELLIGENT INFORMATION AND ENGINEERING SYSTEMS, PT 1, PROCEEDINGS, 2006, 4251 : 443 - 450
  • [29] Evaluating HTM for pauseless garbage collectors in Java']Java
    Carpen-Amarie, Maria
    Dice, Dave
    Marlier, Patrick
    Thomas, Gael
    Felber, Pascal
    [J]. 2015 IEEE TRUSTCOM/BIGDATASE/ISPA, VOL 3, 2015, : 1 - 8
  • [30] Garbage collection for large memory Java']Java applications
    Krall, A
    Tomsich, P
    [J]. HIGH-PERFORMANCE COMPUTING AND NETWORKING, PROCEEDINGS, 1999, 1593 : 895 - 905