Request for review: 8007053: Refactor SizePolicy code for consistency across collectors

Tao Mao tao.mao at oracle.com
Thu Jan 31 00:37:13 UTC 2013


8007053: Refactor SizePolicy code for consistency across collectors
https://jbs.oracle.com/bugs/browse/JDK-8007053

webrev:
http://cr.openjdk.java.net/~tamao/8007053/webrev.00/

changeset:
1. rename a bunch of functions across collectors related to compute and 
resize young/tenured gens
unified function names:
(1) compute_*:
       compute_survivor_space_size_and_threshold()
       compute_generations_free_space() [compute_eden_space_size() + 
compute_tenured_generation_free_space()]
(2) resize_*_gen:
       resize_young_gen()
       resize_tenured_gen()

2. split compute_generations_free_space() into two functions:
compute_eden_space_size() + compute_tenured_generation_free_space()
each of which (if needed) can be reused without executing an overhead of 
the other.

*3. in src/share/vm/memory/collectorPolicy.cpp
a minor bug in initializing an AdaptiveSizePolicy instance is caught.
MaxGCMinorPauseMillis -> MaxGCPauseMillis

testing:
refworkload test cases: jetstream, scimark, specjbb2000, specjbb2005, 
specjvm98
GC options: -XX:+UseParallelGC -Xmx512m
no regression found from the performance results;
PrintGCStats and CompareGCStats show no abnormal variations.




More information about the hotspot-gc-dev mailing list