HotSpot supports RTM (restricted transactional memory) to be used for locking since JDK 8 on Intel's CPU (JDK-8031320). It was added to other platforms but has since been disabled and removed on all but Intel processors. There was attempt to deprecate it (JDK-8292082) during JDK 20 development but at that time it was decided to keep it. Recently we discussed this with Intel and they agreed with RTM deprecation and removal from HotSpot.
RTM adds unnecessarily to complexity and maintenance burden. It was never enabled by default because it only helped with some heavy lock contentions. Additionally new LIGHTWEIGHT locking implementation will not support it:JDK-8320321.
I propose to deprecate the related flags and remove the flags and all related code in a later release according to process.
RTM adds unnecessarily to complexity and maintenance burden. It was never enabled by default because it only helped with some heavy lock contentions. Additionally new LIGHTWEIGHT locking implementation will not support it:
I propose to deprecate the related flags and remove the flags and all related code in a later release according to process.
- csr for
-
JDK-8328991 Deprecate UseRTM* flags for removal
- Closed
- relates to
-
JDK-8031320 Use Intel RTM instructions for locks
- Closed
-
JDK-8329141 Obsolete RTM flags and code
- Resolved
-
JDK-8292082 Deprecate UseRTM* for removal
- Closed
-
JDK-8320321 RTM locking not supported for LM_LIGHTWEIGHT
- Closed
(2 links to)