src/share/vm/gc_implementation/g1/g1GCPhaseTimes.hpp
Print this page
rev 6327 : 8019342: G1: High "Other" time most likely due to card redirtying
Summary: Parallelize card redirtying to decrease the time it takes.
Reviewed-by: brutisso
*** 149,158 ****
--- 149,160 ----
double _root_region_scan_wait_time_ms;
double _recorded_young_cset_choice_time_ms;
double _recorded_non_young_cset_choice_time_ms;
+ WorkerDataArray<double> _last_redirty_logged_cards_time_ms;
+ WorkerDataArray<size_t> _last_redirty_logged_cards_processed_cards;
double _recorded_redirty_logged_cards_time_ms;
double _recorded_young_free_cset_time_ms;
double _recorded_non_young_free_cset_time_ms;
*** 291,300 ****
--- 293,310 ----
void record_non_young_cset_choice_time_ms(double time_ms) {
_recorded_non_young_cset_choice_time_ms = time_ms;
}
+ void record_redirty_logged_cards_time_ms(uint worker_i, double time_ms) {
+ _last_redirty_logged_cards_time_ms.set(worker_i, time_ms);
+ }
+
+ void record_redirty_logged_cards_processed_cards(uint worker_i, size_t processed_buffers) {
+ _last_redirty_logged_cards_processed_cards.set(worker_i, processed_buffers);
+ }
+
void record_redirty_logged_cards_time_ms(double time_ms) {
_recorded_redirty_logged_cards_time_ms = time_ms;
}
void record_cur_collection_start_sec(double time_ms) {