--- old/src/hotspot/share/gc/g1/g1CollectedHeap.cpp 2018-09-05 06:35:11.809322944 -0700 +++ new/src/hotspot/share/gc/g1/g1CollectedHeap.cpp 2018-09-05 06:35:11.405284423 -0700 @@ -2900,10 +2900,15 @@ active_workers = workers()->update_active_workers(active_workers); log_info(gc,task)("Using %u workers of %u for evacuation", active_workers, workers()->total_workers()); - G1MonitoringScope ms(g1mm(), - false /* full_gc */, - collector_state()->yc_type() == Mixed /* all_memory_pools_affected */); - + if(gc_cause() == GCCause::_java_lang_system_gc) { + G1MonitoringScope ms(g1mm(), + true /* full_gc */, + collector_state()->yc_type() == Mixed /* all_memory_pools_affected */); + } else { + G1MonitoringScope ms(g1mm(), + false /* full_gc */, + collector_state()->yc_type() == Mixed /* all_memory_pools_affected */); + } G1HeapTransition heap_transition(this); size_t heap_used_bytes_before_gc = used();