-
Enhancement
-
Resolution: Fixed
-
P4
-
15, 17, 18
-
b13
Currently G1 clears the whole (next) mark bitmaps of the regions of the entire (committed) heap.
This is unnecessary, only bitmaps of regions that were dirtied need clearing. SinceJDK-8197850 we track how much live data has been encountered during mark for every region, corresponding to the live objects we set a mark between bottom and ntams.
I.e. first, we only need to clear between [bottom, ntams[, and second only clear bitmaps which regions had at least one bit set (i.e. have some live data).
This is also a very interesting optimization forJDK-8240556
This is unnecessary, only bitmaps of regions that were dirtied need clearing. Since
I.e. first, we only need to clear between [bottom, ntams[, and second only clear bitmaps which regions had at least one bit set (i.e. have some live data).
This is also a very interesting optimization for
- relates to
-
JDK-8197850 Calculate liveness in regions during marking
- Resolved
-
JDK-8240556 Abort concurrent mark after effective eager reclamation of humongous objects
- Resolved