RFR: Concurrent code cache evacuation
Aleksey Shipilev
shade at redhat.com
Wed Jun 28 10:05:09 UTC 2017
Hi,
I would like us to make code cache evacuation concurrent:
http://cr.openjdk.java.net/~shade/shenandoah/codecache-conc-evac/webrev.02/
This gives us the benefit of much lower final mark times, where we had to
evacuate the code cache roots:
http://cr.openjdk.java.net/~shade/shenandoah/codecache-conc-evac/perf.txt
Code cache was evacuated at pause because constant oops barriers were stripped
away as optimization, and this change conflicts with that optimization. So,
+ShenandoahBarriersForConst is set by default. This may affect correctness, as
demonstrated by recent Roland's fixes to C2.
Throughput-wise, only Compiler.* tests are regressing ~2% in single-threaded
mode. The regression is completely gone in fully-threaded configuration. We seen
no other regressions.
Testing: hotspot_gc_shenandoah, specjvm with +Verify, specjbb with +Verify
Thanks,
-Aleksey
More information about the shenandoah-dev
mailing list