JDK-8151386 : Extract card live data out of G1ConcurrentMark
  • Type: Enhancement
  • Component: hotspot
  • Sub-Component: gc
  • Affected Version: 9
  • Priority: P3
  • Status: Resolved
  • Resolution: Fixed
  • Submitted: 2016-03-07
  • Updated: 2018-06-21
  • Resolved: 2016-04-06
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.
JDK 9
9 b116Fixed
Related Reports
Blocks :  
Blocks :  
Blocks :  
Relates :  
Relates :  
Relates :  
Relates :  
Description
G1ConcurrentMark provides information about the liveness in cards on a per-region basis.

This information will be crucial for improving remembered set scanning performance. It is prudent to extract this information into a separate data holder class so that we do not need to pass around G1ConcurrentMark everywhere.

Extract this information (per-card liveness, per-region liveness, and a new per-region live number of cards map) into a separate class to be owned by G1RemSet and passed around instead of multiple parameters.

Also clean up the code a little, adding basic logging and memory deallocation.