On Mon, 14 Oct 2024 20:58:43 GMT, Doug Lea <d...@openjdk.org> wrote:

> This addresses tendencies in previous update to increase fencing, scanning, 
> and signalling that can increase contention, and slow down performance 
> especially on ARM platforms. It also uses more ARM-friendly constructions to 
> reduce overhead (leading to several changes that all of the same form),

src/java.base/share/classes/java/util/concurrent/ForkJoinPool.java line 2279:

> 2277:                                 if (U.compareAndSetReference(a, k, t, 
> null)) {
> 2278:                                     q.base = b + 1;
> 2279:                                     w.source = j;

Might be worth commenting the volatile-write piggybacking which allows to get 
away with not calling updateBase above? 🤔

src/java.base/share/classes/java/util/concurrent/ForkJoinPool.java line 2433:

> 2431:                             if (U.compareAndSetReference(a, k, t, 
> null)) {
> 2432:                                 q.base = nb;
> 2433:                                 w.source = j;

Might be worth commenting the volatile-write piggybacking which allows to get 
away with not calling updateBase above? 🤔

-------------

PR Review Comment: https://git.openjdk.org/jdk/pull/21507#discussion_r1803467095
PR Review Comment: https://git.openjdk.org/jdk/pull/21507#discussion_r1803468091

Reply via email to