src/share/vm/gc_implementation/g1/g1CollectorPolicy.cpp

changeset 3689
500023bd0818
parent 3667
21595f05bc93
child 3691
2a0172480595
     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      }

mercurial