RFR: 8201318: Introduce GCThreadLocalData to abstract GC-specific data belonging to a thread
Per Liden
per.liden at oracle.com
Tue Apr 10 11:42:55 UTC 2018
As part of the effort to make GCs more pluggable, the G1-specific data
in JavaThread should be moved out into a more appropriate abstraction.
This is the second step (building on JDK-8201316), which introduces
GCThreadLocalData, an opaque data area in Thread. Each GC is free to
decide the internal structure and contents of this area.
With this in place, we can remove G1's thread-local SATB queue and dirty
card queue from JavaThread and instead let G1 use the data area provided
by GCThreadLocalData to store these.
Other GCs that wants to store pre-thread information (e.g. ZGC and
Shenandoah) are encouraged to look at what G1 is doing here and use that
as a template/example.
Bug: https://bugs.openjdk.java.net/browse/JDK-8201318
Webrev: http://cr.openjdk.java.net/~pliden/8201318/webrev.0/
Testing: hs-tier{1-3}
/Per
More information about the hotspot-dev
mailing list