RFR: 8317453: NMT: Performance benchmarks are needed to measure speed and memory [v4]

David Holmes dholmes at openjdk.org
Mon Jan 20 01:41:44 UTC 2025


On Fri, 17 Jan 2025 16:31:12 GMT, Gerard Ziemski <gziemski at openjdk.org> wrote:

>> src/hotspot/share/nmt/memLogRecorder.hpp line 37:
>> 
>>> 35: #elif defined(WINDOWS)
>>> 36:  // ???
>>> 37: #endif
>> 
>> You need to use existing synchronization API here. Either Mutex or PlatformMutex depending on initialization constraints; maybe a Semaphore if the others can't work.
>
> Why do we need to use existing synchronization API here? IS it because we can deadlock by introducing a new lock?
> 
> I have run the existing code many times, no deadlocks.

We have synchronization abstractions so that we don't litter shared code with platform specific code - and don't yu need a solution for Windows? We also need to ensure synchronization plays nicely with safepoints and yes to watch for potential deadlock issues. Testing can never prove the absence of deadlock.

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

PR Review Comment: https://git.openjdk.org/jdk/pull/23115#discussion_r1921693423


More information about the hotspot-dev mailing list