RFR: Grand heuristics and tests rehash
Aleksey Shipilev
shade at redhat.com
Thu Sep 6 10:50:51 UTC 2018
http://cr.openjdk.java.net/~shade/shenandoah/heuristics-tests/webrev.01/
This includes several interconnected changesets:
*) Passive heuristics now goes to Degenerated GC first, and then maybe to Full GC. This allows more
precise barrier overhead measurements, because we would be execute the exact same cycle, but in STW
mode.
*) Remove partial heuristics from testing. They are not used by anyone, and testing with them takes
significant time. Instead, we have their own special test that verify partial heuristics are not
terribly broken.
*) Reshuffling the test configurations. The motivation for it is simple. We first test "passive"
with either Degen or Full GC, to capture egregious mistakes in the GC code itself. Then we test
"aggressive", along with all exceptional corner cases that the cycle might run into. Then we test
default concurrent modes which can expose some new bugs, and only then special configs.
*) TestHeapDump is much faster when we tune down its heap, because heap traversal resets the bitmap
for the heap, and that takes time for larger heap.
This cuts down tier3 testing time from 35 minutes to 25 minutes on my desktop.
Testing: tier3_gc_shenandoah
Thanks,
-Aleksey
More information about the shenandoah-dev
mailing list