• DocumentCode
    2408863
  • Title

    A performance comparison between stop-the-world and multithreaded concurrent generational garbage collection for Java

  • Author

    Lo, Chia-Tien Dan ; Srisa-An, Witawas ; Chang, J. Morris

  • Author_Institution
    Dept. of Comput. Sci., Illinois Inst. of Technol., Chicago, IL, USA
  • fYear
    2002
  • fDate
    2002
  • Firstpage
    301
  • Lastpage
    308
  • Abstract
    The recent popularity of the Java programming language has brought automatic dynamic memory management (a.k.a., the garbage collection) into the mainstream. Traditional garbage collectors suffer from long garbage collection pauses (stop-the-world mark-sweep algorithm) or inability of collecting cyclic garbage (reference counting approach). Generational garbage collection, however, is based only on the weak generational hypothesis that most objects die young. In this paper, the performance evaluation of a new multithreaded concurrent generational garbage collector (MCGC) based on mark-sweep with the assistance of reference counting is reported. The MCGC can take advantage of multiple CPUs in an SMP system and the merits of lightweight processes. Furthermore, the long garbage collection pause can be reduced and the garbage collection efficiency can be enhanced. Measurement results indicate that the MCGC improves the garbage collection pause time up to 96.75% over the traditional stop-the-world mark-sweep garbage collector. Moreover, the MCGC receives minimal time and space penalties as shown in the report of the total execution time, the memory footprint and the sticky reference count rate
  • Keywords
    Java; multi-threading; object-oriented programming; software performance evaluation; storage management; Java; MCGC; automatic dynamic memory management; execution time; memory footprint; modified buddy system; multithreaded concurrent generational garbage collection; object oriented programming; performance comparison; reference counting approach; stop-the-world mark-sweep algorithm; Computer languages; Computer science; Dynamic programming; Java; Memory management; Object oriented programming; Parallel programming; Technology management; Time measurement; Virtual machining;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Performance, Computing, and Communications Conference, 2002. 21st IEEE International
  • Conference_Location
    Phoenix, AZ
  • Print_ISBN
    0-7803-7371-5
  • Type

    conf

  • DOI
    10.1109/IPCCC.2002.995163
  • Filename
    995163