RFR: Reference processors might use non-forwarded alive checks

Aleksey Shipilev shade at redhat.com
Mon May 29 15:14:31 UTC 2017


Hi,

Current RPs are using ShenandoahIsForwardedAliveClosure, which always go via
fwdptr, assuming there could be a forwarded copy. However, with update-refs
phase, this is excessive.

Therefore, it makes sense to specialize for this case:
  http://cr.openjdk.java.net/~shade/shenandoah/refproc-isalive/webrev.01/

Improves concmark times, class unloading and weak refs a bit:
  http://cr.openjdk.java.net/~shade/shenandoah/refproc-isalive/before.txt
  http://cr.openjdk.java.net/~shade/shenandoah/refproc-isalive/after.txt

Testing: hotspot_gc_shenandoah

-Aleksey



More information about the shenandoah-dev mailing list