RFR: 8318057: GenShen: investigate small refactor of remset swap code [v2]
Y. Srinivas Ramakrishna
ysr at openjdk.org
Mon Oct 30 20:56:59 UTC 2023
> Some closures were being unnecessarily applied to free regions rather than just to allocated old and young regions. Restrict the closure application to old and young regions as appropriate, eliminating extra generation affiliation checks in some closures. Also fixed a slightly incorrect documentation comment.
>
> **Update:** I am converting this back to a draft until some further improvements are attempted, and more performance data gathered. Will reopen when done.
>
> **Testing:**
>
> - [x] jtreg and stress tests in test pipeline helper
> - [x] locally tested with jtreg hotsot_gc tests and with specjbb with and without heap verification
> - [x] no performance improvements noted; gathering more data, see ticket for latest updates
Y. Srinivas Ramakrishna has updated the pull request with a new target base due to a merge or a rebase. The incremental webrev excludes the unrelated changes brought in by the merge/rebase. The pull request contains 11 additional commits since the last revision:
- Slight improvement on code in last commit
- A paranoid, but useful assert on sizes of types.
- Fix Windows build warning.
- Fix off by one violating card table API precondition.
- Move implementations into .cpp from .hpp.
Fix an indexing error.
- Merge branch 'master' into swap_rs
- Avoid division in card table merge/clear.
- Merge branch 'master' into swap_rs
- fix for comp error (wrong variable name).
- Avoid including free young regions in young gen heap region
iteration.
- ... and 1 more: https://git.openjdk.org/shenandoah/compare/300d4969...6f241a48
-------------
Changes:
- all: https://git.openjdk.org/shenandoah/pull/342/files
- new: https://git.openjdk.org/shenandoah/pull/342/files/7d465163..6f241a48
Webrevs:
- full: https://webrevs.openjdk.org/?repo=shenandoah&pr=342&range=01
- incr: https://webrevs.openjdk.org/?repo=shenandoah&pr=342&range=00-01
Stats: 469 lines in 22 files changed: 335 ins; 32 del; 102 mod
Patch: https://git.openjdk.org/shenandoah/pull/342.diff
Fetch: git fetch https://git.openjdk.org/shenandoah.git pull/342/head:pull/342
PR: https://git.openjdk.org/shenandoah/pull/342
More information about the shenandoah-dev
mailing list