RFR (S): Full GC mark without liveness stats

Roman Kennke rkennke at redhat.com
Wed Nov 2 11:09:16 UTC 2016


Hi Aleksey,

you are correct, we don't need liveness counting during full-gc.

I'm not sure I like all the bools all over the place. But I don't see a
much better way for it either. :-)

10% makes me wonder if we can somehow speed up liveness counting. E.g.
we don't strictly need the liveness counters to be 100% correct. A good
estimate should be good enough. Dunno if that could help us?

I already made it use thread-local liveness arrays to avoid threads
stomping over each others threads... is there anything else we can do?

Cheers,
Roman

Am Dienstag, den 01.11.2016, 22:35 +0100 schrieb Aleksey Shipilev:
> Hi,
> 
> I am not entirely sure this is a correct assumption, but if I read
> the
> code right, we don't need region liveness stats when doing mark for
> Full
> GC? Because we compact everything anyway?
> 
> If we hack this away:
>  http://cr.openjdk.java.net/~shade/shenandoah/fullgc-no-live-stats/we
> brev.01/
> 
> ...then there is a repeatable +10% improvement for mark phase:
> 
> # Before:
> Full GC Times          =  94.29 s (avg =  8571.54 ms)
>   Mark                 =  34.92 s (avg =  3174.47 ms)
>     Drain Queues       =  34.90 s (avg =  3172.31 ms)
>     Weak References    =   0.00 s (avg =     0.33 ms)
>     Class Unloading    =   0.01 s (avg =     0.80 ms)
>   Calculate Addresses  =  12.66 s (avg =  1150.98 ms)
>   Adjust Pointers      =  24.92 s (avg =  2265.87 ms)
>   Copy Objects         =  21.61 s (avg =  1964.49 ms)
> 
> # After:
> Full GC Times          =  90.51 s (avg =  8228.46 ms)
>   Mark                 =  31.17 s (avg =  2833.41 ms)
>     Drain Queues       =  31.14 s (avg =  2831.36 ms)
>     Weak References    =   0.00 s (avg =     0.24 ms)
>     Class Unloading    =   0.01 s (avg =     0.77 ms)
>   Calculate Addresses  =  12.59 s (avg =  1144.15 ms)
>   Adjust Pointers      =  25.01 s (avg =  2273.75 ms)
>   Copy Objects         =  21.58 s (avg =  1961.43 ms)
> 
> Thanks,
> -Aleksey
> 


More information about the shenandoah-dev mailing list