RFR (S): Conditional matrix cleanup
Aleksey Shipilev
shade at redhat.com
Wed May 3 11:21:08 UTC 2017
Hi,
Turns out, the significant part of per-region matrix cleanup are the actual
stores. In most of our scenarios the matrix is very sparse, and therefore it
helps to avoid writes by checking if matrix element is set before the store:
http://cr.openjdk.java.net/~shade/shenandoah/matrix-clear-conditional/webrev.01/
Improves recycling and final mark times (when matrix is enabled):
Before:
Recycle = 0.86 s (a = 8447 us) (n = 102)
(lvls, us = 8008, 8223, 8496, 8613, 9207)
After:
Recycle = 0.52 s (a = 5076 us) (n = 102)
(lvls, us = 4668, 4766, 4863, 5215, 7828)
Testing: hotspot_gc_shenandoah
Thanks,
-Aleksey
More information about the shenandoah-dev
mailing list