RFR(S): 7185699: G1: Prediction model discrepancies
John Cuthbertson
john.cuthbertson at oracle.com
Fri Jul 27 17:39:15 UTC 2012
Hi Everyone,
A new webrev incorporating feedback from Thomas can be found at:
http://cr.openjdk.java.net/~johnc/7185699/webrev.1/
Thanks,
JohnC
On 07/24/12 11:15, John Cuthbertson wrote:
> Hi Everyone,
>
> Can I have a couple of volunteers to review the changes for this CR?
> The webrev can be found at:
> http://cr.openjdk.java.net/~johnc/7185699/webrev.0/.
>
> Background:
> While I was going through the code for the current mixed GC policy and
> the code that adds non-young regions to the collection set, I found a
> couple of minor bugs associated with the prediction code. The first
> was the calculation of the number of unprocessed dirty card at the
> start of the GC - this was using routines that return a number of
> bytes rather than the number of entries. As a result we were vastly
> overestimating the base pause time. The second was in the code that
> calculates the GC efficiency of a non-young region. The GC efficiency
> of a region is calculated at the end of marking. The code, however,
> was using the wrong routine to predict the number of cards for a given
> RSet length. It was using the data collected for young GCs when it
> should have been using the data collected for mixed GCs.
>
> The other changes are minor cleanups. These help to slightly increase
> the amount of inlining with the Solaris Studio compiler and save an
> iteration over the collection set.
>
> Testing:
> Dacapo2006 with Ergonomic output enabled; Dacapo2006 with
> PrintLivenessInfo enabled (before and after); GC test suite with
> verification; jprt.
>
> Thanks,
>
> JohnC
More information about the hotspot-gc-dev
mailing list