RFR(S): 8007036: G1: Too many old regions added to last mixed GC
vitalyd at gmail.com
Mon Jan 28 22:36:31 UTC 2013
In G1CollectorPolicy::calc_min_old_cset_length(), is it possible to get 0
for G1MixedGCCountTarget? If so, will get div by zero there.
Sent from my phone
On Jan 28, 2013 5:01 PM, "John Cuthbertson" <john.cuthbertson at oracle.com>
> Hi Everyone,
> Can I have a couple of volunteers look over the changes for this CR? The
> webrev is at: http://cr.openjdk.java.net/~**johnc/8007036/webrev.0/<http://cr.openjdk.java.net/~johnc/8007036/webrev.0/>
> When adding old regions to the collection set we don't take into account
> whether the old regions added so far take us below the G1HeapWastePercent.
> As a result we could end up adding (and collecting) many more regions than
> we needed to. The actual number added was the minimum between the number of
> candidate regions / G1MixedGCCountTarget and 10% of the heap.
> Currently the calculation of the reclaimable bytes as a percentage of the
> uses exact arithmetic. It might make sense, at some point in the future, to
> use inexact arithmetic (rounding) in the decision on whether to continue
> mixed GCs and use exact arithmetic when adding regions.
> As part of this change I've also moved a couple routines from
> CollectionSetChooser to G1CollectorPolicy. I think they "fit" better in
> GCOld with tenuring threshold = 1 and a marking threshold = 10.
> Many thanks to Monica for identifying the issue.
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the hotspot-gc-dev