RFR: 8356455: ZGC: Replace ZIntrusiveRBTree with IntrusiveRBTree

Axel Boldt-Christmas aboldtch at openjdk.org
Thu May 8 05:25:01 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.

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

Commit messages:
 - 8356455: ZGC: Replace ZIntrusiveRBTree with IntrusiveRBTree

Changes: https://git.openjdk.org/jdk/pull/25112/files
  Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=25112&range=00
  Issue: https://bugs.openjdk.org/browse/JDK-8356455
  Stats: 2158 lines in 5 files changed: 97 ins; 2026 del; 35 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