Relates :
|
Since moving reclaim regions into the Remark phase there are concerns of making it too long. Measurements show that for ~3200 regions (100GB heap, 32GB regions) the Remset Tracking Update Before Rebuild phase takes around one ms. remark-parallel-base.log:[113.354s][debug][gc,phases] GC(10) Update Remembered Set Tracking Before Rebuild 0.965ms remark-parallel-base.log:[147.049s][debug][gc,phases] GC(15) Update Remembered Set Tracking Before Rebuild 0.964ms remark-parallel-base.log:[198.223s][debug][gc,phases] GC(19) Update Remembered Set Tracking Before Rebuild 0.969ms remark-parallel-base.log:[237.106s][debug][gc,phases] GC(24) Update Remembered Set Tracking Before Rebuild 1.047ms remark-parallel-base.log:[278.606s][debug][gc,phases] GC(29) Update Remembered Set Tracking Before Rebuild 1.057ms remark-parallel-base.log:[312.429s][debug][gc,phases] GC(33) Update Remembered Set Tracking Before Rebuild 0.663ms On very large heaps this increases linearly, so it may be useful to parallelize this phase with a reasonable parallelization factor, like a few hundred regions per thread started