Request for review (XXS): 7128532 G1: Change default value of G1DefaultMaxNewGenPercent to 80

Jon Masamitsu jon.masamitsu at oracle.com
Tue Jan 10 16:00:57 UTC 2012


Perfect.

On 01/09/12 23:57, Bengt Rutisson wrote:
>
> Hi all,
>
> Could I have a couple of reviews for this really small change? I am 
> just changing the default value of a newly introduced flag from 50 to 80.
>
> 7128532 G1: Change default value of G1DefaultMaxNewGenPercent to 80
> http://monaco.us.oracle.com/detail.jsf?cr=7128532
> http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=7128532
>
> Some background:
>
> As part of the fix for 7113021 I introduced two new develop flags that 
> are used as default values for the minimum and maximum size of the G1 
> young gen. Initially I set these to 20% and 50% respectively. Monica 
> has now been running some performance tests to see if it would be 
> better with other default values. It looks like we would benefit from 
> a larger maximum value.
>
> It should be pretty safe to have a large maximum value. The heuristics 
> in G1 calculates the actual young gen size based on the pause target. 
> So, just because we have a large max does not mean that we will ever 
> get a young gen that big. Also, it is always possible to override the 
> default value with -XX:MaxNewSize.
>
> Here are some SPECjbb2005 results from Monica:
>
> Min 20, Max 77: Valid run, Score is 356592; Full GC (outside of the 
> system GCs): 0
> Min 33, Max 77: Valid run, Score is 353053; Full GC (outside of the 
> system GCs): 0
> Min 20, Max 60: Valid run, Score is 352318; Full GC (outside of the 
> system GCs): 2
> Min 15, Max 77: Valid run, Score is 349376; Full GC (outside of the 
> system GCs): 0
> default (Min: 20, Max 50): Valid run, Score is 347647; Full GC 
> (outside of the system GCs): 2
> Min 20, Max 70: Valid run, Score is 346375; Full GC (outside of the 
> system GCs): 0
> Min 33, Max 60: Valid run, Score is 333381; Full GC (outside of the 
> system GCs): 0
>
> For comparison:
> parallelold: Valid run, Score is 358668; Full GC (outside of the 
> system GCs): 13
>
> Here is a webrev:
> http://cr.openjdk.java.net/~brutisso/7128532/webrev.01/
>
> But since the change is so small I am including the diff here as well:
>
> diff --git a/src/share/vm/gc_implementation/g1/g1_globals.hpp 
> b/src/share/vm/gc_implementation/g1/g1_globals.hpp
> --- a/src/share/vm/gc_implementation/g1/g1_globals.hpp
> +++ b/src/share/vm/gc_implementation/g1/g1_globals.hpp
> @@ -295,7 +295,7 @@
>            "Percentage (0-100) of the heap size to use as minimum 
> "          \
>            "young gen 
> size.")                                                \
>                                                                              
> \
> -  develop(uintx, G1DefaultMaxNewGenPercent, 
> 50,                             \
> +  develop(uintx, G1DefaultMaxNewGenPercent, 
> 80,                             \
>            "Percentage (0-100) of the heap size to use as maximum 
> "          \
>            "young gen size.")
>
>
> Thanks,
> Bengt
>



More information about the hotspot-gc-dev mailing list