Mercurial > hg > truffle
comparison src/share/vm/gc_implementation/g1/g1CollectorPolicy.cpp @ 648:2314b7336582
6820321: G1: Error: guarantee(check_nums(total, n, parts), "all seq lengths should match")
Summary: Small fixes to sort out some verbosegc-related incorrectness and a failure
Reviewed-by: apetrusenko
author | tonyp |
---|---|
date | Sat, 21 Mar 2009 22:53:04 -0400 |
parents | ba50942c8138 |
children | 96b229c54d1e |
comparison
equal
deleted
inserted
replaced
640:ba50942c8138 | 648:2314b7336582 |
---|---|
1635 sum_of_values(_par_last_update_rs_processed_buffers); | 1635 sum_of_values(_par_last_update_rs_processed_buffers); |
1636 double scan_rs_time = avg_value(_par_last_scan_rs_times_ms); | 1636 double scan_rs_time = avg_value(_par_last_scan_rs_times_ms); |
1637 double obj_copy_time = avg_value(_par_last_obj_copy_times_ms); | 1637 double obj_copy_time = avg_value(_par_last_obj_copy_times_ms); |
1638 double termination_time = avg_value(_par_last_termination_times_ms); | 1638 double termination_time = avg_value(_par_last_termination_times_ms); |
1639 | 1639 |
1640 double parallel_other_time; | 1640 double parallel_other_time = _cur_collection_par_time_ms - |
1641 (update_rs_time + ext_root_scan_time + mark_stack_scan_time + | |
1642 scan_only_time + scan_rs_time + obj_copy_time + termination_time); | |
1641 if (update_stats) { | 1643 if (update_stats) { |
1642 MainBodySummary* body_summary = summary->main_body_summary(); | 1644 MainBodySummary* body_summary = summary->main_body_summary(); |
1643 guarantee(body_summary != NULL, "should not be null!"); | 1645 guarantee(body_summary != NULL, "should not be null!"); |
1644 | 1646 |
1645 if (_satb_drain_time_set) | 1647 if (_satb_drain_time_set) |
1654 body_summary->record_obj_copy_time_ms(obj_copy_time); | 1656 body_summary->record_obj_copy_time_ms(obj_copy_time); |
1655 if (parallel) { | 1657 if (parallel) { |
1656 body_summary->record_parallel_time_ms(_cur_collection_par_time_ms); | 1658 body_summary->record_parallel_time_ms(_cur_collection_par_time_ms); |
1657 body_summary->record_clear_ct_time_ms(_cur_clear_ct_time_ms); | 1659 body_summary->record_clear_ct_time_ms(_cur_clear_ct_time_ms); |
1658 body_summary->record_termination_time_ms(termination_time); | 1660 body_summary->record_termination_time_ms(termination_time); |
1659 parallel_other_time = _cur_collection_par_time_ms - | |
1660 (update_rs_time + ext_root_scan_time + mark_stack_scan_time + | |
1661 scan_only_time + scan_rs_time + obj_copy_time + termination_time); | |
1662 body_summary->record_parallel_other_time_ms(parallel_other_time); | 1661 body_summary->record_parallel_other_time_ms(parallel_other_time); |
1663 } | 1662 } |
1664 body_summary->record_mark_closure_time_ms(_mark_closure_time_ms); | 1663 body_summary->record_mark_closure_time_ms(_mark_closure_time_ms); |
1665 } | 1664 } |
1666 | 1665 |
1801 _g1->used(), _g1->capacity()); | 1800 _g1->used(), _g1->capacity()); |
1802 if (PrintGCDetails) | 1801 if (PrintGCDetails) |
1803 gclog_or_tty->print_cr("]"); | 1802 gclog_or_tty->print_cr("]"); |
1804 | 1803 |
1805 _all_pause_times_ms->add(elapsed_ms); | 1804 _all_pause_times_ms->add(elapsed_ms); |
1806 summary->record_total_time_ms(elapsed_ms); | 1805 if (update_stats) { |
1807 summary->record_other_time_ms(other_time_ms); | 1806 summary->record_total_time_ms(elapsed_ms); |
1807 summary->record_other_time_ms(other_time_ms); | |
1808 } | |
1808 for (int i = 0; i < _aux_num; ++i) | 1809 for (int i = 0; i < _aux_num; ++i) |
1809 if (_cur_aux_times_set[i]) | 1810 if (_cur_aux_times_set[i]) |
1810 _all_aux_times_ms[i].add(_cur_aux_times_ms[i]); | 1811 _all_aux_times_ms[i].add(_cur_aux_times_ms[i]); |
1811 | 1812 |
1812 // Reset marks-between-pauses counter. | 1813 // Reset marks-between-pauses counter. |