RFR: 8256302: releasing oopStorage when deflating allows for faster deleting [v3]
Daniel D. Daugherty
dcubed at openjdk.org
Fri Jun 2 19:38:36 UTC 2023
On Mon, 22 May 2023 20:02:21 GMT, Daniel D. Daugherty <dcubed at openjdk.org> wrote:
>> Releasing ObjectMonitor oopStorage earlier when deflating allows ObjectMonitor
>> deletion by a JavaThread (usually the MonitorDeflationThread) to happen while a
>> ThreadBlockInVM helper is in place. This should improve time-to-safepoint.
>
> Daniel D. Daugherty has updated the pull request with a new target base due to a merge or a rebase. The pull request now contains three commits:
>
> - Merge tag 'jdk-21+23' into JDK-8256302
>
> Added tag jdk-21+23 for changeset 6d4782bc
> - address the easy dholmes and kimbarrett CR comments
> - 8256302: releasing oopStorage when deflating allows for faster deleting
I figured out the source of my confusion over Robbin's suggested sanity
check for this bug:
- Can't guarantee _object.is_null() after release because it is not
cleared to nullptr after being released.
- I don't want to change WeakHandle::release() to clear its internal
_obj field because that would require a number of 'const' removals.
- Instead I've added WeakHandle::set_null() for those WeakHandle use
cases that would like the _obj field cleared.
- I've tweaked the patch to allow ObjectMonitor::_object's internal
ref to be reset to nullptr when it is released which allows the
code to be cleaner.
I've tested v03 with Mach5 Tier[1-5]. The results were a bit noisy due to
issues outside of this PR. I'm going to rebase the PR to jdk-21+25 and
then retest shortly.
Please hold off on any re-reviews until I give the all clear...
-------------
PR Comment: https://git.openjdk.org/jdk/pull/11296#issuecomment-1574216596
PR Comment: https://git.openjdk.org/jdk/pull/11296#issuecomment-1574218071
More information about the hotspot-runtime-dev
mailing list