1.1 --- a/src/share/vm/gc_implementation/g1/g1CollectorPolicy.cpp Tue Mar 27 10:29:59 2012 +0200 1.2 +++ b/src/share/vm/gc_implementation/g1/g1CollectorPolicy.cpp Tue Mar 13 11:05:32 2012 -0700 1.3 @@ -1261,6 +1261,9 @@ 1.4 other_time_ms -= known_time; 1.5 } 1.6 1.7 + // Now subtract the time taken to fix up roots in generated code 1.8 + other_time_ms -= _cur_collection_code_root_fixup_time_ms; 1.9 + 1.10 // Subtract the time taken to clean the card table from the 1.11 // current value of "other time" 1.12 other_time_ms -= _cur_clear_ct_time_ms; 1.13 @@ -1401,10 +1404,10 @@ 1.14 print_par_stats(2, "Object Copy", _par_last_obj_copy_times_ms); 1.15 print_par_stats(2, "Termination", _par_last_termination_times_ms); 1.16 print_par_sizes(3, "Termination Attempts", _par_last_termination_attempts); 1.17 - print_par_stats(2, "GC Worker End", _par_last_gc_worker_end_times_ms); 1.18 1.19 for (int i = 0; i < _parallel_gc_threads; i++) { 1.20 - _par_last_gc_worker_times_ms[i] = _par_last_gc_worker_end_times_ms[i] - _par_last_gc_worker_start_times_ms[i]; 1.21 + _par_last_gc_worker_times_ms[i] = _par_last_gc_worker_end_times_ms[i] - 1.22 + _par_last_gc_worker_start_times_ms[i]; 1.23 1.24 double worker_known_time = _par_last_ext_root_scan_times_ms[i] + 1.25 _par_last_satb_filtering_times_ms[i] + 1.26 @@ -1413,10 +1416,13 @@ 1.27 _par_last_obj_copy_times_ms[i] + 1.28 _par_last_termination_times_ms[i]; 1.29 1.30 - _par_last_gc_worker_other_times_ms[i] = _cur_collection_par_time_ms - worker_known_time; 1.31 + _par_last_gc_worker_other_times_ms[i] = _par_last_gc_worker_times_ms[i] - 1.32 + worker_known_time; 1.33 } 1.34 - print_par_stats(2, "GC Worker", _par_last_gc_worker_times_ms); 1.35 + 1.36 print_par_stats(2, "GC Worker Other", _par_last_gc_worker_other_times_ms); 1.37 + print_par_stats(2, "GC Worker Total", _par_last_gc_worker_times_ms); 1.38 + print_par_stats(2, "GC Worker End", _par_last_gc_worker_end_times_ms); 1.39 } else { 1.40 print_stats(1, "Ext Root Scanning", ext_root_scan_time); 1.41 if (print_marking_info) { 1.42 @@ -1427,6 +1433,7 @@ 1.43 print_stats(1, "Scan RS", scan_rs_time); 1.44 print_stats(1, "Object Copying", obj_copy_time); 1.45 } 1.46 + print_stats(1, "Code Root Fixup", _cur_collection_code_root_fixup_time_ms); 1.47 if (print_marking_info) { 1.48 print_stats(1, "Complete CSet Marking", _mark_closure_time_ms); 1.49 }