RFR (L) 8227327: Shenandoah: Faster and more parallel tests

Aleksey Shipilev shade at redhat.com
Fri Jul 5 18:40:59 UTC 2019


Current hotspot_gc_shenandoah suite runs in fastdebug like this:

real	31m31.172s
user	287m50.380s
sys	5m28.277s

This amounts to 9.1x parallelism on 16-thread machine. Clearly, something big is on the critical
path. Profiling shows the critical path is largely dominated by GCBasherWithShenandoah, which takes
26 minutes to run through all configurations. Other huge tests also run for a long time.

We can improve this by splitting @run into several @test groups -- this would execute @test-s in
parallel, reducing the impact on critical path. The convenient way to split is by mode: passive,
normal, traversal.

Also, we can remove some the useless configurations from the tests. This becomes apparent once we
reformat @run sections to be more digestible and following the same format.

Webrev:
  https://cr.openjdk.java.net/~shade/8227327/webrev.01/

Patched version runs like this:

real	17m53.136s
user	247m50.750s
sys	5m33.051s

So, it yields ~13.7x parallelism on 16-thread machine, and does less work.

Testing: hotspot_gc_shenandoah (d'uh)

-- 
Thanks,
-Aleksey




More information about the hotspot-gc-dev mailing list