RFR: 8356455: ZGC: Replace ZIntrusiveRBTree with IntrusiveRBTree [v2]
Axel Boldt-Christmas
aboldtch at openjdk.org
Thu May 8 13:01:07 UTC 2025
> [JDK-8350441](https://bugs.openjdk.org/browse/JDK-8350441) was implemented before IntrusiveRBTree was introduced, and as such implemented its own intrusive red-black tree. Now that a shared data structure implementation is available, use that instead.
>
> The switch is straight forward, and the O(1) left and right most node lookup which ZIntrusiveRBTree implements that IntrusiveRBTree does not is trivial to implement on top of the tree.
>
> Initial performance evaluation shows no difference between the two implementations. And the functional testing passes.
>
> Tested Oracle Supported platforms, Oracle tier1-8 ZGC testing tasks.
Axel Boldt-Christmas has updated the pull request incrementally with two additional commits since the last revision:
- Use private inheritance
- Separate tree logic to own class
-------------
Changes:
- all: https://git.openjdk.org/jdk/pull/25112/files
- new: https://git.openjdk.org/jdk/pull/25112/files/4bc5cf09..3c3e22bf
Webrevs:
- full: https://webrevs.openjdk.org/?repo=jdk&pr=25112&range=01
- incr: https://webrevs.openjdk.org/?repo=jdk&pr=25112&range=00-01
Stats: 253 lines in 2 files changed: 122 ins; 93 del; 38 mod
Patch: https://git.openjdk.org/jdk/pull/25112.diff
Fetch: git fetch https://git.openjdk.org/jdk.git pull/25112/head:pull/25112
PR: https://git.openjdk.org/jdk/pull/25112
More information about the hotspot-gc-dev
mailing list