JDK-8272978 : Factor out g1 young collection specific data structures
  • Type: Enhancement
  • Component: hotspot
  • Sub-Component: gc
  • Affected Version: 18
  • Priority: P4
  • Status: Open
  • Resolution: Unresolved
  • Submitted: 2021-08-25
  • Updated: 2021-09-07
The Version table provides details related to the release that this issue/RFE will be addressed.

Unresolved : Release in which this issue/RFE will be addressed.
Resolved: Release in which this issue/RFE has been resolved.
Fixed : Release in which this issue/RFE has been fixed. The release containing this fix may be available for download as an Early Access Release or a General Availability Release.

To download the current JDK release, click here.
Other
tbdUnresolved
Related Reports
Relates :  
Description
In JDK-8253343 we move the young collection algorithm code out of G1CollectedHeap.

Look if it is useful to move young collection specific data structures, i.e. ones that are only used during young collection, (from G1CollectedHeap, or HeapRegion) into per-young collection data structure(s).

This is likely to be a placeholder CR and may be split into multiple down the line
Comments
Some suggestions: * I am aware that the class forward definitions in g1CollectedHeap.hpp are unsorted, but they were already and I will fix that later. * there will be some cleanup of G1CollecteHeap interface: at the moment, to reduce changes, I moved only code that was easy to move, and added back-references to G1CollectedHeap. There is a large list of getters for those in G1YoungCollector. These will be investigated one by one whether they can be removed by moving other code to G1YoungCollector. * what I would like to move is at least data like the heap region attribute table, evacuation failure temporary information and others * some data will likely move from G1CollectedHeap to some class that contains long term state specific to the young collection (e.g. evacuation failure injector, evacuation failure final result?, _bytes_used_during_gc, _gc_timer_stw, _gc_tracer_stw, stw reference processor and related closures)
07-09-2021