RFR: 8322383: G1: Only preserve marks on objects that are actually moved [v2]

Roman Kennke rkennke at openjdk.org
Mon Jan 8 20:42:34 UTC 2024


> The G1 full-GC preserves marks during marking, for all live objects in compaction region. However, not all live objects do actually move. In particular, the start of a compaction chain may have a sediment of all-live objects which would not move, and thus don't need to have their marks preserved.
> The problem can easily be solved by preserving marks during forwarding. That also seems a more natural place to do that.
> 
> Testing:
>  - [x] hotspot_gc
>  - [x] tier1
>  - [ ] tier2

Roman Kennke has updated the pull request incrementally with one additional commit since the last revision:

  Move assert to GC-specific code

-------------

Changes:
  - all: https://git.openjdk.org/jdk/pull/17159/files
  - new: https://git.openjdk.org/jdk/pull/17159/files/51e89e9c..32625570

Webrevs:
 - full: https://webrevs.openjdk.org/?repo=jdk&pr=17159&range=01
 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=17159&range=00-01

  Stats: 2 lines in 2 files changed: 1 ins; 1 del; 0 mod
  Patch: https://git.openjdk.org/jdk/pull/17159.diff
  Fetch: git fetch https://git.openjdk.org/jdk.git pull/17159/head:pull/17159

PR: https://git.openjdk.org/jdk/pull/17159


More information about the hotspot-gc-dev mailing list