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

Maintain the set of survivor regions in an array between GCs

XMLWordPrintable

    • Icon: Enhancement Enhancement
    • Resolution: Fixed
    • Icon: P3 P3
    • 9
    • 9
    • hotspot
    • gc
    • b120

      Currently the set of survivor regions are stored as a linked list between gc pauses using the YoungList class.
      In order to reduce coupling in the code and simplify it I suggest to instead store the survivor regions in a growable array. This removes some linked list head and tail pointers passed around to the policy and the complexity of maintaining a sublist of the young regions linked list in YoungList.

      The amount of survivor regions should hopefully not reach large enough numbers such that the size of the array becomes a problem.

      The concurrent root region scan will become a lot simpler since it can now be rewritten to simply do an atomic increment on a shared index variable to claim regions for scanning.

            mgerdin Mikael Gerdin (Inactive)
            mgerdin Mikael Gerdin (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved: