< prev index next >

src/hotspot/share/gc/g1/g1GCPhaseTimes.hpp

Print this page
rev 53921 : imported patch 8219369-add-named-constants-for-extrootscan
rev 53922 : [mq]: 8219369-kbarrett-review


  30 #include "jfr/jfrEvents.hpp"
  31 #include "logging/logLevel.hpp"
  32 #include "memory/allocation.hpp"
  33 #include "utilities/macros.hpp"
  34 
  35 class LineBuffer;
  36 class G1ParScanThreadState;
  37 class STWGCTimer;
  38 
  39 template <class T> class WorkerDataArray;
  40 
  41 class G1GCPhaseTimes : public CHeapObj<mtGC> {
  42   uint _max_gc_threads;
  43   jlong _gc_start_counter;
  44   double _gc_pause_time_ms;
  45 
  46  public:
  47   enum GCParPhases {
  48     GCWorkerStart,
  49     ExtRootScan,
  50     ExtRootScanSubPhasesStart,
  51     ThreadRoots = ExtRootScanSubPhasesStart,
  52     UniverseRoots,
  53     JNIRoots,
  54     ObjectSynchronizerRoots,
  55     ManagementRoots,
  56     SystemDictionaryRoots,
  57     CLDGRoots,
  58     JVMTIRoots,
  59 #if INCLUDE_AOT
  60     AOTCodeRoots,
  61 #endif
  62     CMRefRoots,
  63     WaitForStrongCLD,
  64     WeakCLDRoots,
  65     SATBFiltering,
  66     ExtRootScanSubPhasesEnd = SATBFiltering,
  67     UpdateRS,
  68     ScanHCC,
  69     ScanRS,
  70     OptScanRS,
  71     CodeRoots,
  72     ObjCopy,
  73     OptObjCopy,
  74     Termination,
  75     Other,
  76     GCWorkerTotal,
  77     GCWorkerEnd,
  78     StringDedupQueueFixup,
  79     StringDedupTableFixup,
  80     RedirtyCards,
  81     YoungFreeCSet,
  82     NonYoungFreeCSet,
  83     GCParPhasesSentinel
  84   };



  85 
  86   enum GCScanRSWorkItems {
  87     ScanRSScannedCards,
  88     ScanRSClaimedCards,
  89     ScanRSSkippedCards
  90   };
  91 
  92   enum GCUpdateRSWorkItems {
  93     UpdateRSProcessedBuffers,
  94     UpdateRSScannedCards,
  95     UpdateRSSkippedCards
  96   };
  97 
  98   enum GCObjCopyWorkItems {
  99     ObjCopyLABWaste,
 100     ObjCopyLABUndoWaste
 101   };
 102 
 103   enum GCOptCSetWorkItems {
 104       OptCSetScannedCards,




  30 #include "jfr/jfrEvents.hpp"
  31 #include "logging/logLevel.hpp"
  32 #include "memory/allocation.hpp"
  33 #include "utilities/macros.hpp"
  34 
  35 class LineBuffer;
  36 class G1ParScanThreadState;
  37 class STWGCTimer;
  38 
  39 template <class T> class WorkerDataArray;
  40 
  41 class G1GCPhaseTimes : public CHeapObj<mtGC> {
  42   uint _max_gc_threads;
  43   jlong _gc_start_counter;
  44   double _gc_pause_time_ms;
  45 
  46  public:
  47   enum GCParPhases {
  48     GCWorkerStart,
  49     ExtRootScan,
  50     ThreadRoots,

  51     UniverseRoots,
  52     JNIRoots,
  53     ObjectSynchronizerRoots,
  54     ManagementRoots,
  55     SystemDictionaryRoots,
  56     CLDGRoots,
  57     JVMTIRoots,
  58 #if INCLUDE_AOT
  59     AOTCodeRoots,
  60 #endif
  61     CMRefRoots,
  62     WaitForStrongCLD,
  63     WeakCLDRoots,
  64     SATBFiltering,

  65     UpdateRS,
  66     ScanHCC,
  67     ScanRS,
  68     OptScanRS,
  69     CodeRoots,
  70     ObjCopy,
  71     OptObjCopy,
  72     Termination,
  73     Other,
  74     GCWorkerTotal,
  75     GCWorkerEnd,
  76     StringDedupQueueFixup,
  77     StringDedupTableFixup,
  78     RedirtyCards,
  79     YoungFreeCSet,
  80     NonYoungFreeCSet,
  81     GCParPhasesSentinel
  82   };
  83 
  84   static const GCParPhases ExtRootScanSubPhasesStart = ThreadRoots;
  85   static const GCParPhases ExtRootScanSubPhasesEnd = SATBFiltering;
  86 
  87   enum GCScanRSWorkItems {
  88     ScanRSScannedCards,
  89     ScanRSClaimedCards,
  90     ScanRSSkippedCards
  91   };
  92 
  93   enum GCUpdateRSWorkItems {
  94     UpdateRSProcessedBuffers,
  95     UpdateRSScannedCards,
  96     UpdateRSSkippedCards
  97   };
  98 
  99   enum GCObjCopyWorkItems {
 100     ObjCopyLABWaste,
 101     ObjCopyLABUndoWaste
 102   };
 103 
 104   enum GCOptCSetWorkItems {
 105       OptCSetScannedCards,


< prev index next >