RFC: TLAB allocation and garbage-first policy

Zhengyu Gu zgu at redhat.com
Wed Sep 20 12:43:16 UTC 2017


>>
>> Should this region be added back to free set after GC and be reused?
> 
> In theory, yes -- and this is why it does not crash and burn immediately. In practice, it such
> regions seem to get retired due to the same race: unsafe_tlab_alloc says we can fit the TLAB in
> region #N, we blink, we try to fit the TLAB in region #N+1, which happens to be half-full, we fail,
> we retire the region.
> 
Yes, I see this problem also, but I think it is TLAB issue. I think TLAB 
allocation should accept a rang of sizes, instead of fixed size.

-Zhengyu

> Compacting to get more fully-empty regions reduces the probability of that happening, because it
> reduces the number of half-full regions after the cycle.
> 
> -Aleksey
> 


More information about the shenandoah-dev mailing list