60 ScanRS,
61 CodeRoots,
62 #if INCLUDE_AOT
63 AOTCodeRoots,
64 #endif
65 ObjCopy,
66 Termination,
67 Other,
68 GCWorkerTotal,
69 GCWorkerEnd,
70 StringDedupQueueFixup,
71 StringDedupTableFixup,
72 RedirtyCards,
73 PreserveCMReferents,
74 YoungFreeCSet,
75 NonYoungFreeCSet,
76 GCParPhasesSentinel
77 };
78
79 enum GCScanRSWorkItems {
80 ScannedCards,
81 ClaimedCards,
82 SkippedCards
83 };
84
85 private:
86 // Markers for grouping the phases in the GCPhases enum above
87 static const int GCMainParPhasesLast = GCWorkerEnd;
88 static const int StringDedupPhasesFirst = StringDedupQueueFixup;
89 static const int StringDedupPhasesLast = StringDedupTableFixup;
90
91 WorkerDataArray<double>* _gc_par_phases[GCParPhasesSentinel];
92
93 WorkerDataArray<size_t>* _update_rs_processed_buffers;
94
95 WorkerDataArray<size_t>* _scan_rs_scanned_cards;
96 WorkerDataArray<size_t>* _scan_rs_claimed_cards;
97 WorkerDataArray<size_t>* _scan_rs_skipped_cards;
98
99 WorkerDataArray<size_t>* _termination_attempts;
100
101 WorkerDataArray<size_t>* _redirtied_cards;
102
103 double _cur_collection_par_time_ms;
104 double _cur_collection_code_root_fixup_time_ms;
105 double _cur_strong_code_root_purge_time_ms;
106
107 double _cur_evac_fail_recalc_used;
108 double _cur_evac_fail_remove_self_forwards;
109
110 double _cur_string_dedup_fixup_time_ms;
111
112 double _cur_prepare_tlab_time_ms;
113 double _cur_resize_tlab_time_ms;
|
60 ScanRS,
61 CodeRoots,
62 #if INCLUDE_AOT
63 AOTCodeRoots,
64 #endif
65 ObjCopy,
66 Termination,
67 Other,
68 GCWorkerTotal,
69 GCWorkerEnd,
70 StringDedupQueueFixup,
71 StringDedupTableFixup,
72 RedirtyCards,
73 PreserveCMReferents,
74 YoungFreeCSet,
75 NonYoungFreeCSet,
76 GCParPhasesSentinel
77 };
78
79 enum GCScanRSWorkItems {
80 ScanRSScannedCards,
81 ScanRSClaimedCards,
82 ScanRSSkippedCards
83 };
84
85 enum GCUpdateRSWorkItems {
86 UpdateRSProcessedBuffers,
87 UpdateRSScannedCards,
88 UpdateRSSkippedCards
89 };
90
91 private:
92 // Markers for grouping the phases in the GCPhases enum above
93 static const int GCMainParPhasesLast = GCWorkerEnd;
94 static const int StringDedupPhasesFirst = StringDedupQueueFixup;
95 static const int StringDedupPhasesLast = StringDedupTableFixup;
96
97 WorkerDataArray<double>* _gc_par_phases[GCParPhasesSentinel];
98
99 WorkerDataArray<size_t>* _update_rs_processed_buffers;
100 WorkerDataArray<size_t>* _update_rs_scanned_cards;
101 WorkerDataArray<size_t>* _update_rs_skipped_cards;
102
103 WorkerDataArray<size_t>* _scan_rs_scanned_cards;
104 WorkerDataArray<size_t>* _scan_rs_claimed_cards;
105 WorkerDataArray<size_t>* _scan_rs_skipped_cards;
106
107 WorkerDataArray<size_t>* _termination_attempts;
108
109 WorkerDataArray<size_t>* _redirtied_cards;
110
111 double _cur_collection_par_time_ms;
112 double _cur_collection_code_root_fixup_time_ms;
113 double _cur_strong_code_root_purge_time_ms;
114
115 double _cur_evac_fail_recalc_used;
116 double _cur_evac_fail_remove_self_forwards;
117
118 double _cur_string_dedup_fixup_time_ms;
119
120 double _cur_prepare_tlab_time_ms;
121 double _cur_resize_tlab_time_ms;
|