JDK-8255019 : Shenandoah: Split STW and concurrent mark into separate classes
  • Type: Enhancement
  • Component: hotspot
  • Sub-Component: gc
  • Affected Version: 16
  • Priority: P4
  • Status: Resolved
  • Resolution: Fixed
  • Submitted: 2020-10-19
  • Updated: 2021-01-26
  • Resolved: 2021-01-14
The Version table provides details related to the release that this issue/RFE will be addressed.

Unresolved : Release in which this issue/RFE will be addressed.
Resolved: Release in which this issue/RFE has been resolved.
Fixed : Release in which this issue/RFE has been fixed. The release containing this fix may be available for download as an Early Access Release or a General Availability Release.

To download the current JDK release, click here.
JDK 17
17 b06Fixed
Related Reports
Relates :  
Relates :  
Description
Shenandoah shares code for STW and concurrent mark to reduce duplication. But this approach has a few disadvantages:

1) Code has to special case for STW and concurrent mark.
2) STW mark does not need to rendezvous workers between root mark and the rest of mark
3) STW mark does not need to activate SATB barrier and drain SATB buffers.
4) STW mark does not need to remark some of roots.

We can refactor mark code that encapsulates shared code into base class and splits STW mark and concurrent mark into separate classes.  
Comments
Changeset: da6bcf96 Author: Zhengyu Gu <zgu@openjdk.org> Date: 2021-01-14 17:42:52 +0000 URL: https://git.openjdk.java.net/jdk/commit/da6bcf96
14-01-2021