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 条
  • [31] Java']Java garbage collection for real time systems
    Petit-Bianco, A
    [J]. DR DOBBS JOURNAL, 1998, 23 (10): : 20 - +
  • [32] Analysis and Optimizations of Java']Java Full Garbage Collection
    Li, Haoyu
    Wu, Mingyu
    Chen, Haibo
    [J]. 9TH ASIA-PACIFIC SYSTEMS WORKSHOP 2018 (APSYS'18), 2018,
  • [33] Garbage collection for large memory Java']Java applications
    Krall, A
    Tomsich, P
    [J]. HIGH-PERFORMANCE COMPUTING AND NETWORKING, PROCEEDINGS, 1999, 1593 : 895 - 905
  • [34] Tuning garbage collection in an embedded Java']Java environment
    Chen, G
    Shetty, R
    Kandemir, M
    Vijaykrishnan, N
    Irwin, MJ
    Wolczko, M
    [J]. EIGHTH INTERNATIONAL SYMPOSIUM ON HIGH-PERFORMANCE COMPUTER ARCHITECTURE, PROCEEDINGS, 2002, : 92 - 103
  • [35] Real-time garbage collection for Java']Java
    Schoeberl, Martin
    [J]. Ninth IEEE International Symposium on Object and Component-Oriented Real-Time Distributed Computing, Proceedings, 2006, : 424 - 432
  • [36] Implementing an efficient Java']Java interpreter
    Gregg, D
    Ertl, MA
    Krall, A
    [J]. HIGH-PERFORMANCE COMPUTING AND NETWORKING, 2001, 2110 : 613 - 620
  • [37] On-the-fly form generation and on-line metadata configuration - a clinical data management web infrastructure in Java']Java
    Beck, Peter
    Truskaller, Thomas
    Rakovac, Ivo
    Cadonna, Bruno
    Pieber, Thomas R.
    [J]. UBIQUITY: TECHNOLOGIES FOR BETTER HEALTH IN AGING SOCIETIES, 2006, 124 : 271 - 276
  • [38] Implementing declarative concurrency in Java']Java
    Ramirez, R
    Santosa, AE
    Hong, LW
    [J]. EURO-PAR 2000 PARALLEL PROCESSING, PROCEEDINGS, 2000, 1900 : 700 - 708
  • [39] Implementing communication protocols in Java']Java
    Krupczak, B
    Calvert, KL
    Ammar, M
    [J]. IEEE COMMUNICATIONS MAGAZINE, 1998, 36 (10) : 93 - 99
  • [40] ON-THE-FLY GARBAGE COLLECTION FOR SEVERAL MUTATORS
    JONKER, JE
    [J]. DISTRIBUTED COMPUTING, 1992, 5 (04) : 187 - 199