Replicating real-time garbage collector

被引:2
|
作者
Kalibera, Tomas [1 ,2 ]
机构
[1] Purdue Univ, W Lafayette, IN 47907 USA
[2] Charles Univ Prague, Prague 14700, Czech Republic
来源
关键词
real-time garbage collection; replication; !text type='java']java[!/text;
D O I
10.1002/cpe.1669
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Real-time Java is becoming a viable platform for real-time applications, bringing new challenges to a garbage collector. A real-time collector has to be incremental as not to cause deadline misses by suspending an application for too long. In particular, if a real-time collector has to relocate objects in the heap, it must do so incrementally and transparently to the application. This is usually achieved via an indirection that has to be followed on every read and write to the heap. We present an alternative solution, based on object replication, which does not need any special handling for memory reads, but writes are more expensive: every value is written twice. As writes are less frequent than reads, the total overhead is reduced. With our implementation in a research real-time Java VM and DaCapo, pseudo-jbb, and SPEC JVM 98 benchmarks, we observe an average speed-up of 4% on a Linux/x86 platform. Compared with an existing technique for parallel systems, our technique targets uni-processor green-threading embedded systems, allowing us to design simpler and more predictable mutator barriers. Thanks to cheap synchronization provided by green threading, our technique features atomic writes to object replicas, providing programmers with the natural behavior in face of unprotected access to shared variables. Copyright (C) 2010 John Wiley & Sons, Ltd.
引用
收藏
页码:1646 / 1664
页数:19
相关论文
共 50 条
  • [1] A parallel, real-time garbage collector
    Cheng, P
    Blelloch, GE
    ACM SIGPLAN NOTICES, 2001, 36 (05) : 125 - 136
  • [2] STOPLESS: A Real-Time Garbage Collector for Multiprocessors
    Pizlo, Filip
    Frampton, Daniel
    Petrank, Erez
    Steensgaard, Bjarne
    ISMM'07: PROCEEDINGS OF THE 2007 INTERNATIONAL SYMPOSIUM ON MEMORY MANAGEMENT, 2007, : 159 - 172
  • [3] Scheduling garbage collector for embedded real-time systems
    Kim, T
    Chang, N
    Kim, N
    Shin, H
    ACM SIGPLAN NOTICES, 1999, 34 (07) : 55 - 64
  • [4] A REAL-TIME GARBAGE COLLECTOR BASED ON THE LIFETIMES OF OBJECTS
    LIEBERMAN, H
    HEWITT, C
    COMMUNICATIONS OF THE ACM, 1983, 26 (06) : 419 - 429
  • [5] A garbage collector for the concurrent real-time language Erlang
    Virding, R
    MEMORY MANAGEMENT, 1995, 986 : 343 - 354
  • [6] Garbage collector scheduling in dynamic, multiprocessor real-time systems
    Na, Chewoo
    Cho, Hyeonjoong
    Ravindran, Binoy
    Jensen, E. Douglas
    12TH IEEE INTERNATIONAL CONFERENCE ON EMBEDDED AND REAL-TIME COMPUTING SYSTEMS AND APPLICATIONS, PROCEEDINGS, 2006, : 101 - +
  • [7] A real-time garbage collector with low overhead and consistent utilization
    Bacon, DF
    Cheng, P
    Rajan, VT
    ACM SIGPLAN NOTICES, 2003, 38 (01) : 285 - 298
  • [8] A Real-time Garbage Collector with Low Overhead and Consistent Utilization
    Bacon, David F.
    Cheng, Perry
    Rajan, V. T.
    ACM SIGPLAN NOTICES, 2013, 48 (04) : 58 - 71
  • [9] Garbage Collector Scheduling in Dynamic, Multiprocessor Real-Time Systems
    Cho, Hyeonjoong
    Ravindran, Binoy
    Na, Chewoo
    IEEE TRANSACTIONS ON PARALLEL AND DISTRIBUTED SYSTEMS, 2009, 20 (06) : 845 - 856
  • [10] PERFORMANCE OF A HARDWARE-ASSISTED REAL-TIME GARBAGE COLLECTOR
    SCHMIDT, WJ
    NILSEN, KD
    SIGPLAN NOTICES, 1994, 29 (11): : 76 - 85