683 UseAdaptiveSizePolicyWithSystemGC) {
684 // The MS collection is a foreground collection that does all
685 // the parts of a mostly concurrent collection.
686 //
687 // For this collection include the cost of the
688 // initial mark
689 // remark
690 // all concurrent time (scaled down by the
691 // concurrent_processor_fraction). Some
692 // may be zero if the baton was passed before
693 // it was reached.
694 // concurrent marking
695 // sweeping
696 // resetting
697 // STW after baton was passed (STW_in_foreground_in_seconds)
698 double STW_in_foreground_in_seconds = _STW_timer.seconds();
699
700 double latest_cms_sum_concurrent_phases_time_secs =
701 concurrent_collection_time();
702 if (PrintAdaptiveSizePolicy && Verbose) {
703 gclog_or_tty->print_cr("\nCMSAdaptiveSizePolicy::ms_collecton_end "
704 "STW_in_foreground_in_seconds %f "
705 "_latest_cms_initial_mark_start_to_end_time_secs %f "
706 "_latest_cms_remark_start_to_end_time_secs %f "
707 "latest_cms_sum_concurrent_phases_time_secs %f "
708 "_latest_cms_ms_marking_start_to_end_time_secs %f "
709 "_latest_cms_ms_end_to_ms_start %f",
710 STW_in_foreground_in_seconds,
711 _latest_cms_initial_mark_start_to_end_time_secs,
712 _latest_cms_remark_start_to_end_time_secs,
713 latest_cms_sum_concurrent_phases_time_secs,
714 _latest_cms_ms_marking_start_to_end_time_secs,
715 _latest_cms_ms_end_to_ms_start);
716 }
717
718 double STW_marking_in_seconds = _latest_cms_initial_mark_start_to_end_time_secs +
719 _latest_cms_remark_start_to_end_time_secs;
720 #ifndef CLOCK_GRANULARITY_TOO_LARGE
721 assert(_latest_cms_ms_marking_start_to_end_time_secs == 0.0 ||
722 latest_cms_sum_concurrent_phases_time_secs == 0.0,
723 "marking done twice?");
|
683 UseAdaptiveSizePolicyWithSystemGC) {
684 // The MS collection is a foreground collection that does all
685 // the parts of a mostly concurrent collection.
686 //
687 // For this collection include the cost of the
688 // initial mark
689 // remark
690 // all concurrent time (scaled down by the
691 // concurrent_processor_fraction). Some
692 // may be zero if the baton was passed before
693 // it was reached.
694 // concurrent marking
695 // sweeping
696 // resetting
697 // STW after baton was passed (STW_in_foreground_in_seconds)
698 double STW_in_foreground_in_seconds = _STW_timer.seconds();
699
700 double latest_cms_sum_concurrent_phases_time_secs =
701 concurrent_collection_time();
702 if (PrintAdaptiveSizePolicy && Verbose) {
703 gclog_or_tty->print_cr("\nCMSAdaptiveSizePolicy::ms_collection_end "
704 "STW_in_foreground_in_seconds %f "
705 "_latest_cms_initial_mark_start_to_end_time_secs %f "
706 "_latest_cms_remark_start_to_end_time_secs %f "
707 "latest_cms_sum_concurrent_phases_time_secs %f "
708 "_latest_cms_ms_marking_start_to_end_time_secs %f "
709 "_latest_cms_ms_end_to_ms_start %f",
710 STW_in_foreground_in_seconds,
711 _latest_cms_initial_mark_start_to_end_time_secs,
712 _latest_cms_remark_start_to_end_time_secs,
713 latest_cms_sum_concurrent_phases_time_secs,
714 _latest_cms_ms_marking_start_to_end_time_secs,
715 _latest_cms_ms_end_to_ms_start);
716 }
717
718 double STW_marking_in_seconds = _latest_cms_initial_mark_start_to_end_time_secs +
719 _latest_cms_remark_start_to_end_time_secs;
720 #ifndef CLOCK_GRANULARITY_TOO_LARGE
721 assert(_latest_cms_ms_marking_start_to_end_time_secs == 0.0 ||
722 latest_cms_sum_concurrent_phases_time_secs == 0.0,
723 "marking done twice?");
|