RFR: 8152196: SuspendibleThreadSet::yield scales poorly

Derek White derek.white at oracle.com
Wed Mar 23 19:07:17 UTC 2016


On 3/18/16 3:58 PM, Kim Barrett wrote:
> Please review this fix for a performance scaling problem in
> SuspendibleThreadSet, leading to unnecessary additional safepoint
> latency as the number of suspendible threads increases. See the CR for
> details of the problem and some performance data.
>
> CR:
> https://bugs.openjdk.java.net/browse/JDK-8152196
>
> Webrev:
> http://cr.openjdk.java.net/~kbarrett/8152196/webrev.00/
>
> Testing:
> JPRT, RBT GC Nightly, local specjbb2015.
Hi Kim, this looks good.

I looked at the suspendibleThreadSet.cpp, line 88 for a bit. There used 
to be notify_all() after "_nthreads_stopped--;". But the thinking is 
that nobody cares about the " is_synchronized() -> ! is_synchronized()" 
transition, so this was never really needed, and certainly isn't needed 
now. Is this correct?

  - Derek

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.openjdk.java.net/pipermail/hotspot-gc-dev/attachments/20160323/b7bc475f/attachment.html>


More information about the hotspot-gc-dev mailing list