RFR: Account trashed regions from coalesced CM-with-UR
Aleksey Shipilev
shade at redhat.com
Mon Dec 4 10:32:17 UTC 2017
http://cr.openjdk.java.net/~shade/shenandoah/heuristics-coalesced-trash/webrev.01/
Adaptive CSet selection runs into trouble with coalesced CM-with-UR: final mark would trash the cset
regions from the previous cycle, but that would not get accounted for current CSet sizing. In
extreme cases, it would just make empty CSet, relying solely on immediate garbage:
[10.687s][info][gc ] GC(9) Pause Init Mark 1.173ms
[10.919s][info][gc ] Cancelling concurrent GC: Allocation Failure
[10.922s][info][gc ] GC(9) Concurrent marking 1867M->1985M(2048M) 234.823ms
[10.922s][info][gc,ergo] GC(9) Adjusting free threshold to: 55% (1126M)
[11.011s][info][gc,ergo] GC(9) Adaptive CSet selection: free target = 1228M, actual free = 0M; min
cset = 0M, max cset = 0M
[11.011s][info][gc,ergo] GC(9) Total Garbage: 355M
[11.011s][info][gc,ergo] GC(9) Immediate Garbage: 0M, 0 regions (0% of total)
[11.011s][info][gc,ergo] GC(9) Garbage to be collected: 0M (0% of total), 0 regions
[11.011s][info][gc,ergo] GC(9) Live objects to be evacuated: 0M
[11.011s][info][gc,ergo] GC(9) Live/garbage ratio in collected regions: 0%
[11.011s][info][gc,ergo] GC(9) Free: 0M, 0 regions (0% of total)
[11.011s][info][gc ] GC(9) Pause Final Mark 88.866ms
[11.011s][info][gc ] GC(9) Concurrent cleanup 1985M->1075M(2048M) 0.183ms
[11.012s][info][gc ] GC(9) Concurrent cleanup 1075M->1075M(2048M) 0.719ms
Testing: hotspot_gc_shenandoah
Thanks,
-Aleksey
More information about the shenandoah-dev
mailing list