@@ -2917,71 +2917,12 @@ when they're used.
29172917
29182918## Removed Java Options
29192919
2920- These ` java ` options have been removed in JDK @@VERSION_SPECIFICATION@@ and using them results in an error of:
2921-
2922- > ` Unrecognized VM option ` * option-name*
2923-
2924- ` -XX:RTMAbortRatio= ` * abort\_ ratio*
2925- : Specifies the RTM abort ratio is specified as a percentage (%) of all
2926- executed RTM transactions. If a number of aborted transactions becomes
2927- greater than this ratio, then the compiled code is deoptimized. This ratio
2928- is used when the ` -XX:+UseRTMDeopt ` option is enabled. The default value of
2929- this option is 50. This means that the compiled code is deoptimized if 50%
2930- of all transactions are aborted.
2931-
2932- ` -XX:RTMRetryCount= ` * number\_ of\_ retries*
2933- : Specifies the number of times that the RTM locking code is retried, when it
2934- is aborted or busy, before falling back to the normal locking mechanism.
2935- The default value for this option is 5. The ` -XX:UseRTMLocking ` option must
2936- be enabled.
2937-
2938- ` -XX:+UseRTMDeopt `
2939- : Autotunes RTM locking depending on the abort ratio. This ratio is specified
2940- by the ` -XX:RTMAbortRatio ` option. If the number of aborted transactions
2941- exceeds the abort ratio, then the method containing the lock is deoptimized
2942- and recompiled with all locks as normal locks. This option is disabled by
2943- default. The ` -XX:+UseRTMLocking ` option must be enabled.
2944-
2945- ` -XX:+UseRTMLocking `
2946- : Generates Restricted Transactional Memory (RTM) locking code for all
2947- inflated locks, with the normal locking mechanism as the fallback handler.
2948- This option is disabled by default. Options related to RTM are available
2949- only on x86 CPUs that support Transactional Synchronization Extensions (TSX).
2950-
2951- RTM is part of Intel's TSX, which is an x86 instruction set extension and
2952- facilitates the creation of multithreaded applications. RTM introduces the
2953- new instructions `XBEGIN`, `XABORT`, `XEND`, and `XTEST`. The `XBEGIN` and
2954- `XEND` instructions enclose a set of instructions to run as a transaction.
2955- If no conflict is found when running the transaction, then the memory and
2956- register modifications are committed together at the `XEND` instruction.
2957- The `XABORT` instruction can be used to explicitly abort a transaction and
2958- the `XTEST` instruction checks if a set of instructions is being run in a
2959- transaction.
2960-
2961- A lock on a transaction is inflated when another thread tries to access the
2962- same transaction, thereby blocking the thread that didn't originally
2963- request access to the transaction. RTM requires that a fallback set of
2964- operations be specified in case a transaction aborts or fails. An RTM lock
2965- is a lock that has been delegated to the TSX's system.
2966-
2967- RTM improves performance for highly contended locks with low conflict in a
2968- critical region (which is code that must not be accessed by more than one
2969- thread concurrently). RTM also improves the performance of coarse-grain
2970- locking, which typically doesn't perform well in multithreaded
2971- applications. (Coarse-grain locking is the strategy of holding locks for
2972- long periods to minimize the overhead of taking and releasing locks, while
2973- fine-grained locking is the strategy of trying to achieve maximum
2974- parallelism by locking only when necessary and unlocking as soon as
2975- possible.) Also, for lightly contended locks that are used by different
2976- threads, RTM can reduce false cache line sharing, also known as cache line
2977- ping-pong. This occurs when multiple threads from different processors are
2978- accessing different resources, but the resources share the same cache line.
2979- As a result, the processors repeatedly invalidate the cache lines of other
2980- processors, which forces them to read from main memory instead of their
2981- cache.
2920+ No documented java options have been removed in JDK @@VERSION_SPECIFICATION@@.
29822921
29832922For the lists and descriptions of options removed in previous releases see the * Removed Java Options* section in:
29842923
2924+ - [ The ` java ` Command, Release 25] ( https://docs.oracle.com/en/java/javase/25/docs/specs/man/java.html )
2925+
29852926- [ The ` java ` Command, Release 24] ( https://docs.oracle.com/en/java/javase/24/docs/specs/man/java.html )
29862927
29872928- [ The ` java ` Command, Release 23] ( https://docs.oracle.com/en/java/javase/23/docs/specs/man/java.html )
0 commit comments