RFR: 8225631: Consider replacing muxAcquire/Release with PlatformMonitor

David Holmes dholmes at openjdk.java.net
Fri Nov 13 00:56:06 UTC 2020


This RFE was filed a while ago to see if we could get rid of `muxAcquire/release` to reduce overall code complexity. Initially some usages seemed to suffer some slight performance loss when I tried this. However, since then all but one usage have been removed and the final case, the `gInflationLock`'s in `ObjectSynchronizer read_stable_mark` does not suffer any performance degradation. It can also use `PlatformMutex` rather than `PlatformMonitor`.

On the plus side we remove a large chunk of complex synchronization code, we delete a `ParkEvent` per thread, and an int field per `ParkEvent` - which is good for footprint.

Testing:
- GH actions
- mach5 tiers 1-3
- selected performance testing (guided by that used for JDK-8253064)

Thanks,
David

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

Commit messages:
 - 8225631: Consider replacing muxAcquire/Release with PlatformMonitor

Changes: https://git.openjdk.java.net/jdk/pull/1196/files
 Webrev: https://webrevs.openjdk.java.net/?repo=jdk&pr=1196&range=00
  Issue: https://bugs.openjdk.java.net/browse/JDK-8225631
  Stats: 189 lines in 6 files changed: 11 ins; 164 del; 14 mod
  Patch: https://git.openjdk.java.net/jdk/pull/1196.diff
  Fetch: git fetch https://git.openjdk.java.net/jdk pull/1196/head:pull/1196

PR: https://git.openjdk.java.net/jdk/pull/1196


More information about the hotspot-runtime-dev mailing list