RFR (S) 8244327: Shenandoah: GC workers should always get the largest GCLABs

Roman Kennke rkennke at redhat.com
Mon May 4 19:29:48 UTC 2020

>> I am not so sure. Here on my machine it's using 16 GC workers, which
>> means it would grab 16 regions, 1 region each, (possibly 32MB each
>> region when running large heaps), for GCLAB right away? 
> Every GC worker would get a region-size GCLAB, yes. Which in your example would amount to 16*32=512M
> of space allocated. The tidbit is, in all workloads I tried, that happens anyway. Except that with
> adaptive sizing we have the awkward phase during the beginning of the evacuation (actually, even in
> final mark, when roots are pre-evacuated!), where workers come for GCLABs over and over again until
> GCLAB sizes balloon up.

Yes, I have seen that too, and it seems pointless exercise.

>> Would it even nearly fill up all those regions? Maybe this should be put in a heuristic that
>> counts in cset size and num-gc-threads?
> Yeah, I can see if we can size it up right after cset selection?

Yeah, that sounds useful.


More information about the hotspot-gc-dev mailing list