-
Enhancement
-
Resolution: Fixed
-
P4
-
12, 13
-
b04
To avoid scanning the same card multiple times, G1 marks the already scanned cards in card table.
One alternative is to for all regions collect the PRTs, and every thread claim part of that region's entire range of cards, building a small local bitmap of cards to scan using the PRTs for that region.
This ensures that every card is only scanned once during Scan RS, avoids the need for all threads to iterate over all cards of a given region at the cost of small pre-initialization costs.
- blocks
-
JDK-8224759 Investigate block splitting during heap root scan
- Open
-
JDK-8224741 Optimize the scan area during the Scan Heap Roots phase
- Resolved
-
JDK-8224840 Optimize G1CardTable::mark_region_table()
- Closed
- duplicates
-
JDK-8218387 JFR TestG1ParallelPhases.java failed
- Closed
-
JDK-8142950 Refactor G1 YC preparation code
- Closed
- is blocked by
-
JDK-8224160 Move G1RemSetScanClosure into g1RemSet.cpp file
- Resolved
- relates to
-
JDK-8278824 Uneven work distribution when scanning heap roots in G1
- Resolved
-
JDK-8218387 JFR TestG1ParallelPhases.java failed
- Closed
-
JDK-8225406 Account for hot card cache cards in distributing heap root scan times
- Closed
-
JDK-8226232 Move merge heap roots code out from G1RemSetScanState
- Resolved
-
JDK-8226913 Scale cards per chunk used during heap root scanning with region size
- Resolved
-
JDK-8227090 G1 does not account the OptMergeRS in cost per card calculation
- Resolved
-
JDK-8017163 G1: Refactor remembered sets
- Resolved
-
JDK-8200545 Improve filter for enqueued deferred cards
- Resolved
-
JDK-8227084 Add timing information for merge heap root preparation
- Resolved
-
JDK-8227089 Add timing information for merging humongous remembered sets
- Resolved
-
JDK-8227739 Merge cost predictions for scanning cards and log buffer entries
- Resolved
-
JDK-8231553 Deprecate unused G1RSetScanBlockSize command line option
- Resolved
-
JDK-8304055 G1: Remove OldGCAllocRegion::release
- Resolved