RFR: 8376839: GenShen: Improve performance of evacuations into the old generation [v3]

William Kemper wkemper at openjdk.org
Thu Feb 5 17:34:20 UTC 2026


> When GenShen evacuates an object into the old generation, it also dirties the card for that object and updates the offsets of the first and last object in the card. In many cases, the same card may dirtied repeatedly and the object starts updated unnecessarily. We can reduce the total amount of work by moving these operations into a separate phase of the cycle which allows them to be batched.

William Kemper has updated the pull request incrementally with three additional commits since the last revision:

 - Merge branch 'more-precise-rset-rebuild' into dirty-all-the-cards
 - Clear card table for young regions when full gc rebuilds remembered set
 - Dirty all the cards en masse
   
   This might be faster if less precise.

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

Changes:
  - all: https://git.openjdk.org/jdk/pull/29511/files
  - new: https://git.openjdk.org/jdk/pull/29511/files/08bfab8b..f905138c

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

  Stats: 69 lines in 1 file changed: 27 ins; 32 del; 10 mod
  Patch: https://git.openjdk.org/jdk/pull/29511.diff
  Fetch: git fetch https://git.openjdk.org/jdk.git pull/29511/head:pull/29511

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


More information about the shenandoah-dev mailing list