RFR: Pacer should account allocation waste and unsuccessful pacing in the budget
Aleksey Shipilev
shade at redhat.com
Thu Apr 5 13:50:10 UTC 2018
http://cr.openjdk.java.net/~shade/shenandoah/pacing-waste/webrev.01/
I have been testing the intended property that with large enough pacing delay we would Degenerate
and Full GC very rarely. We are almost there, if we fix these two issues:
a) Allocations can waste some space, either due to early retirement of the region, or due to
humongous region leftovers. We need to tell Pacer that we have wasted that space, otherwise it would
overestimate the space available.
b) Unsuccessful pacing allocates anyway, but it does not claim the budget! Which means, the
unsuccessful pacing comes completely under the radar, while we should really claim the budget
forcefully, so subsequent allocations wait for GC to catch up too.
Both these things require pacing budget to be signed, therefore we switch to intptr_t.
Testing: hotspot_gc_shenandoah, LRUFragger with max-pacing-delay=10s and 85G/100G LDS runs w/o degen
Thanks,
-Aleksey
More information about the shenandoah-dev
mailing list