RFR(S): 7185699: G1: Prediction model discrepancies

Bengt Rutisson bengt.rutisson at oracle.com
Fri Aug 17 08:37:45 UTC 2012


Hi John,

This looks good to me. Nice cleanup!

Two very minor white space issues:

g1CollectorPolicy.cpp, line 1859 in the new code. There seem to be one 
indentation level too much.

g1CollectorPolicy.cpp, line 1931 in the new code. Should be a space 
after the "," in the paramter list "(hr,gcs_are_young())"

Ship it!
Bengt

On 2012-07-27 19:39, John Cuthbertson wrote:
> 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