RFR: 8302709: Remove explicit remembered set verification in G1
Albert Mingkun Yang
ayang at openjdk.org
Fri Feb 17 11:23:50 UTC 2023
On Fri, 17 Feb 2023 09:40:31 GMT, Thomas Schatzl <tschatzl at openjdk.org> wrote:
> Hi all,
>
> can I have reviews for this imo trivial removal of unnecessary functionality?
>
> So G1 allows explicit remembered set verification via -XX:+VerifyRememberedSets without verifying anything else.
>
> This functionality can be dropped because
> - verification via VerifyBefore/During/AfterGC does the same verification as well
> - the far longest part of VerifyBefore/During/AfterGC is remembered set/object verification (you can't really do remembered set verification without object verification)
> - since you can't really do remembered set verification without object verification, this is just duplicate work (and code)
> - for VerifyBefore/During/AfterGC we have quite extensive ways to do that verification only in certain situations, so this extra remembered set verification is mostly just in the way
> - explicit remembered set verification is single threaded, while others is multi-threaded, so much slower then the latter too
> - the split between remembered set/object verification forces some awkward code sharing that makes the verification code somewhat confusing
>
> Given all that I suggest to remove the explicit remembered set verification there.
>
> Note that this change does not clean up the mentioned code sharing, I'll do this in a follow up.
>
> This change depends on PR#12511.
>
> Testing: local compilation, gha
Marked as reviewed by ayang (Reviewer).
-------------
PR: https://git.openjdk.org/jdk/pull/12611
More information about the hotspot-gc-dev
mailing list