Synchronizers roots scan/evac benchmark

Aleksey Shipilev shade at redhat.com
Wed Nov 23 14:56:26 UTC 2016


Here:
 http://cr.openjdk.java.net/~shade/shenandoah/synchronizers/Synchronizers.java
 http://cr.openjdk.java.net/~shade/shenandoah/synchronizers/benchmarks.jar

$ java -jar target/benchmarks.jar --jvmArgs "-XX:+UseShenandoahGC
-Xlog:gc+stats"

In this workload, dealing with Synchronizer roots dominates the pause time:

Scan Roots                   =  1.46 s (avg =   104.32 ms)
...
  Scan Synchronizer  Roots  =   1.46 s (avg =   104.06 ms)

This is probably amenable to parallelization by block and/or prefetching
the monitor oops when scanning the block.

Thanks,
-Aleksey



More information about the shenandoah-dev mailing list