RFR: 8292969: Bad Thread Utilization in ForkJoinPool
Doug Lea
dl at openjdk.org
Mon Sep 26 13:34:27 UTC 2022
On Mon, 26 Sep 2022 13:21:23 GMT, Aleksey Shipilev <shade at openjdk.org> wrote:
>> 8292969: This small change in signal propagation rules improves utilization when entry queues are resized,
>
> src/java.base/share/classes/java/util/concurrent/ForkJoinPool.java line 1842:
>
>> 1840: signalWork(); // propagate at most twice/run
>> 1841: w.topLevelExec(t, q);
>> 1842: return src + (prevSrc << SWIDTH);
>
> Are all of these values (`src`, `prevSrc`) less or equal `0x7FFF`? Otherwise we are playing with sign bits here.
Yes, see the discussions around line 391 of internal docs.
-------------
PR: https://git.openjdk.org/jdk/pull/10198
More information about the core-libs-dev
mailing list