RFR: 8201318: Introduce GCThreadLocalData to abstract GC-specific data belonging to a thread

Per Liden per.liden at oracle.com
Tue Apr 10 14:45:57 UTC 2018


Thanks for verifying Martin!

/Per

On 04/10/2018 04:42 PM, Doerr, Martin wrote:
> Hi Per,
> 
> builds on PPC64 and s390 after applying 8201316 and 8201318.
> 
> Thanks and best regards,
> Martin
> 
> 
> -----Original Message-----
> From: Per Liden [mailto:per.liden at oracle.com]
> Sent: Dienstag, 10. April 2018 14:51
> To: Roman Kennke <rkennke at redhat.com>; Doerr, Martin <martin.doerr at sap.com>; hotspot-dev at openjdk.java.net
> Subject: Re: RFR: 8201318: Introduce GCThreadLocalData to abstract GC-specific data belonging to a thread
> 
> A couple of commits were pushed, which causes conflicts with this
> change, so here's a rebased version:
> 
> http://cr.openjdk.java.net/~pliden/8201318/webrev.1
> 
> cheers,
> Per
> 
> On 04/10/2018 02:26 PM, Per Liden wrote:
>> Hi Martin & Roman,
>>
>> I just want to highlight that this change touches platform code for
>> s390/ppc and aarch64, so please verify that it doesn't break your builds.
>>
>> cheers,
>> Per
>>
>> On 04/10/2018 01:42 PM, Per Liden wrote:
>>> 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