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

GenShen require heap size 2MB granularity

    XMLWordPrintable

Details

    • Bug
    • Resolution: Fixed
    • P4
    • None
    • None
    • hotspot
    • gc
    • generic
    • generic

    Description

      enerational Shenandoah requires 2MB granularity in order for card tables to cover the allocated heap. Each byte in a page of card table represents 512 heap bytes. As card tables are allocated 4KB at a time, 4KB * 512 = 2MB.

      There is a circular dependency between the region calculations and the heap size calculations. This unconditionally rounds up the heap size to 2MB. It might be preferable to do this only when generational mode is enabled.

      Running with:
        java -Xlog:gc*=trace -XX:+UseShenandoahGC -mx495m \
             -XX:ShenandoahGCMode=generational -version

      on a debug build is sufficient to reproduce this problem

      Attachments

        Issue Links

          Activity

            People

              smonteith Stuart Monteith
              smonteith Stuart Monteith
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: