Integrated: 8305670: Performance regression in LockSupport.unpark with lots of idle threads

Daniel D. Daugherty dcubed at openjdk.org
Sat May 13 14:50:21 UTC 2023


On Tue, 18 Apr 2023 21:09:54 GMT, Daniel D. Daugherty <dcubed at openjdk.org> wrote:

> Address the performance regression in `LockSupport.unpark()` with the following changes:
> - Add `FastThreadsListHandle` helper class to threadSMR.[ch]pp for quickly determining if a JavaThread* is protected by the ThreadsListHandle embedded in the new helper object.
> - Update `Unsafe_Unpark()` to pass `java_lang_Thread::thread_acquire(thread_oop)` to a new instance of the `FastThreadsListHandle` object and only do the unpark work if the target JavaThread* is protected.

This pull request has now been integrated.

Changeset: f030937a
Author:    Daniel D. Daugherty <dcubed at openjdk.org>
URL:       https://git.openjdk.org/jdk/commit/f030937a51b95dde33ce33537ee830153b2c3b56
Stats:     53 lines in 3 files changed: 39 ins; 1 del; 13 mod

8305670: Performance regression in LockSupport.unpark with lots of idle threads

Co-authored-by: Robbin Ehn <rehn at openjdk.org>
Reviewed-by: rehn, dholmes

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

PR: https://git.openjdk.org/jdk/pull/13519


More information about the hotspot-runtime-dev mailing list