JDK-7145441 : G1: collection set chooser-related cleanup
  • Type: Enhancement
  • Component: hotspot
  • Sub-Component: gc
  • Affected Version: hs23
  • Priority: P4
  • Status: Resolved
  • Resolution: Fixed
  • OS: generic
  • CPU: generic
  • Submitted: 2012-02-14
  • Updated: 2013-09-18
  • Resolved: 2012-04-25
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 7 JDK 8 Other
7u40Fixed 8Fixed hs24Fixed
Related Reports
Relates :  
Description
After the fix for 

7132029: G1: mixed GC phase lasts for longer than it should

goes in it leaves a fair amount of dead code that's now unnecessary. We should clean it up. Here's what we'll be able to get rid of:

Remove the CSetChooserCache class, along with related fields, references to it, etc., from the collectionSetChooser.* files.

Remove the _sort_index field from the HeapRegion class, associated method, and all its uses (it's not needed any more, it used to be used to be able to remove an arbitrary region from the CSet chooser, but we don't do that any more).

Remove some of the GC-efficiency-related measures we keep track of in G1CollectorPolicy (e.g., _young_gc_eff_seq) and associated methods as they are not used any more. Additionally, we should consider whether we really need the GC efficiency metric per region.

Remove the _known_garbage_bytes and _known_garbage_ratio fields and their uses as they should not be needed any more (a small might be needed for these to confirm that this is the case).

Remove (maybe: revamp?) G1CollectorPolicy::assertMarkedBytesDataOK().

Maybe simplify some of the types used n the CSet chooser class (uint instead of int for anything that cannot get negative, also replace jint with int / uint, etc.).

The field and method names are a bit of a mess too, with both thisIsAName() and this_is_a_name() styles used. We should normalize to the latter.

We haven't used the G1PrintParCleanupStats flag for a while and it's probably bit-rotten. We should just remove it along with its uses.

Comments
EVALUATION http://hg.openjdk.java.net/lambda/lambda/hotspot/rev/f7a8920427a6
29-06-2012

EVALUATION http://hg.openjdk.java.net/hsx/hotspot-gc/hotspot/rev/f7a8920427a6
18-04-2012