src/hotspot/share/gc/g1/g1GCPhaseTimes.hpp
changeset 51546 b9f6a4427da9
parent 50438 66d0ded78cce
child 51877 5f931e3e7a63
equal deleted inserted replaced
51545:29517169ad2d 51546:b9f6a4427da9
    24 
    24 
    25 #ifndef SHARE_VM_GC_G1_G1GCPHASETIMES_HPP
    25 #ifndef SHARE_VM_GC_G1_G1GCPHASETIMES_HPP
    26 #define SHARE_VM_GC_G1_G1GCPHASETIMES_HPP
    26 #define SHARE_VM_GC_G1_G1GCPHASETIMES_HPP
    27 
    27 
    28 #include "gc/shared/referenceProcessorPhaseTimes.hpp"
    28 #include "gc/shared/referenceProcessorPhaseTimes.hpp"
       
    29 #include "gc/shared/weakProcessorPhaseTimes.hpp"
    29 #include "logging/logLevel.hpp"
    30 #include "logging/logLevel.hpp"
    30 #include "memory/allocation.hpp"
    31 #include "memory/allocation.hpp"
    31 #include "utilities/macros.hpp"
    32 #include "utilities/macros.hpp"
    32 
    33 
    33 class LineBuffer;
    34 class LineBuffer;
   125   double _cur_derived_pointer_table_update_time_ms;
   126   double _cur_derived_pointer_table_update_time_ms;
   126 
   127 
   127   double _cur_clear_ct_time_ms;
   128   double _cur_clear_ct_time_ms;
   128   double _cur_expand_heap_time_ms;
   129   double _cur_expand_heap_time_ms;
   129   double _cur_ref_proc_time_ms;
   130   double _cur_ref_proc_time_ms;
   130   double _cur_ref_enq_time_ms;
       
   131 
       
   132   double _cur_weak_ref_proc_time_ms;
       
   133 
   131 
   134   double _cur_collection_start_sec;
   132   double _cur_collection_start_sec;
   135   double _root_region_scan_wait_time_ms;
   133   double _root_region_scan_wait_time_ms;
   136 
   134 
   137   double _external_accounted_time_ms;
   135   double _external_accounted_time_ms;
   161 
   159 
   162   double _cur_verify_before_time_ms;
   160   double _cur_verify_before_time_ms;
   163   double _cur_verify_after_time_ms;
   161   double _cur_verify_after_time_ms;
   164 
   162 
   165   ReferenceProcessorPhaseTimes _ref_phase_times;
   163   ReferenceProcessorPhaseTimes _ref_phase_times;
       
   164   WeakProcessorPhaseTimes _weak_phase_times;
   166 
   165 
   167   double worker_time(GCParPhases phase, uint worker);
   166   double worker_time(GCParPhases phase, uint worker);
   168   void note_gc_end();
   167   void note_gc_end();
   169   void reset();
   168   void reset();
   170 
   169 
   255 
   254 
   256   void record_ref_proc_time(double ms) {
   255   void record_ref_proc_time(double ms) {
   257     _cur_ref_proc_time_ms = ms;
   256     _cur_ref_proc_time_ms = ms;
   258   }
   257   }
   259 
   258 
   260   void record_weak_ref_proc_time(double ms) {
       
   261     _cur_weak_ref_proc_time_ms = ms;
       
   262   }
       
   263 
       
   264   void record_root_region_scan_wait_time(double time_ms) {
   259   void record_root_region_scan_wait_time(double time_ms) {
   265     _root_region_scan_wait_time_ms = time_ms;
   260     _root_region_scan_wait_time_ms = time_ms;
   266   }
   261   }
   267 
   262 
   268   void record_total_free_cset_time_ms(double time_ms) {
   263   void record_total_free_cset_time_ms(double time_ms) {
   363   double fast_reclaim_humongous_time_ms() {
   358   double fast_reclaim_humongous_time_ms() {
   364     return _cur_fast_reclaim_humongous_time_ms;
   359     return _cur_fast_reclaim_humongous_time_ms;
   365   }
   360   }
   366 
   361 
   367   ReferenceProcessorPhaseTimes* ref_phase_times() { return &_ref_phase_times; }
   362   ReferenceProcessorPhaseTimes* ref_phase_times() { return &_ref_phase_times; }
       
   363 
       
   364   WeakProcessorPhaseTimes* weak_phase_times() { return &_weak_phase_times; }
   368 };
   365 };
   369 
   366 
   370 class G1EvacPhaseWithTrimTimeTracker : public StackObj {
   367 class G1EvacPhaseWithTrimTimeTracker : public StackObj {
   371   G1ParScanThreadState* _pss;
   368   G1ParScanThreadState* _pss;
   372   Ticks _start;
   369   Ticks _start;