Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
article

Older-first garbage collection in practice: evaluation in a Java Virtual Machine

Published: 16 June 2002 Publication History
  • Get Citation Alerts
  • Abstract

    Until recently, the best performing copying garbage collectors used a generational policy which repeatedly collects the very youngest objects, copies any survivors to an older space, and then infrequently collects the older space. A previous study that used garbage-collection simulation pointed to potential improvements by using an Older-First copying garbage collection algorithm. The Older-First algorithm sweeps a fixed-sized window through the heap from older to younger objects, and avoids copying the very youngest objects which have not yet had sufficient time to die. We describe and examine here an implementation of the Older-First algorithm in the Jikes RVM for Java. This investigation shows that Older-First can perform as well as the simulation results suggested, and greatly improves total program performance when compared to using a fixed-size nursery generational collector. We further compare Older-First to a flexible-size nursery generational collector in which the nursery occupies all of the heap that does not contain older objects. In these comparisons, the flexible-nursery collector is occasionally the better of the two, but on average the Older-First collector performs the best.

    References

    [1]
    ALPERN, B., ATTANASIO, C. R., COCCHI, A., LIEBER, D., SMITH, S., NGO, T., BARTON, J. J., HUMMEL, S. F., SHEPERD, J. C., AND MERGEN, M. Implementing Jalapeño in Java. In Proceedings of the 1999 ACM SIGPLAN Conference on Object-Oriented Programming Systems, Languages & Applications (OOPSLA '99), Denver, Colorado, USA, November 1--5, 1999 (October 1999), vol. 34(10) of ACM SIGPLAN Notices, ACM Press, pp. 314--324.]]
    [2]
    ALPERN, B., ATTANASIO, D., BARTON, J., BURKE, M., CHENG, P., CHOI, J., COCCHI, A., FINK, S., GROVE, D., HIND, M., HUMMEL, S., LIEBER, D., LITVINOV, V., NGO, T., MERGEN, M., SARKAR, V., SERRANO, M., SHEPHERD, J., SMITH, S., SREEDHAR, V., SRINIVASAN, H., AND WHALEY, J. The Jalapeño virtual machine. IBM Systems Journal 39(1) (Feb. 2000).]]
    [3]
    APPEL, A. W. Simple generational garbage collection and fast allocation. Software Practice and Experience 19, 2 (1989), 171--183.]]
    [4]
    BLACKBURN, S. M., JONES, R., McKINLEY, K. S., AND MOSS, J. E. B. Beltway: Getting around garbage collection gridlock. In Proceedings of the 2002 ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI) (June 2002), ACM SIGPLAN Notices, ACM Press. to appear.]]
    [5]
    BLACKBURN, S. M., AND MCKINLEY, K. S. In or out? Putting write barriers in their place. In Proceedings of the Third International Symposium on Memory Management, ISMM '02 (Berlin, Germany, June 2002), vol. 37 of ACM SIGPLAN Notices, ACM Press.]]
    [6]
    BLACKBURN, S. M., SINGHAI, S., HERTZ, M., MCKINLEY, K. S., AND MOSS, J. E. B. Pretenuring for Java. In Proceedings of SIGPLAN 2001 Conference on Object-Oriented Programming, Languages, & Applications (Tampa, FL, Oct. 2001 ), vol. 36(10) of ACM SIGPLAN Notices, ACM Press, pp. 342--352.]]
    [7]
    CHENG, P., AND BLELLOCH, G. A parallel, real-time garbage collector. In Proceedings of the 2001 ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI), Snowbird, Utah, USA, June 20--22, 2001 (Snowbird, UT, May 2001), vol, 36(5) of ACM SIGPLAN Notices, ACM Press, pp. 125--136.]]
    [8]
    DIECKMAN, S., AND HÖLZLE, U. A study of the allocation behavior of the SPECjvm98 Java benchmarks. In ECOOP'98 -Object-Oriented Programming, 12th European Conference, Brussels, Belgium, July 20--24, 1998, Proceedings (1998), E. Jul, Ed., vol. 1445 of Lecture Notes in Computer Science, Springer-Verlag, pp. 92--115.]]
    [9]
    LIEBERMAN, H., AND HEWITT, C. E. A real-time garbage collector based on the lifetimes of objects. Communications of the ACM 26(6) (1983), 419--429. Also report TM-184, Laboratory for Computer Science, MIT, Cambridge, MA, July 1980 and AI Lab Memo 569, 1981.]]
    [10]
    MAY, C., SILHA, E., SIMPSON, R., AND WARREN, H., Eds. The PowerPC Archiecture: A Specification for a New Family of RISC Processors, second ed. Morgan Kaufmann, San Francisco, California, 1994.]]
    [11]
    STANDARD PERFORMANCE EVALUATION CORPORATION. SPECjvm98 Documentation, release 1.03 ed., March 1999.]]
    [12]
    STANDARD PERFORMANCE EVALUATION CORPORATION. SPECjbb2000 (Java Business Benchmark) Documentation, release 1.01 ed., 2001.]]
    [13]
    STEFANOVIĆ D. Properties of Age-Based Automatic Memory Reclamation Algorithms. PhD thesis, University of Massachusetts, Amherst, MA, Feb. 1999.]]
    [14]
    STEFANOVIĆ, D., MCKINLEY, K. S., AND MOSS, J. E. B. Age-based garbage collection. In Proceedings of SIGPLAN 1999 Conference on Object-Oriented Programming, Languages, & Applications (Denver, CO, Oct. 1999), vol. 34(10) of ACM SIGPLAN Notices, ACM Press, pp. 379--381.]]
    [15]
    UNGAR, D. Generation scavenging: A non-disruptive high performance storage reclamation algorithm. In Proceedings of the ACM SIGSOFT/SIGPLAN Software Engineering Symposium on Practical Software Development Environments (Pittsburgh, Pennsylvania, Apr. 1984), SIGPLAN Notices 19, 5 (May 1984), pp. 157--167.]]

    Cited By

    View all
    • (2016)Exploiting FIFO Scheduler to Improve Parallel Garbage Collection PerformanceACM SIGPLAN Notices10.1145/3007611.289224851:7(109-121)Online publication date: 25-Mar-2016
    • (2016)Exploiting FIFO Scheduler to Improve Parallel Garbage Collection PerformanceProceedings of the12th ACM SIGPLAN/SIGOPS International Conference on Virtual Execution Environments10.1145/2892242.2892248(109-121)Online publication date: 25-Mar-2016
    • (2007)MicrophaseACM SIGPLAN Notices10.1145/1297105.129703442:10(77-96)Online publication date: 21-Oct-2007
    • Show More Cited By

    Index Terms

    1. Older-first garbage collection in practice: evaluation in a Java Virtual Machine
      Index terms have been assigned to the content through auto-classification.

      Recommendations

      Comments

      Information & Contributors

      Information

      Published In

      cover image ACM SIGPLAN Notices
      ACM SIGPLAN Notices  Volume 38, Issue 2 supplement
      MSP 2002 and ISMM 2002
      February 2003
      291 pages
      ISSN:0362-1340
      EISSN:1558-1160
      DOI:10.1145/773039
      Issue’s Table of Contents
      • cover image ACM Conferences
        MSP '02: Proceedings of the 2002 workshop on Memory system performance
        June 2002
        298 pages
        ISBN:9781450373685
        DOI:10.1145/773146

      Publisher

      Association for Computing Machinery

      New York, NY, United States

      Publication History

      Published: 16 June 2002
      Published in SIGPLAN Volume 38, Issue 2 supplement

      Check for updates

      Qualifiers

      • Article

      Contributors

      Other Metrics

      Bibliometrics & Citations

      Bibliometrics

      Article Metrics

      • Downloads (Last 12 months)3
      • Downloads (Last 6 weeks)0
      Reflects downloads up to 09 Aug 2024

      Other Metrics

      Citations

      Cited By

      View all
      • (2016)Exploiting FIFO Scheduler to Improve Parallel Garbage Collection PerformanceACM SIGPLAN Notices10.1145/3007611.289224851:7(109-121)Online publication date: 25-Mar-2016
      • (2016)Exploiting FIFO Scheduler to Improve Parallel Garbage Collection PerformanceProceedings of the12th ACM SIGPLAN/SIGOPS International Conference on Virtual Execution Environments10.1145/2892242.2892248(109-121)Online publication date: 25-Mar-2016
      • (2007)MicrophaseACM SIGPLAN Notices10.1145/1297105.129703442:10(77-96)Online publication date: 21-Oct-2007
      • (2007)MicrophaseProceedings of the 22nd annual ACM SIGPLAN conference on Object-oriented programming systems, languages and applications10.1145/1297027.1297034(77-96)Online publication date: 21-Oct-2007
      • (2006)Garbage collection in an embedded java virtual machineProceedings of the 10th international conference on Knowledge-Based Intelligent Information and Engineering Systems - Volume Part I10.1007/11892960_54(443-450)Online publication date: 9-Oct-2006
      • (2011)Bounded-latency regional garbage collectionACM SIGPLAN Notices10.1145/2168696.204785947:2(73-84)Online publication date: 24-Oct-2011
      • (2011)Economic theory for memory management optimizationProceedings of the 6th Workshop on Implementation, Compilation, Optimization of Object-Oriented Languages, Programs and Systems10.1145/2069172.2069176(1-4)Online publication date: 26-Jul-2011
      • (2011)Bounded-latency regional garbage collectionProceedings of the 7th symposium on Dynamic languages10.1145/2047849.2047859(73-84)Online publication date: 24-Oct-2011
      • (2008)XMemACM SIGPLAN Notices10.1145/1379022.137562143:6(327-338)Online publication date: 7-Jun-2008
      • (2008)XMemProceedings of the 29th ACM SIGPLAN Conference on Programming Language Design and Implementation10.1145/1375581.1375621(327-338)Online publication date: 7-Jun-2008
      • Show More Cited By

      View Options

      Get Access

      Login options

      View options

      PDF

      View or Download as a PDF file.

      PDF

      eReader

      View online with eReader.

      eReader

      Media

      Figures

      Other

      Tables

      Share

      Share

      Share this Publication link

      Share on social media