1851 \-XX:ThreadStackSize=1024 1852 \f[R] 1853 .fi 1854 .PP 1855 This option is similar to \f[CB]\-Xss\f[R]. 1856 .RE 1857 .TP 1858 .B \f[CB]\-XX:\-UseBiasedLocking\f[R] 1859 Disables the use of biased locking. 1860 Some applications with significant amounts of uncontended 1861 synchronization may attain significant speedups with this flag enabled, 1862 but applications with certain patterns of locking may see slowdowns. 1863 \&. 1864 .RS 1865 .PP 1866 By default, this option is enabled. 1867 .RE 1868 .TP 1869 .B \f[CB]\-XX:\-UseCompressedOops\f[R] 1870 Disables the use of compressed pointers. 1871 By default, this option is enabled, and compressed pointers are used 1872 when Java heap sizes are less than 32 GB. 1873 When this option is enabled, object references are represented as 1874 32\-bit offsets instead of 64\-bit pointers, which typically increases 1875 performance when running the application with Java heap sizes of less 1876 than 32 GB. 1877 This option works only for 64\-bit JVMs. 1878 .RS 1879 .PP 1880 It\[aq]s also possible to use compressed pointers when Java heap sizes 1881 are greater than 32 GB. 1882 See the \f[CB]\-XX:ObjectAlignmentInBytes\f[R] option. 1883 .RE 1884 .TP 1885 .B \f[CB]\-XX:\-UseContainerSupport\f[R] 1886 The VM now provides automatic container detection support, which allows 1887 the VM to determine the amount of memory and number of processors that 1888 are available to a Java process running in docker containers. 1889 It uses this information to allocate system resources. 1890 This support is only available on Linux x64 platforms. 1891 \ If supported, the default for this flag is\ \f[CB]true\f[R], and 1892 container support is enabled by default. 1893 \ It\ can be disabled with\ \f[CB]\-XX:\-UseContainerSupport\f[R]. 1894 .RS 1895 .PP 1896 Unified Logging is available to help to diagnose issues related to this 1897 support. 1898 .PP 1899 Use \f[CB]\-Xlog:os+container=trace\f[R] for maximum logging of container 1900 information. 1901 See \f[B]Enable Logging with the JVM Unified Logging Framework\f[R] for a 3196 configuration. 3197 .RS 3198 .PP 3199 The following examples show how to set the size of allocated memory to 6 3200 MB using various units: 3201 .IP 3202 .nf 3203 \f[CB] 3204 \-XX:InitialHeapSize=6291456 3205 \-XX:InitialHeapSize=6144k 3206 \-XX:InitialHeapSize=6m 3207 \f[R] 3208 .fi 3209 .PP 3210 If you set this option to 0, then the initial size is set as the sum of 3211 the sizes allocated for the old generation and the young generation. 3212 The size of the heap for the young generation can be set using the 3213 \f[CB]\-XX:NewSize\f[R] option. 3214 .RE 3215 .TP 3216 .B \f[CB]\-XX:InitialSurvivorRatio=\f[R]\f[I]ratio\f[R] 3217 Sets the initial survivor space ratio used by the throughput garbage 3218 collector (which is enabled by the \f[CB]\-XX:+UseParallelGC\f[R] and/or 3219 \f[CB]\-XX:+UseParallelOldGC\f[R] options). 3220 Adaptive sizing is enabled by default with the throughput garbage 3221 collector by using the \f[CB]\-XX:+UseParallelGC\f[R] and 3222 \f[CB]\-XX:+UseParallelOldGC\f[R] options, and the survivor space is 3223 resized according to the application behavior, starting with the initial 3224 value. 3225 If adaptive sizing is disabled (using the 3226 \f[CB]\-XX:\-UseAdaptiveSizePolicy\f[R] option), then the 3227 \f[CB]\-XX:SurvivorRatio\f[R] option should be used to set the size of the 3228 survivor space for the entire execution of the application. 3229 .RS 3230 .PP 3231 The following formula can be used to calculate the initial size of 3232 survivor space (S) based on the size of the young generation (Y), and 3233 the initial survivor space ratio (R): 3234 .RS 3235 .PP 3354 The amount of metadata for an application depends on the application 3355 itself, other running applications, and the amount of memory available 3356 on the system. 3357 .RS 3358 .PP 3359 The following example shows how to set the maximum class metadata size 3360 to 256 MB: 3361 .RS 3362 .PP 3363 \f[CB]\-XX:MaxMetaspaceSize=256m\f[R] 3364 .RE 3365 .RE 3366 .TP 3367 .B \f[CB]\-XX:MaxNewSize=\f[R]\f[I]size\f[R] 3368 Sets the maximum size (in bytes) of the heap for the young generation 3369 (nursery). 3370 The default value is set ergonomically. 3371 .RS 3372 .RE 3373 .TP 3374 .B \f[CB]\-XX:MaxTenuringThreshold=\f[R]\f[I]threshold\f[R] 3375 Sets the maximum tenuring threshold for use in adaptive GC sizing. 3376 The largest value is 15. 3377 The default value is 15 for the parallel (throughput) collector, and 6 3378 for the CMS collector. 3379 .RS 3380 .PP 3381 The following example shows how to set the maximum tenuring threshold to 3382 10: 3383 .RS 3384 .PP 3385 \f[CB]\-XX:MaxTenuringThreshold=10\f[R] 3386 .RE 3387 .RE 3388 .TP 3389 .B \f[CB]\-XX:MetaspaceSize=\f[R]\f[I]size\f[R] 3390 Sets the size of the allocated class metadata space that triggers a 3391 garbage collection the first time it\[aq]s exceeded. 3392 This threshold for a garbage collection is increased or decreased 3393 depending on the amount of metadata used. 3783 .PP 3784 Example: 3785 .PP 3786 \f[CB]\-Xlog:gc:garbage\-collection.log\f[R] 3787 .RE 3788 .TP 3789 .B \f[CB]\-XX:+FailOverToOldVerifier\f[R] 3790 Enables automatic failover to the old verifier when the new type checker 3791 fails. 3792 By default, this option is disabled and it\[aq]s ignored (that is, 3793 treated as disabled) for classes with a recent bytecode version. 3794 You can enable it only for classes with older versions of the bytecode. 3795 .RS 3796 .RE 3797 .TP 3798 .B \f[CB]\-XX:+FlightRecorder\f[R] 3799 Enables the use of Java Flight Recorder (JFR) during the runtime of the 3800 application. 3801 Since JDK 8u40 this option has not been required to use JFR. 3802 .RS 3803 .RE 3804 .TP 3805 .B \f[CB]\-XX:+TraceClassLoading\f[R] 3806 Enables tracing of classes as they are loaded. 3807 By default, this option is disabled and classes aren\[aq]t traced. 3808 .RS 3809 .PP 3810 The replacement Unified Logging syntax is 3811 \f[CB]\-Xlog:class+load=\f[R]\f[I]level\f[R]. 3812 See \f[B]Enable Logging with the JVM Unified Logging Framework\f[R] 3813 .PP 3814 Use \f[I]level\f[R]=\f[CB]info\f[R] for regular information, or 3815 \f[I]level\f[R]=\f[CB]debug\f[R] for additional information. 3816 In Unified Logging syntax, \f[CB]\-verbose:class\f[R] equals 3817 \f[CB]\-Xlog:class+load=info,class+unload=info\f[R]. 3818 .RE 3819 .TP 3820 .B \f[CB]\-XX:+TraceClassLoadingPreorder\f[R] 3821 Enables tracing of all loaded classes in the order in which they\[aq]re 3822 referenced. | 1851 \-XX:ThreadStackSize=1024 1852 \f[R] 1853 .fi 1854 .PP 1855 This option is similar to \f[CB]\-Xss\f[R]. 1856 .RE 1857 .TP 1858 .B \f[CB]\-XX:\-UseBiasedLocking\f[R] 1859 Disables the use of biased locking. 1860 Some applications with significant amounts of uncontended 1861 synchronization may attain significant speedups with this flag enabled, 1862 but applications with certain patterns of locking may see slowdowns. 1863 \&. 1864 .RS 1865 .PP 1866 By default, this option is enabled. 1867 .RE 1868 .TP 1869 .B \f[CB]\-XX:\-UseCompressedOops\f[R] 1870 Disables the use of compressed pointers. 1871 By default, this option is enabled, and compressed pointers are used. 1872 This will automatically limit the maximum ergonomically determined Java 1873 heap size to the maximum amount of memory that can be covered by 1874 compressed pointers. 1875 By default this range is 32 GB. 1876 .RS 1877 .PP 1878 With compressed oops enabled, object references are represented as 1879 32\-bit offsets instead of 64\-bit pointers, which typically increases 1880 performance when running the application with Java heap sizes smaller 1881 than the compressed oops pointer range. 1882 This option works only for 64\-bit JVMs. 1883 .PP 1884 It\[aq]s possible to use compressed pointers with Java heap sizes 1885 greater than 32 GB. 1886 See the \f[CB]\-XX:ObjectAlignmentInBytes\f[R] option. 1887 .RE 1888 .TP 1889 .B \f[CB]\-XX:\-UseContainerSupport\f[R] 1890 The VM now provides automatic container detection support, which allows 1891 the VM to determine the amount of memory and number of processors that 1892 are available to a Java process running in docker containers. 1893 It uses this information to allocate system resources. 1894 This support is only available on Linux x64 platforms. 1895 \ If supported, the default for this flag is\ \f[CB]true\f[R], and 1896 container support is enabled by default. 1897 \ It\ can be disabled with\ \f[CB]\-XX:\-UseContainerSupport\f[R]. 1898 .RS 1899 .PP 1900 Unified Logging is available to help to diagnose issues related to this 1901 support. 1902 .PP 1903 Use \f[CB]\-Xlog:os+container=trace\f[R] for maximum logging of container 1904 information. 1905 See \f[B]Enable Logging with the JVM Unified Logging Framework\f[R] for a 3200 configuration. 3201 .RS 3202 .PP 3203 The following examples show how to set the size of allocated memory to 6 3204 MB using various units: 3205 .IP 3206 .nf 3207 \f[CB] 3208 \-XX:InitialHeapSize=6291456 3209 \-XX:InitialHeapSize=6144k 3210 \-XX:InitialHeapSize=6m 3211 \f[R] 3212 .fi 3213 .PP 3214 If you set this option to 0, then the initial size is set as the sum of 3215 the sizes allocated for the old generation and the young generation. 3216 The size of the heap for the young generation can be set using the 3217 \f[CB]\-XX:NewSize\f[R] option. 3218 .RE 3219 .TP 3220 .B \f[CB]\-XX:InitialRAMPercentage=\f[R]\f[I]percent\f[R] 3221 Sets the initial amount of memory that the JVM will use for the Java 3222 heap before applying ergonomics heuristics as a percentage of the 3223 maximum amount determined as described in the \f[CB]\-XX:MaxRAM\f[R] 3224 option. 3225 The default value is 1.5625 percent. 3226 .RS 3227 .PP 3228 The following example shows how to set the percentage of the initial 3229 amount of memory used for the Java heap: 3230 .RS 3231 .PP 3232 \f[CB]\-XX:InitialRAMPercentage=5\f[R] 3233 .RE 3234 .RE 3235 .TP 3236 .B \f[CB]\-XX:InitialSurvivorRatio=\f[R]\f[I]ratio\f[R] 3237 Sets the initial survivor space ratio used by the throughput garbage 3238 collector (which is enabled by the \f[CB]\-XX:+UseParallelGC\f[R] and/or 3239 \f[CB]\-XX:+UseParallelOldGC\f[R] options). 3240 Adaptive sizing is enabled by default with the throughput garbage 3241 collector by using the \f[CB]\-XX:+UseParallelGC\f[R] and 3242 \f[CB]\-XX:+UseParallelOldGC\f[R] options, and the survivor space is 3243 resized according to the application behavior, starting with the initial 3244 value. 3245 If adaptive sizing is disabled (using the 3246 \f[CB]\-XX:\-UseAdaptiveSizePolicy\f[R] option), then the 3247 \f[CB]\-XX:SurvivorRatio\f[R] option should be used to set the size of the 3248 survivor space for the entire execution of the application. 3249 .RS 3250 .PP 3251 The following formula can be used to calculate the initial size of 3252 survivor space (S) based on the size of the young generation (Y), and 3253 the initial survivor space ratio (R): 3254 .RS 3255 .PP 3374 The amount of metadata for an application depends on the application 3375 itself, other running applications, and the amount of memory available 3376 on the system. 3377 .RS 3378 .PP 3379 The following example shows how to set the maximum class metadata size 3380 to 256 MB: 3381 .RS 3382 .PP 3383 \f[CB]\-XX:MaxMetaspaceSize=256m\f[R] 3384 .RE 3385 .RE 3386 .TP 3387 .B \f[CB]\-XX:MaxNewSize=\f[R]\f[I]size\f[R] 3388 Sets the maximum size (in bytes) of the heap for the young generation 3389 (nursery). 3390 The default value is set ergonomically. 3391 .RS 3392 .RE 3393 .TP 3394 .B \f[CB]\-XX:MaxRAM=\f[R]\f[I]size\f[R] 3395 Sets the maximum amount of memory that the JVM may use for the Java heap 3396 before applying ergonomics heuristics. 3397 The default value is the maximum amount of available memory to the JVM 3398 process or 128 GB, whichever is lower. 3399 .RS 3400 .PP 3401 The maximum amount of available memory to the JVM process is the minimum 3402 of the machine\[aq]s physical memory and any constraints set by the 3403 environment (e.g. 3404 container). 3405 .PP 3406 Specifying this option disables automatic use of compressed oops if the 3407 combined result of this and other options influencing the maximum amount 3408 of memory is larger than the range of memory addressable by compressed 3409 oops. 3410 See \f[CB]\-XX:UseCompressedOops\f[R] for further information about 3411 compressed oops. 3412 .PP 3413 The following example shows how to set the maximum amount of available 3414 memory for sizing the Java heap to 2 GB: 3415 .RS 3416 .PP 3417 \f[CB]\-XX:MaxRAM=2G\f[R] 3418 .RE 3419 .RE 3420 .TP 3421 .B \f[CB]\-XX:MaxRAMPercentage=\f[R]\f[I]percent\f[R] 3422 Sets the maximum amount of memory that the JVM may use for the Java heap 3423 before applying ergonomics heuristics as a percentage of the maximum 3424 amount determined as described in the \f[CB]\-XX:MaxRAM\f[R] option. 3425 The default value is 25 percent. 3426 .RS 3427 .PP 3428 Specifying this option disables automatic use of compressed oops if the 3429 combined result of this and other options influencing the maximum amount 3430 of memory is larger than the range of memory addressable by compressed 3431 oops. 3432 See \f[CB]\-XX:UseCompressedOops\f[R] for further information about 3433 compressed oops. 3434 .PP 3435 The following example shows how to set the percentage of the maximum 3436 amount of memory used for the Java heap: 3437 .RS 3438 .PP 3439 \f[CB]\-XX:MaxRAMPercentage=75\f[R] 3440 .RE 3441 .RE 3442 .TP 3443 .B \f[CB]\-XX:MinRAMPercentage=\f[R]\f[I]percent\f[R] 3444 Sets the maximum amount of memory that the JVM may use for the Java heap 3445 before applying ergonomics heuristics as a percentage of the maximum 3446 amount determined as described in the \f[CB]\-XX:MaxRAM\f[R] option for 3447 small heaps. 3448 A small heap is a heap of approximately 125 MB. 3449 The default value is 50 percent. 3450 .RS 3451 .PP 3452 The following example shows how to set the percentage of the maximum 3453 amount of memory used for the Java heap for small heaps: 3454 .RS 3455 .PP 3456 \f[CB]\-XX:MinRAMPercentage=75\f[R] 3457 .RE 3458 .RE 3459 .TP 3460 .B \f[CB]\-XX:MaxTenuringThreshold=\f[R]\f[I]threshold\f[R] 3461 Sets the maximum tenuring threshold for use in adaptive GC sizing. 3462 The largest value is 15. 3463 The default value is 15 for the parallel (throughput) collector, and 6 3464 for the CMS collector. 3465 .RS 3466 .PP 3467 The following example shows how to set the maximum tenuring threshold to 3468 10: 3469 .RS 3470 .PP 3471 \f[CB]\-XX:MaxTenuringThreshold=10\f[R] 3472 .RE 3473 .RE 3474 .TP 3475 .B \f[CB]\-XX:MetaspaceSize=\f[R]\f[I]size\f[R] 3476 Sets the size of the allocated class metadata space that triggers a 3477 garbage collection the first time it\[aq]s exceeded. 3478 This threshold for a garbage collection is increased or decreased 3479 depending on the amount of metadata used. 3869 .PP 3870 Example: 3871 .PP 3872 \f[CB]\-Xlog:gc:garbage\-collection.log\f[R] 3873 .RE 3874 .TP 3875 .B \f[CB]\-XX:+FailOverToOldVerifier\f[R] 3876 Enables automatic failover to the old verifier when the new type checker 3877 fails. 3878 By default, this option is disabled and it\[aq]s ignored (that is, 3879 treated as disabled) for classes with a recent bytecode version. 3880 You can enable it only for classes with older versions of the bytecode. 3881 .RS 3882 .RE 3883 .TP 3884 .B \f[CB]\-XX:+FlightRecorder\f[R] 3885 Enables the use of Java Flight Recorder (JFR) during the runtime of the 3886 application. 3887 Since JDK 8u40 this option has not been required to use JFR. 3888 .RS 3889 .RE 3890 .TP 3891 .B \f[CB]\-XX:InitialRAMFraction=\f[R]\f[I]ratio\f[R] 3892 Sets the initial amount of memory that the JVM may use for the Java heap 3893 before applying ergonomics heuristics as a ratio of the maximum amount 3894 determined as described in the \f[CB]\-XX:MaxRAM\f[R] option. 3895 The default value is 64. 3896 .RS 3897 .PP 3898 Use the option \f[CB]\-XX:InitialRAMPercentage\f[R] instead. 3899 .RE 3900 .TP 3901 .B \f[CB]\-XX:MaxRAMFraction=\f[R]\f[I]ratio\f[R] 3902 Sets the maximum amount of memory that the JVM may use for the Java heap 3903 before applying ergonomics heuristics as a fraction of the maximum 3904 amount determined as described in the \f[CB]\-XX:MaxRAM\f[R] option. 3905 The default value is 4. 3906 .RS 3907 .PP 3908 Specifying this option disables automatic use of compressed oops if the 3909 combined result of this and other options influencing the maximum amount 3910 of memory is larger than the range of memory addressable by compressed 3911 oops. 3912 See \f[CB]\-XX:UseCompressedOops\f[R] for further information about 3913 compressed oops. 3914 .PP 3915 Use the option \f[CB]\-XX:MaxRAMPercentage\f[R] instead. 3916 .RE 3917 .TP 3918 .B \f[CB]\-XX:MinRAMFraction=\f[R]\f[I]ratio\f[R] 3919 Sets the maximum amount of memory that the JVM may use for the Java heap 3920 before applying ergonomics heuristics as a fraction of the maximum 3921 amount determined as described in the \f[CB]\-XX:MaxRAM\f[R] option for 3922 small heaps. 3923 A small heap is a heap of approximately 125 MB. 3924 The default value is 2. 3925 .RS 3926 .PP 3927 Use the option \f[CB]\-XX:MinRAMPercentage\f[R] instead. 3928 .RE 3929 .TP 3930 .B \f[CB]\-XX:+TraceClassLoading\f[R] 3931 Enables tracing of classes as they are loaded. 3932 By default, this option is disabled and classes aren\[aq]t traced. 3933 .RS 3934 .PP 3935 The replacement Unified Logging syntax is 3936 \f[CB]\-Xlog:class+load=\f[R]\f[I]level\f[R]. 3937 See \f[B]Enable Logging with the JVM Unified Logging Framework\f[R] 3938 .PP 3939 Use \f[I]level\f[R]=\f[CB]info\f[R] for regular information, or 3940 \f[I]level\f[R]=\f[CB]debug\f[R] for additional information. 3941 In Unified Logging syntax, \f[CB]\-verbose:class\f[R] equals 3942 \f[CB]\-Xlog:class+load=info,class+unload=info\f[R]. 3943 .RE 3944 .TP 3945 .B \f[CB]\-XX:+TraceClassLoadingPreorder\f[R] 3946 Enables tracing of all loaded classes in the order in which they\[aq]re 3947 referenced. |