RFR: Use PLAB for evacuations instead of TLAB

Aleksey Shipilev shade at redhat.com
Thu May 10 15:48:49 UTC 2018


On 05/10/2018 05:43 PM, Roman Kennke wrote:
> Am 10.05.2018 um 16:28 schrieb Aleksey Shipilev:
>> *) Seems that plab.* files exist only starting JDK 9. This would pose some problems with
>> backporting, but it looks resolvable.
> 
> We could put the plab.* stuff under shenandoah/

Yeah. I would probably do that for sh/jdk8 backports.

>> *) What is the reason for moving this block out of mark-compact?
>>
>>  229     if (UseTLAB) {
>>  230       ShenandoahGCPhase phase(ShenandoahPhaseTimings::full_gc_resize_tlabs);
>>  231       heap->resize_all_tlabs();
>>  232     }
> 
> resize_all_tlabs() is protected in CH. The alternative would be to
> override it and make it public. Whatever you prefer?

Ah, OK. No, moving the code is fine then.

> Diff:
> http://cr.openjdk.java.net/~rkennke/plab-gclab/webrev.03.diff/
> Full:
> http://cr.openjdk.java.net/~rkennke/plab-gclab/webrev.03/

Looks good.

-Aleksey



More information about the shenandoah-dev mailing list