Request for review (XXS): 7193157: G1: Make some develpflags available in product builds
John Cuthbertson
john.cuthbertson at oracle.com
Wed Aug 22 17:23:50 UTC 2012
Hi Ramki,
Once we're happy with the policies, and default values and G1 is mostly
meeting peoples' expectations, we definitely should work a tuning guide.
Any outside help and suggestions (hint, hint) will be more than welcome.
The perf team has been working some what-if scenarios and that could be
used as a basis. There has also been mention of contributing to a future
edition of Charlie Hunt's excellent book (if there is one).
IMO we need to improve the mixed GC times. During a typical mixed GC
sequence the pause times are typically higher than the typical young GC
and, in the latter stages of mixed GC sequence, the pause times go up
significantly as the cost of collecting the regions goes up. I think we
can reduce this through changing default flag settings (for example a
90% occupancy might result in too many "expensive" candidate regions).
For increased RSet updating times - which is typically the case with a
mixed GC because of the increased number of filled updated buffers by
the GC itself - it might be worth investigating starting the concurrent
refine threads more aggressively to process the higher number of
deferred updates. I also think there may be an issue in the prediction
logic for the RSet scanning time based upon RSet size - I don't think it
handles coarse RSet entries very well.
Also there were a few times where we weren't meeting the pause time goal
because we couldn't size the young generation small enough - we were
running into the 20% lower limit of the heap.
As a result of Bengt's change we have provided a few more knobs for
people to play with.
Thanks,
JohnC
On 08/22/12 01:21, Srinivas Ramakrishna wrote:
> Looks good to me. I am hoping the perf and gc teams will together also
> publish a G1 tuning white-paper soon!
>
> -- ramki
>
> On Wed, Aug 22, 2012 at 12:46 AM, Bengt Rutisson
> <bengt.rutisson at oracle.com <mailto:bengt.rutisson at oracle.com>> wrote:
>
>
> Hi all,
>
> Could I please have a couple of reviews for this really small fix?
> http://cr.openjdk.java.net/~brutisso/7193157/webrev.00/
> <http://cr.openjdk.java.net/%7Ebrutisso/7193157/webrev.00/>
>
> We need to make some of the G1 develop flags available in product
> builds to allow the performance team to tune G1 properly. We
> decided to make the flags experimental to start with. After the
> performance team has evaluated the flags we might make some of
> them product flags. The current prime candidates for becoming
> product flags are:
>
> G1DefaultMinNewGenPercent
> G1DefaultMaxNewGenPercent
> G1OldCSetRegionLiveThresholdPercent
>
> Thanks,
> Bengt
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://mail.openjdk.org/pipermail/hotspot-gc-dev/attachments/20120822/f5a57a1a/attachment.htm>
More information about the hotspot-gc-dev
mailing list