Question about RS Set size

Yu Zhang yu.zhang at oracle.com
Fri Feb 13 17:51:57 UTC 2015


Hi,

-XX:G1RSetRegionEntries=4096 does not control the number of regions.  
The number of regions is calculated based on G1HeapRegionSize.  
G1RSetRegionEntries decides the entries in RSet fine grain table.  Since 
you set it very big, you do not see coarsening. On the other hand, this 
could increase the memory foot print a lot.

The heap size is 80g, but only used maximum 60g.  Reading the log you 
attached, the 1st mixed gc after marking cycle is 400ms, 2nd 458ms, 3rd 
537ms, 4th 744ms.  Since you have a lot of unused heap, you can reduce 
the mixed gcs.  There are several ways to do this:
1. increase G1HeapWastePercent=15
2. decrease G1MixedGCLiveThresholdPercent=65

You can try those in the order listed, or a combination.
For you reference about those parameters please see
https://blogs.oracle.com/g1gc/date/20140807

Thanks,
Jenny

On 2/11/2015 7:54 PM, D vd Reddy wrote:
> Hi,
>     Thanks for the reply.If the region size is capped then GC will not 
> be adhering to the regionCount mentioned right?
>
> Also yes the high scanRS is in mixed GC, Can you suggest the tunings / 
> experiments so that we can reduce this.
>
> The parameters we run with are (we also ran with MaxGCPause to 200 we 
> saw similar things)
>
> *-XX:MaxGCPauseMillis=100 -XX:G1HeapRegionSize=32m -XX:InitiatingHeapOccupancyPercent=65 -XX:G1ReservePercent=20 -XX:G1HeapWastePercent=5 -XX:G1MixedGCLiveThresholdPercent=75 -XX:G1RSetRegionEntries=4096*
>
> I am attaching a part of the log that covers the run for around 10 min 
> (Bigger log for a day here 
> https://raw.githubusercontent.com/dvdreddy/gc-logs/master/g1-gc.log) 
> .  I am also pasting in the mail a sample mixed GC run here for quick 
> review, you can see that ScanRS and Object copy are at the same level
>
> 2015-02-09T10:10:25.491-0500: 5383952.213: [GC pause (mixed)
> Desired survivor size 285212672 bytes, new threshold 3 (max 15)
> - age   1:   65081144 bytes,   65081144 total
> - age   2:  136289896 bytes,  201371040 total
> - age   3:  122469928 bytes,  323840968 total
>  5383952.213: [G1Ergonomics (CSet Construction) start choosing CSet, 
> _pending_cards: 23323, predicted base time: 42.39 ms, remaining time: 
> 57.61 ms, target pause time:\
>  100.00 ms]
>  5383952.213: [G1Ergonomics (CSet Construction) add young regions to 
> CSet, eden: 114 regions, survivors: 17 regions, predicted young region 
> time: 28.59 ms]
>  5383952.214: [G1Ergonomics (CSet Construction) finish adding old 
> regions to CSet, reason: predicted time is too high, predicted time: 
> 1.30 ms, remaining time: 0.00 ms\
> , old: 107 regions, min: 107 regions]
>  5383952.214: [G1Ergonomics (CSet Construction) added expensive 
> regions to CSet, reason: old CSet region num not reached min, old: 107 
> regions, expensive: 60 regions, \
> min: 107 regions, remaining time: 0.00 ms]
>  5383952.214: [G1Ergonomics (CSet Construction) finish choosing CSet, 
> eden: 114 regions, survivors: 17 regions, old: 107 regions, predicted 
> pause time: 170.47 ms, targ\
> et pause time: 100.00 ms]
>  5383952.388: [G1Ergonomics (Mixed GCs) continue mixed GCs, reason: 
> candidate old regions available, candidate old regions: 743 regions, 
> reclaimable: 12156413304 bytes\
>  (13.82 %), threshold: 5.00 %]
> , 0.1751220 secs]
>    [Parallel Time: 131.1 ms, GC Workers: 23]
>       [GC Worker Start (ms): Min: 5383952214.8, Avg: 5383952215.2, 
> Max: 5383952215.5, Diff: 0.7]
>       [Ext Root Scanning (ms): Min: 5.4, Avg: 6.1, Max: 9.6, Diff: 
> 4.3, Sum: 140.5]
>       [Update RS (ms): Min: 3.7, Avg: 6.7, Max: 7.7, Diff: 4.0, Sum: 
> 154.8]
>          [Processed Buffers: Min: 9, Avg: 14.6, Max: 22, Diff: 13, 
> Sum: 335]
>       [Scan RS (ms): Min: 50.9, Avg: 51.2, Max: 51.4, Diff: 0.5, Sum: 
> 1178.2]
>       [Object Copy (ms): Min: 65.3, Avg: 65.6, Max: 66.1, Diff: 0.8, 
> Sum: 1507.9]
>       [Termination (ms): Min: 0.0, Avg: 0.0, Max: 0.0, Diff: 0.0, Sum: 
> 0.5]
>       [GC Worker Other (ms): Min: 0.0, Avg: 0.1, Max: 0.2, Diff: 0.2, 
> Sum: 1.5]
>       [GC Worker Total (ms): Min: 129.4, Avg: 129.7, Max: 130.2, Diff: 
> 0.8, Sum: 2983.3]
>       [GC Worker End (ms): Min: 5383952344.9, Avg: 5383952344.9, Max: 
> 5383952345.1, Diff: 0.2]
>    [Code Root Fixup: 0.0 ms]
>    [Clear CT: 7.8 ms]
>    [Other: 36.2 ms]
>       [Choose CSet: 1.6 ms]
>       [Ref Proc: 6.1 ms]
>       [Ref Enq: 0.1 ms]
>       [Free CSet: 3.8 ms]
>    [Eden: 3648.0M(3648.0M)->0.0B(3808.0M) Survivors: 544.0M->384.0M 
> Heap: 56.6G(81.9G)->50.6G(81.9G)]
>  [Times: user=3.10 sys=0.00, real=0.18 secs]
>
> On Wed, Feb 11, 2015 at 5:31 PM, Yu Zhang <yu.zhang at oracle.com 
> <mailto:yu.zhang at oracle.com>> wrote:
>
>     Hi,
>
>     Currently the region size is capped at 32MB.
>
>     It is good that you confirmed there is no coarsening. Is the high
>     scanRS in mixed gc?  If it is, then there are some tunings you can
>     try to reduce it.
>
>     Thanks,
>     Jenny
>
>     On 2/11/2015 4:12 PM, D vd Reddy wrote:
>>
>>     Hi,
>>           we are using G1 GC for heap size of about 92 - 96 GB and we
>>     observed in the logs that Scan RS times were too high (comparable
>>     to Object Copy time, Is this normal ?, I have checked that there
>>     are no coarsening(s)). So in order to counter that we plan to
>>     decrease the region count, currently we set it explicitly to 4096
>>     with regionSize to 32MB. My question is that if we drop setting
>>     regionSize and decrease the regions to 2048 what will happen to
>>     region size, Can it go above 32 MB and keep the regions to 2048
>>     or is it capped at 32MB ?
>>
>>
>>     Thanks in advance
>>
>>
>>
>>     _______________________________________________
>>     hotspot-gc-use mailing list
>>     hotspot-gc-use at openjdk.java.net  <mailto:hotspot-gc-use at openjdk.java.net>
>>     http://mail.openjdk.java.net/mailman/listinfo/hotspot-gc-use
>
>
>     _______________________________________________
>     hotspot-gc-use mailing list
>     hotspot-gc-use at openjdk.java.net
>     <mailto:hotspot-gc-use at openjdk.java.net>
>     http://mail.openjdk.java.net/mailman/listinfo/hotspot-gc-use
>
>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.openjdk.java.net/pipermail/hotspot-gc-use/attachments/20150213/43d2673e/attachment.html>


More information about the hotspot-gc-use mailing list