Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-8356990

JEP 521: Generational Shenandoah

XMLWordPrintable

    • Feature
    • Open
    • gc
    • JDK
    • hotspot dash gc dash dev at openjdk dot org
    • 521

      Summary

      Change the generational mode of the Shenandoah garbage collector from an experimental feature to a product feature.

      Non-Goals

      It is not a goal to change the default mode of the Shenandoah collector. By default, Shenandoah will continue to use a single generation.

      Motivation

      The generational mode of Shenandoah was integrated as an experimental feature by JEP 404 in JDK 24.

      Since then, we have implemented many stability and performance improvements. We have tested it extensively on multiple platforms with our own unit tests and with well-known benchmarks and workloads including DaCapo, SPECjbb2015, SPECjvm2008, and Heapothesys. Several users have reported success running demanding workloads.

      It is time to drop the generational mode’s experimental status.

      Description

      In JDK 24, the generational mode of Shenandoah is enabled via the command-line options

      $ java -XX:+UseShenandoahGC \
             -XX:+UnlockExperimentalVMOptions \
             -XX:ShenandoahGCMode=generational ...

      The second option, -XX:+UnlockExperimentalVMOptions, will no longer be needed once the generational mode is a product feature.

      We will not change any other options, or their default values.

      We do not expect existing users to be impacted by this change. Removing the requirement to specify -XX:+UnlockExperimentalVMOptions does not make its presence on the command line an error, so existing users need not make any changes to continue using the generational mode.

            wkemper William Kemper
            wkemper William Kemper
            William Kemper William Kemper
            Martin Doerr, Roman Kennke, Thomas Stuefe
            Vladimir Kozlov
            Votes:
            0 Vote for this issue
            Watchers:
            7 Start watching this issue

              Created:
              Updated:
              Resolved: