src/share/vm/gc_implementation/parallelScavenge/psMarkSweep.cpp
Print this page
*** 237,247 ****
reset_millis_since_last_gc();
// Let the size policy know we're done
size_policy->major_collection_end(old_gen->used_in_bytes(), gc_cause);
! if (UseAdaptiveSizePolicy) {
if (PrintAdaptiveSizePolicy) {
gclog_or_tty->print("AdaptiveSizeStart: ");
gclog_or_tty->stamp();
gclog_or_tty->print_cr(" collection: %d ",
--- 237,255 ----
reset_millis_since_last_gc();
// Let the size policy know we're done
size_policy->major_collection_end(old_gen->used_in_bytes(), gc_cause);
! bool free_ratio_in_effect = false;
! if ((UseFreeRatioForParallelGC ||
! (UseFreeRatioOnlyInSystemGCForParallelGC &&
! gc_cause == GCCause::_java_lang_system_gc))) {
! ParallelScavengeHeap* heap = (ParallelScavengeHeap*)Universe::heap();
! free_ratio_in_effect = heap->try_to_shrink_by_free_ratio(true);
! }
!
! if (!free_ratio_in_effect && UseAdaptiveSizePolicy) {
if (PrintAdaptiveSizePolicy) {
gclog_or_tty->print("AdaptiveSizeStart: ");
gclog_or_tty->stamp();
gclog_or_tty->print_cr(" collection: %d ",