VM Options Explorer - OpenJDK9 HotSpot


NameSinceDeprecatedTypeOSCPUComponentDefaultAvailabilityDescriptionDefined in
SinceDeprecatedTypeOSCPUComponentAvailability
AOTLibraryOpenJDK9ccstrlistruntimeNULLproduct
AOT library
src/share/vm/runtime/globals.hpp
AbortVMOnExceptionMessageOpenJDK6ccstrruntimeNULLdiagnostic
Call fatal if the exception pointed by AbortVMOnException 
has this message
src/share/vm/runtime/globals.hpp
AbortVMOnExceptionOpenJDK6ccstrruntimeNULLdiagnostic
Call fatal if this exception is thrown. Example: 
java -XX:AbortVMOnException=java.lang.NullPointerException Foo
src/share/vm/runtime/globals.hpp
AdaptiveSizeDecrementScaleFactorOpenJDK6uintxruntime4
range(1, max_uintx)
product
Adaptive size scale down factor for shrinking
src/share/vm/runtime/globals.hpp
AdaptiveSizeMajorGCDecayTimeScaleOpenJDK6uintxruntime10
range(0, max_uintx)
product
Time scale over which major costs decay
src/share/vm/runtime/globals.hpp
AdaptiveSizePolicyCollectionCostMarginOpenJDK6Obsoleted in JDK23
Expired in JDK24
uintxruntime50
range(0, 100)
product
If collection costs are within margin, reduce both by full 
delta
src/share/vm/runtime/globals.hpp
AdaptiveSizePolicyGCTimeLimitThresholdOpenJDK6uintxruntime5
range(1, max_uintx)
develop
Number of consecutive collections before gc time limit fires
src/share/vm/runtime/globals.hpp
AdaptiveSizePolicyInitializingStepsOpenJDK6uintxruntime20
range(0, max_uintx)
product
Number of steps where heuristics is used before data is used
src/share/vm/runtime/globals.hpp
AdaptiveSizePolicyOutputIntervalOpenJDK6uintxruntime0
range(0, max_uintx)
product
Collection interval for printing information; zero means never
src/share/vm/runtime/globals.hpp
AdaptiveSizePolicyReadyThresholdOpenJDK6uintxruntime5develop
Number of collections before the adaptive sizing is started
src/share/vm/runtime/globals.hpp
AdaptiveSizePolicyWeightOpenJDK6uintxruntime10
range(0, 100)
product
Weight given to exponential resizing, between 0 and 100
src/share/vm/runtime/globals.hpp
AdaptiveSizeThroughPutPolicyOpenJDK6uintxruntime0
range(0, 1)
product
Policy for changing generation size for throughput goals
src/share/vm/runtime/globals.hpp
AdaptiveTimeWeightOpenJDK6uintxruntime25
range(0, 100)
product
Weight given to time in adaptive policy, between 0 and 100
src/share/vm/runtime/globals.hpp
AggressiveOptsOpenJDK6Deprecated in JDK11
Obsoleted in JDK12
Expired in JDK13
boolruntimefalseproduct
Enable aggressive optimizations - see arguments.cpp
src/share/vm/runtime/globals.hpp
AggressiveUnboxingOpenJDK8boolc2falseexperimental
Control optimizations for aggressive boxing elimination
src/share/vm/opto/c2_globals.hpp
AliasLevelOpenJDK6Deprecated in JDK19
Obsoleted in JDK20
Expired in JDK21
intxc23
range(0, 3)
product
0 for no aliasing, 1 for oop/field/static/array split, 

2 for class split, 3 for unique instances
src/share/vm/opto/c2_globals.hpp
AlignVectorOpenJDK7boolc2trueproduct
Perform vector store/load alignment in loop
src/share/vm/opto/c2_globals.hpp
AllocateInstancePrefetchLinesOpenJDK6intxruntime1
range(1, 64)
product
Number of lines to prefetch ahead of instance allocation 
pointer
src/share/vm/runtime/globals.hpp
AllocatePrefetchDistanceOpenJDK6intxruntime-1product
Distance to prefetch ahead of allocation pointer. 
-1: use system-specific value (automatically determined
src/share/vm/runtime/globals.hpp
AllocatePrefetchInstrOpenJDK6intxruntime0product
Select instruction to prefetch ahead of allocation pointer
src/share/vm/runtime/globals.hpp
AllocatePrefetchLinesOpenJDK6intxruntime3
range(1, 64)
product
Number of lines to prefetch ahead of array allocation pointer
src/share/vm/runtime/globals.hpp
AllocatePrefetchStepSizeOpenJDK6intxruntime16
range(1, 512)
product
Step size in bytes of sequential prefetch instructions
src/share/vm/runtime/globals.hpp
AllocatePrefetchStyleOpenJDK6intxruntime1
range(0, 3)
product
0 = no prefetch, 

1 = generate prefetch instructions for each allocation, 

2 = use TLAB watermark to gate allocation prefetch, 

3 = generate one prefetch instruction per cache line
src/share/vm/runtime/globals.hpp
AllowExtshmOpenJDK9boolaixfalseproduct
Allow VM to run with EXTSHM=ON.
src/os/aix/vm/globals_aix.hpp
AllowJNIEnvProxyOpenJDK6Deprecated in JDK13
Obsoleted in JDK14
Expired in JDK15
boolruntimefalseproduct
Allow JNIEnv proxies for jdbx
src/share/vm/runtime/globals.hpp
AllowNonVirtualCallsOpenJDK6Deprecated in JDK11
Obsoleted in JDK12
Expired in JDK13
boolruntimefalseproduct
Obey the ACC_SUPER flag and allow invokenonvirtual calls
src/share/vm/runtime/globals.hpp
AllowParallelDefineClassOpenJDK6boolruntimefalseproduct
Allow parallel defineClass requests for class loaders 
registering as parallel capable
src/share/vm/runtime/globals.hpp
AllowUserSignalHandlersOpenJDK6boolruntimefalseproduct
Do not complain if the application installs signal handlers 
(Solaris & Linux only)
src/share/vm/runtime/globals.hpp
AllowVectorizeOnDemandOpenJDK9boolc2trueproduct
Globally supress vectorization set in VectorizeMethod
src/share/vm/opto/c2_globals.hpp
AlwaysActAsServerClassMachineOpenJDK6boolruntimefalseproduct
Always act like a server-class machine
src/share/vm/runtime/globals.hpp
AlwaysAtomicAccessesOpenJDK9boolruntimefalseexperimental
Accesses to all variables should always be atomic
src/share/vm/runtime/globals.hpp
AlwaysCompileLoopMethodsOpenJDK6boolruntimefalseproduct
When using recompilation, never interpret methods 
containing loops
src/share/vm/runtime/globals.hpp
AlwaysIncrementalInlineOpenJDK7boolc2falsedevelop
do all inlining incrementally
src/share/vm/opto/c2_globals.hpp
AlwaysLockClassLoaderOpenJDK6Deprecated in JDK17
Obsoleted in JDK18
Expired in JDK19
boolruntimefalseproduct
Require the VM to acquire the class loader lock before calling 
loadClass() even for class loaders registering 
as parallel capable
src/share/vm/runtime/globals.hpp
AlwaysPreTouchOpenJDK6boolruntimefalseproduct
Force all freshly committed pages to be pre-touched
src/share/vm/runtime/globals.hpp
AlwaysRestoreFPUOpenJDK6boolruntimefalseproduct
Restore the FPU control word after every JNI call (expensive)
src/share/vm/runtime/globals.hpp
AlwaysSafeConstructorsOpenJDK9boolruntimefalseexperimental
Force safe construction, as if all fields are final.
src/share/vm/runtime/globals.hpp
AlwaysTenureOpenJDK6boolruntimefalseproduct
Always tenure objects in eden (ParallelGC only)
src/share/vm/runtime/globals.hpp
ArrayAllocatorMallocLimitOpenJDK7size_truntimeSOLARIS_ONLY(64*K) NOT_SOLARIS((size_t)-1)experimental
Allocation less than this value will be allocated 
using malloc. Larger allocations will use mmap.
src/share/vm/runtime/globals.hpp
ArrayCopyLoadStoreMaxElemOpenJDK9intxc28
range(0, max_intx)
product
Maximum number of arraycopy elements inlined as a sequence of
loads/stores
src/share/vm/opto/c2_globals.hpp
ArraycopyDstPrefetchDistanceOpenJDK6uintxsparc0product
Distance to prefetch destination array in arraycopy
src/cpu/sparc/vm/globals_sparc.hpp
ArraycopySrcPrefetchDistanceOpenJDK6uintxsparc0product
Distance to prefetch source array in arraycopy
src/cpu/sparc/vm/globals_sparc.hpp
AssertOnSuspendWaitFailureOpenJDK6Obsoleted in JDK17
Expired in JDK18
boolruntimefalseproduct
Assert/Guarantee on external suspend wait failure
src/share/vm/runtime/globals.hpp
AssertRangeCheckEliminationOpenJDK8boolc1falsedevelop
Assert Range Check Elimination
src/share/vm/c1/c1_globals.hpp
AssumeMPOpenJDK8Deprecated in JDK10
Obsoleted in JDK12
Expired in JDK13
boolruntimefalseproduct
Instruct the VM to assume multiple processors are available
src/share/vm/runtime/globals.hpp
AttachListenerTimeoutOpenJDK7intxaix1000
range(0, 2147483)
product
Timeout in ms the attach listener waits for a request
src/os/aix/vm/globals_aix.hpp
AutoBoxCacheMaxOpenJDK6intxc2128
range(0, max_jint)
product
Sets max value cached by the java.lang.Integer autobox cache
src/share/vm/opto/c2_globals.hpp
AutoGCSelectPauseMillisOpenJDK6uintxruntime5000
range(0, max_uintx)
product
Automatic GC selection pause threshold in milliseconds
src/share/vm/runtime/globals.hpp
AvoidUnalignedAccessesOpenJDK9boolaarch64falseproduct
Avoid generating unaligned memory accesses
src/cpu/aarch64/vm/globals_aarch64.hpp
BCEATraceLevelOpenJDK6intxruntime0
range(0, 3)
product
How much tracing to do of bytecode escape analysis estimates 
(0-3)
src/share/vm/runtime/globals.hpp
BackEdgeThresholdOpenJDK6intxaarch64c1100000define_pd_global
src/cpu/aarch64/vm/c1_globals_aarch64.hpp
BackEdgeThresholdOpenJDK6intxaarch64c2100000define_pd_global
src/cpu/aarch64/vm/c2_globals_aarch64.hpp
BackgroundCompilationOpenJDK6boolaarch64c1truedefine_pd_global
src/cpu/aarch64/vm/c1_globals_aarch64.hpp
BackgroundCompilationOpenJDK6boolaarch64c2truedefine_pd_global
src/cpu/aarch64/vm/c2_globals_aarch64.hpp
BackgroundCompilationOpenJDK6boolarmc1truedefine_pd_global
src/cpu/arm/vm/c1_globals_arm.hpp
BackgroundCompilationOpenJDK6boolarmc2truedefine_pd_global
src/cpu/arm/vm/c2_globals_arm.hpp
BackgroundCompilationOpenJDK6boolruntimeproduct_pd
A thread requesting compilation is not blocked during 
compilation
src/share/vm/runtime/globals.hpp
BackgroundCompilationOpenJDK6boolppcc1truedefine_pd_global
src/cpu/ppc/vm/c1_globals_ppc.hpp
BackgroundCompilationOpenJDK6boolppcc2truedefine_pd_global
src/cpu/ppc/vm/c2_globals_ppc.hpp
BackgroundCompilationOpenJDK6bools390c1truedefine_pd_global
src/cpu/s390/vm/c1_globals_s390.hpp
BackgroundCompilationOpenJDK6bools390c2truedefine_pd_global
src/cpu/s390/vm/c2_globals_s390.hpp
BackgroundCompilationOpenJDK6boolsparcc1truedefine_pd_global
src/cpu/sparc/vm/c1_globals_sparc.hpp
BackgroundCompilationOpenJDK6boolsparcc2truedefine_pd_global
src/cpu/sparc/vm/c2_globals_sparc.hpp
BackgroundCompilationOpenJDK6boolx86c1truedefine_pd_global
src/cpu/x86/vm/c1_globals_x86.hpp
BackgroundCompilationOpenJDK6boolx86c2truedefine_pd_global
src/cpu/x86/vm/c2_globals_x86.hpp
BackgroundCompilationOpenJDK6boolzerosharktruedefine_pd_global
src/cpu/zero/vm/shark_globals_zero.hpp
BailoutAfterHIROpenJDK6boolc1falsedevelop
bailout of compilation after building of HIR
src/share/vm/c1/c1_globals.hpp
BailoutAfterLIROpenJDK6boolc1falsedevelop
bailout of compilation after building of LIR
src/share/vm/c1/c1_globals.hpp
BailoutOnExceptionHandlersOpenJDK6boolc1falsedevelop
bailout of compilation for methods with exception handlers
src/share/vm/c1/c1_globals.hpp
BailoutToInterpreterForThrowsOpenJDK6boolc2falsedevelop
Compiled methods which throws/catches exceptions will be 
deopt and intp.
src/share/vm/opto/c2_globals.hpp
BaseFootPrintEstimateOpenJDK6size_truntime256*M
range(0, max_uintx)
product
Estimate of footprint other than Java Heap
src/share/vm/runtime/globals.hpp
BciProfileWidthOpenJDK6intxruntime2develop
Number of return bci's to record in ret profile
src/share/vm/runtime/globals.hpp
BiasedLockingBulkRebiasThresholdOpenJDK6Deprecated in JDK15
Obsoleted in JDK18
Expired in JDK19
intxruntime20
range(0, max_intx)
product
Threshold of number of revocations per type to try to 
rebias all objects in the heap of that type
src/share/vm/runtime/globals.hpp
BiasedLockingBulkRevokeThresholdOpenJDK6Deprecated in JDK15
Obsoleted in JDK18
Expired in JDK19
intxruntime40
range(0, max_intx)
product
Threshold of number of revocations per type to permanently 
revoke biases of all objects in the heap of that type
src/share/vm/runtime/globals.hpp
BiasedLockingDecayTimeOpenJDK6Deprecated in JDK15
Obsoleted in JDK18
Expired in JDK19
intxruntime25000
range(500, max_intx)
product
Decay time (in milliseconds) to re-enable bulk rebiasing of a 
type after previous bulk rebias
src/share/vm/runtime/globals.hpp
BiasedLockingStartupDelayOpenJDK6Deprecated in JDK15
Obsoleted in JDK18
Expired in JDK19
intxruntime4000
range(0, (intx)(max_jint-(max_jint%PeriodicTask::interval_gran)))
product
Number of milliseconds to wait before enabling biased locking
src/share/vm/runtime/globals.hpp
BinarySwitchThresholdOpenJDK6intxruntime5develop
Minimal number of lookupswitch entries for rewriting to binary 
switch
src/share/vm/runtime/globals.hpp
BindCMSThreadToCPUOpenJDK6boolruntimefalsediagnostic
Bind CMS Thread to CPU if possible
src/share/vm/runtime/globals.hpp
BindGCTaskThreadsToCPUsOpenJDK6Obsoleted in JDK14
Expired in JDK16
boolruntimefalseproduct
Bind GCTaskThreads to CPUs if possible
src/share/vm/runtime/globals.hpp
BlockCopyLowLimitOpenJDK6intxsparc2048
range(1, max_jint)
product
Minimum size in bytes when block copy will be used
src/cpu/sparc/vm/globals_sparc.hpp
BlockLayoutByFrequencyOpenJDK6boolc2trueproduct
Use edge frequencies to drive block ordering
src/share/vm/opto/c2_globals.hpp
BlockLayoutMinDiamondPercentageOpenJDK6intxc220
range(0, 100)
product
Miniumum %% of a successor (predecessor) for which block 
layout a will allow a fork (join) in a single chain
src/share/vm/opto/c2_globals.hpp
BlockLayoutRotateLoopsOpenJDK6boolc2trueproduct
Allow back branches to be fall throughs in the block layout
src/share/vm/opto/c2_globals.hpp
BlockOffsetArrayUseUnallocatedBlockOpenJDK6boolruntimefalsediagnostic
Maintain _unallocated_block in BlockOffsetArray 
(currently applicable only to CMS collector)
src/share/vm/runtime/globals.hpp
BlockZeroingLowLimitOpenJDK6intxaarch64256
range(1, max_jint)
product
Minimum size in bytes when block zeroing will be used
src/cpu/aarch64/vm/globals_aarch64.hpp
BlockZeroingLowLimitOpenJDK6intxsparc2048
range(1, max_jint)
product
Minimum size in bytes when block zeroing will be used
src/cpu/sparc/vm/globals_sparc.hpp
BootstrapJVMCIOpenJDK9booljvmcifalseexperimental
Bootstrap JVMCI before running Java main method
src/share/vm/jvmci/jvmci_globals.hpp
BranchOnRegisterOpenJDK6Obsoleted in JDK15
Expired in JDK16
boolc2falseproduct
Use Sparc V9 branch-on-register opcodes
src/share/vm/opto/c2_globals.hpp
BreakAtNodeOpenJDK6intxc20notproduct
Break at construction of this Node (either _idx or _debug_idx)
src/share/vm/opto/c2_globals.hpp
BreakAtWarningOpenJDK6boolruntimefalsedevelop
Execute breakpoint upon encountering VM warning
src/share/vm/runtime/globals.hpp
BytecodeVerificationLocalOpenJDK6boolruntimefalseproduct
Enable the Java bytecode verifier for local classes
src/share/vm/runtime/globals.hpp
BytecodeVerificationRemoteOpenJDK6boolruntimetrueproduct
Enable the Java bytecode verifier for remote classes
src/share/vm/runtime/globals.hpp
C1BreakpointOpenJDK6boolc1falsedevelop
Sets a breakpoint at entry of each compiled method
src/share/vm/c1/c1_globals.hpp
C1OptimizeVirtualCallProfilingOpenJDK6boolc1trueproduct
Use CHA and exact type results at call sites when updating MDOs
src/share/vm/c1/c1_globals.hpp
C1ProfileBranchesOpenJDK6boolc1trueproduct
Profile branches when generating code for updating MDOs
src/share/vm/c1/c1_globals.hpp
C1ProfileCallsOpenJDK6boolc1trueproduct
Profile calls when generating code for updating MDOs
src/share/vm/c1/c1_globals.hpp
C1ProfileCheckcastsOpenJDK6boolc1trueproduct
Profile checkcasts when generating code for updating MDOs
src/share/vm/c1/c1_globals.hpp
C1ProfileInlinedCallsOpenJDK6boolc1trueproduct
Profile inlined calls when generating code for updating MDOs
src/share/vm/c1/c1_globals.hpp
C1ProfileVirtualCallsOpenJDK6boolc1trueproduct
Profile virtual calls when generating code for updating MDOs
src/share/vm/c1/c1_globals.hpp
C1UpdateMethodDataOpenJDK6boolc1trueInTieredproduct
Update MethodData*s in Tier1-generated code
src/share/vm/c1/c1_globals.hpp
CIBreakAtOSROpenJDK6intxruntime-1develop
The id of osr compilation to break at
src/share/vm/runtime/globals.hpp
CIBreakAtOpenJDK6intxruntime-1develop
The id of compilation to break at
src/share/vm/runtime/globals.hpp
CICompileNativesOpenJDK6boolruntimetruedevelop
compile native methods if supported by the compiler
src/share/vm/runtime/globals.hpp
CICompileOSROpenJDK6boolaarch64c1truedefine_pd_global
src/cpu/aarch64/vm/c1_globals_aarch64.hpp
CICompileOSROpenJDK6boolaarch64c2truedefine_pd_global
src/cpu/aarch64/vm/c2_globals_aarch64.hpp
CICompileOSROpenJDK6boolarmc1truedefine_pd_global
src/cpu/arm/vm/c1_globals_arm.hpp
CICompileOSROpenJDK6boolarmc2truedefine_pd_global
src/cpu/arm/vm/c2_globals_arm.hpp
CICompileOSROpenJDK6boolruntimedevelop_pd
compile on stack replacement methods if supported by the 
compiler
src/share/vm/runtime/globals.hpp
CICompileOSROpenJDK6boolppcc1truedefine_pd_global
src/cpu/ppc/vm/c1_globals_ppc.hpp
CICompileOSROpenJDK6boolppcc2truedefine_pd_global
src/cpu/ppc/vm/c2_globals_ppc.hpp
CICompileOSROpenJDK6bools390c1truedefine_pd_global
src/cpu/s390/vm/c1_globals_s390.hpp
CICompileOSROpenJDK6bools390c2truedefine_pd_global
src/cpu/s390/vm/c2_globals_s390.hpp
CICompileOSROpenJDK6boolsparcc1truedefine_pd_global
src/cpu/sparc/vm/c1_globals_sparc.hpp
CICompileOSROpenJDK6boolsparcc2truedefine_pd_global
src/cpu/sparc/vm/c2_globals_sparc.hpp
CICompileOSROpenJDK6boolx86c1truedefine_pd_global
src/cpu/x86/vm/c1_globals_x86.hpp
CICompileOSROpenJDK6boolx86c2truedefine_pd_global
src/cpu/x86/vm/c2_globals_x86.hpp
CICompileOSROpenJDK6boolzerosharktruedefine_pd_global
src/cpu/zero/vm/shark_globals_zero.hpp
CICompilerCountPerCPUOpenJDK6boolruntimefalseproduct
1 compiler thread for log(N CPUs)
src/share/vm/runtime/globals.hpp
CICompilerCountOpenJDK6intxruntimeCI_COMPILER_COUNT
range(0, max_jint)
product
Number of compiler threads to run
src/share/vm/runtime/globals.hpp
CICountOSROpenJDK6boolruntimefalsedevelop
use a separate counter when assigning ids to osr compilations
src/share/vm/runtime/globals.hpp
CICrashAtOpenJDK8intxruntime-1notproduct
id of compilation to trigger assert in compiler thread for 
the purpose of testing, e.g. generation of replay data
src/share/vm/runtime/globals.hpp
CIFireOOMAtOpenJDK6intxruntime-1develop
Fire OutOfMemoryErrors throughout CI for testing the compiler 
(non-negative value throws OOM after this many CI accesses 
in each compile)
src/share/vm/runtime/globals.hpp
CIObjectFactoryVerifyOpenJDK6boolruntimefalsenotproduct
enable potentially expensive verification in ciObjectFactory
src/share/vm/runtime/globals.hpp
CIPrintCompileQueueOpenJDK6boolruntimefalsediagnostic
display the contents of the compile queue whenever a 
compilation is enqueued
src/share/vm/runtime/globals.hpp
CIPrintCompilerNameOpenJDK6boolruntimefalsedevelop
when CIPrint is active, print the name of the active compiler
src/share/vm/runtime/globals.hpp
CIPrintMethodCodesOpenJDK6boolruntimefalsedevelop
print method bytecodes of the compiled code
src/share/vm/runtime/globals.hpp
CIPrintRequestsOpenJDK6boolruntimefalsedevelop
display every request for compilation
src/share/vm/runtime/globals.hpp
CIPrintTypeFlowOpenJDK6boolruntimefalsedevelop
print the results of ciTypeFlow analysis
src/share/vm/runtime/globals.hpp
CIStartOSROpenJDK6intxruntime0develop
The id of the first osr compilation to permit 
(CICountOSR must be on)
src/share/vm/runtime/globals.hpp
CIStartOpenJDK6intxruntime0develop
The id of the first compilation to permit
src/share/vm/runtime/globals.hpp
CIStopOSROpenJDK6intxruntimemax_jintdevelop
The id of the last osr compilation to permit 
(CICountOSR must be on)
src/share/vm/runtime/globals.hpp
CIStopOpenJDK6intxruntimemax_jintdevelop
The id of the last compilation to permit
src/share/vm/runtime/globals.hpp
CITimeEachOpenJDK6boolruntimefalsedevelop
display timing information after each successful compilation
src/share/vm/runtime/globals.hpp
CITimeVerboseOpenJDK9boolruntimefalsedevelop
be more verbose in compilation timings
src/share/vm/runtime/globals.hpp
CITimeOpenJDK6boolruntimefalseproduct
collect timing information for compilation
src/share/vm/runtime/globals.hpp
CITraceTypeFlowOpenJDK6boolruntimefalsedevelop
detailed per-bytecode tracing of ciTypeFlow analysis
src/share/vm/runtime/globals.hpp
CMSAbortSemanticsOpenJDK6Obsoleted in JDK14
Expired in JDK15
boolruntimefalseproduct
Whether abort-on-overflow semantics is implemented
src/share/vm/runtime/globals.hpp
CMSAbortablePrecleanMinWorkPerIterationOpenJDK6Obsoleted in JDK14
Expired in JDK15
uintxruntime100
range(0, max_uintx)
product
Nominal minimum work per abortable preclean iteration
src/share/vm/runtime/globals.hpp
CMSAbortablePrecleanWaitMillisOpenJDK6intxruntime100
range(0, max_intx)
manageable
Time that we sleep between iterations when not given 
enough work per iteration
src/share/vm/runtime/globals.hpp
CMSBitMapYieldQuantumOpenJDK6Obsoleted in JDK14
Expired in JDK15
size_truntime10*M
range(1, max_uintx)
product
Bitmap operations should process at most this many bits 
between yields
src/share/vm/runtime/globals.hpp
CMSBootstrapOccupancyOpenJDK6Obsoleted in JDK14
Expired in JDK15
uintxruntime50
range(0, 100)
product
Percentage CMS generation occupancy at which to 
initiate CMS collection for bootstrapping collection stats
src/share/vm/runtime/globals.hpp
CMSCheckIntervalOpenJDK8uintxruntime1000develop
Interval in milliseconds that CMS thread checks if it 
should start a collection cycle
src/share/vm/runtime/globals.hpp
CMSClassUnloadingEnabledOpenJDK6Obsoleted in JDK14
Expired in JDK15
boolruntimetrueproduct
Whether class unloading enabled when using CMS GC
src/share/vm/runtime/globals.hpp
CMSClassUnloadingMaxIntervalOpenJDK6Obsoleted in JDK14
Expired in JDK15
uintxruntime0
range(0, max_uintx)
product
When CMS class unloading is enabled, the maximum CMS cycle 
count for which classes may not be unloaded
src/share/vm/runtime/globals.hpp
CMSCleanOnEnterOpenJDK6Obsoleted in JDK14
Expired in JDK15
boolruntimetrueproduct
Clean-on-enter optimization for reducing number of dirty cards
src/share/vm/runtime/globals.hpp
CMSConcMarkMultipleOpenJDK6Obsoleted in JDK14
Expired in JDK15
size_truntime32
range(1, SIZE_MAX / 4096)
product
Size (in cards) of CMS concurrent MT marking task
src/share/vm/runtime/globals.hpp
CMSConcurrentMTEnabledOpenJDK6Obsoleted in JDK14
Expired in JDK15
boolruntimetrueproduct
Whether multi-threaded concurrent work enabled 
(effective only if ParNewGC)
src/share/vm/runtime/globals.hpp
CMSCoordinatorYieldSleepCountOpenJDK6Obsoleted in JDK14
Expired in JDK15
uintxruntime10
range(0, max_juint)
product
Number of times the coordinator GC thread will sleep while 
yielding before giving up and resuming GC
src/share/vm/runtime/globals.hpp
CMSEdenChunksRecordAlwaysOpenJDK7Obsoleted in JDK14
Expired in JDK15
boolruntimetrueproduct
Always record eden chunks used for the parallel initial mark 
or remark of eden
src/share/vm/runtime/globals.hpp
CMSExpAvgFactorOpenJDK6Obsoleted in JDK14
Expired in JDK15
uintxruntime50
range(0, 100)
product
Percentage (0-100) used to weight the current sample when 
computing exponential averages for CMS statistics
src/share/vm/runtime/globals.hpp
CMSExtrapolateSweepOpenJDK6Obsoleted in JDK14
Expired in JDK15
boolruntimefalseproduct
CMS: cushion for block demand during sweep
src/share/vm/runtime/globals.hpp
CMSIncrementalSafetyFactorOpenJDK6Obsoleted in JDK14
Expired in JDK15
uintxruntime10
range(0, 100)
product
Percentage (0-100) used to add conservatism when computing the 
duty cycle
src/share/vm/runtime/globals.hpp
CMSIndexedFreeListReplenishOpenJDK6Obsoleted in JDK14
Expired in JDK15
uintxruntime4
range(1, max_uintx)
product
Replenish an indexed free list with this number of chunks
src/share/vm/runtime/globals.hpp
CMSInitiatingOccupancyFractionOpenJDK6Obsoleted in JDK14
Expired in JDK15
intxruntime-1
range(min_intx, 100)
product
Percentage CMS generation occupancy to start a CMS collection 
cycle. A negative value means that CMSTriggerRatio is used
src/share/vm/runtime/globals.hpp
CMSIsTooFullPercentageOpenJDK6Obsoleted in JDK14
Expired in JDK15
uintxruntime98
range(0, 100)
product
An absolute ceiling above which CMS will always consider the 
unloading of classes when class unloading is enabled
src/share/vm/runtime/globals.hpp
CMSLargeCoalSurplusPercentOpenJDK6Obsoleted in JDK14
Expired in JDK15
doubleruntime0.95
range(0.0, DBL_MAX)
product
CMS: the factor by which to inflate estimated demand of large 
block sizes to prevent coalescing with an adjoining block
src/share/vm/runtime/globals.hpp
CMSLargeSplitSurplusPercentOpenJDK6Obsoleted in JDK14
Expired in JDK15
doubleruntime1.00
range(0.0, DBL_MAX)
product
CMS: the factor by which to inflate estimated demand of large 
block sizes to prevent splitting to supply demand for smaller 
blocks
src/share/vm/runtime/globals.hpp
CMSLoopWarnOpenJDK6Obsoleted in JDK14
Expired in JDK15
boolruntimefalseproduct
Warn in case of excessive CMS looping
src/share/vm/runtime/globals.hpp
CMSMarkStackOverflowALotOpenJDK6boolruntimefalsenotproduct
Simulate frequent marking stack / work queue overflow
src/share/vm/runtime/globals.hpp
CMSMarkStackOverflowIntervalOpenJDK6uintxruntime1000notproduct
An 'interval' counter that determines how frequently 
to simulate overflow; a smaller number increases frequency
src/share/vm/runtime/globals.hpp
CMSMaxAbortablePrecleanLoopsOpenJDK6Obsoleted in JDK14
Expired in JDK15
uintxruntime0
range(0, max_uintx)
product
Maximum number of abortable preclean iterations, if > 0
src/share/vm/runtime/globals.hpp
CMSMaxAbortablePrecleanTimeOpenJDK6Obsoleted in JDK14
Expired in JDK15
intxruntime5000
range(0, max_intx)
product
Maximum time in abortable preclean (in milliseconds)
src/share/vm/runtime/globals.hpp
CMSOldPLABMaxOpenJDK6Obsoleted in JDK14
Expired in JDK15
size_truntime1024
range(1, max_uintx)
product
Maximum size of CMS gen promotion LAB caches per worker 
per block size
src/share/vm/runtime/globals.hpp
CMSOldPLABMinOpenJDK6Obsoleted in JDK14
Expired in JDK15
size_truntime16
range(1, max_uintx)
product
Minimum size of CMS gen promotion LAB caches per worker 
per block size
src/share/vm/runtime/globals.hpp
CMSOldPLABNumRefillsOpenJDK6Obsoleted in JDK14
Expired in JDK15
uintxruntime4
range(1, max_uintx)
product
Nominal number of refills of CMS gen promotion LAB cache 
per worker per block size
src/share/vm/runtime/globals.hpp
CMSOldPLABReactivityFactorOpenJDK6Obsoleted in JDK14
Expired in JDK15
uintxruntime2
range(1, max_uintx)
product
The gain in the feedback loop for on-the-fly PLAB resizing 
during a scavenge
src/share/vm/runtime/globals.hpp
CMSOldPLABResizeQuickerOpenJDK6Obsoleted in JDK14
Expired in JDK15
boolruntimefalseproduct
React on-the-fly during a scavenge to a sudden 
change in block demand rate
src/share/vm/runtime/globals.hpp
CMSOldPLABToleranceFactorOpenJDK6Obsoleted in JDK14
Expired in JDK15
uintxruntime4
range(1, max_uintx)
product
The tolerance of the phase-change detector for on-the-fly 
PLAB resizing during a scavenge
src/share/vm/runtime/globals.hpp
CMSPLABRecordAlwaysOpenJDK6Obsoleted in JDK14
Expired in JDK15
boolruntimetrueproduct
Always record survivor space PLAB boundaries (effective only 
if CMSParallelSurvivorRemarkEnabled)
src/share/vm/runtime/globals.hpp
CMSParallelInitialMarkEnabledOpenJDK7Obsoleted in JDK14
Expired in JDK15
boolruntimetrueproduct
Use the parallel initial mark.
src/share/vm/runtime/globals.hpp
CMSParallelRemarkEnabledOpenJDK6Obsoleted in JDK14
Expired in JDK15
boolruntimetrueproduct
Whether parallel remark enabled (only if ParNewGC)
src/share/vm/runtime/globals.hpp
CMSParallelSurvivorRemarkEnabledOpenJDK6Obsoleted in JDK14
Expired in JDK15
boolruntimetrueproduct
Whether parallel remark of survivor space 
enabled (effective only if CMSParallelRemarkEnabled)
src/share/vm/runtime/globals.hpp
CMSPrecleanDenominatorOpenJDK6Obsoleted in JDK14
Expired in JDK15
uintxruntime3
range(1, max_uintx)
product
CMSPrecleanNumerator:CMSPrecleanDenominator yields convergence 
ratio
src/share/vm/runtime/globals.hpp
CMSPrecleanIterOpenJDK6Obsoleted in JDK14
Expired in JDK15
uintxruntime3
range(0, 9)
product
Maximum number of precleaning iteration passes
src/share/vm/runtime/globals.hpp
CMSPrecleanNumeratorOpenJDK6Obsoleted in JDK14
Expired in JDK15
uintxruntime2
range(0, max_uintx-1)
product
CMSPrecleanNumerator:CMSPrecleanDenominator yields convergence 
ratio
src/share/vm/runtime/globals.hpp
CMSPrecleanRefLists1OpenJDK6Obsoleted in JDK14
Expired in JDK15
boolruntimetrueproduct
Preclean ref lists during (initial) preclean phase
src/share/vm/runtime/globals.hpp
CMSPrecleanRefLists2OpenJDK6Obsoleted in JDK14
Expired in JDK15
boolruntimefalseproduct
Preclean ref lists during abortable preclean phase
src/share/vm/runtime/globals.hpp
CMSPrecleanSurvivors1OpenJDK6Obsoleted in JDK14
Expired in JDK15
boolruntimefalseproduct
Preclean survivors during (initial) preclean phase
src/share/vm/runtime/globals.hpp
CMSPrecleanSurvivors2OpenJDK6Obsoleted in JDK14
Expired in JDK15
boolruntimetrueproduct
Preclean survivors during abortable preclean phase
src/share/vm/runtime/globals.hpp
CMSPrecleanThresholdOpenJDK6Obsoleted in JDK14
Expired in JDK15
uintxruntime1000
range(100, max_uintx)
product
Do not iterate again if number of dirty cards is less than this
src/share/vm/runtime/globals.hpp
CMSPrecleaningEnabledOpenJDK6Obsoleted in JDK14
Expired in JDK15
boolruntimetrueproduct
Whether concurrent precleaning enabled
src/share/vm/runtime/globals.hpp
CMSPrintChunksInDumpOpenJDK6Obsoleted in JDK14
Expired in JDK15
boolruntimefalseproduct
If logging for the 'gc' and 'promotion' tags is enabled on
trace level include more detailed information about the
free chunks
src/share/vm/runtime/globals.hpp
CMSPrintObjectsInDumpOpenJDK6Obsoleted in JDK14
Expired in JDK15
boolruntimefalseproduct
If logging for the 'gc' and 'promotion' tags is enabled on
trace level include more detailed information about the
allocated objects
src/share/vm/runtime/globals.hpp
CMSRemarkVerifyVariantOpenJDK6Obsoleted in JDK14
Expired in JDK15
uintxruntime1
range(1, 2)
product
Choose variant (1,2) of verification following remark
src/share/vm/runtime/globals.hpp
CMSReplenishIntermediateOpenJDK6Obsoleted in JDK14
Expired in JDK15
boolruntimetrueproduct
Replenish all intermediate free-list caches
src/share/vm/runtime/globals.hpp
CMSRescanMultipleOpenJDK6Obsoleted in JDK14
Expired in JDK15
size_truntime32
range(1, SIZE_MAX / 4096)
product
Size (in cards) of CMS parallel rescan task
src/share/vm/runtime/globals.hpp
CMSSamplingGrainOpenJDK6Obsoleted in JDK14
Expired in JDK15
uintxruntime16*K
range(ObjectAlignmentInBytes, max_uintx)
product
The minimum distance between eden samples for CMS (see above)
src/share/vm/runtime/globals.hpp
CMSScavengeBeforeRemarkOpenJDK6Obsoleted in JDK14
Expired in JDK15
boolruntimefalseproduct
Attempt scavenge before the CMS remark step
src/share/vm/runtime/globals.hpp
CMSScheduleRemarkEdenPenetrationOpenJDK6Obsoleted in JDK14
Expired in JDK15
uintxruntime50
range(0, 100)
product
The Eden occupancy percentage (0-100) at which 
to try and schedule remark pause
src/share/vm/runtime/globals.hpp
CMSScheduleRemarkEdenSizeThresholdOpenJDK6Obsoleted in JDK14
Expired in JDK15
size_truntime2*M
range(0, max_uintx)
product
If Eden size is below this, do not try to schedule remark
src/share/vm/runtime/globals.hpp
CMSScheduleRemarkSamplingRatioOpenJDK6Obsoleted in JDK14
Expired in JDK15
uintxruntime5
range(1, max_uintx)
product
Start sampling eden top at least before young gen 
occupancy reaches 1/ of the size at which 
we plan to schedule remark
src/share/vm/runtime/globals.hpp
CMSSmallCoalSurplusPercentOpenJDK6Obsoleted in JDK14
Expired in JDK15
doubleruntime1.05
range(0.0, DBL_MAX)
product
CMS: the factor by which to inflate estimated demand of small 
block sizes to prevent coalescing with an adjoining block
src/share/vm/runtime/globals.hpp
CMSSmallSplitSurplusPercentOpenJDK6Obsoleted in JDK14
Expired in JDK15
doubleruntime1.10
range(0.0, DBL_MAX)
product
CMS: the factor by which to inflate estimated demand of small 
block sizes to prevent splitting to supply demand for smaller 
blocks
src/share/vm/runtime/globals.hpp
CMSSplitIndexedFreeListBlocksOpenJDK6Obsoleted in JDK14
Expired in JDK15
boolruntimetrueproduct
When satisfying batched demand, split blocks from the 
IndexedFreeList whose size is a multiple of requested size
src/share/vm/runtime/globals.hpp
CMSTestInFreeListOpenJDK6boolruntimefalsedevelop
Check if the coalesced range is already in the 
free lists as claimed
src/share/vm/runtime/globals.hpp
CMSTriggerIntervalOpenJDK8intxruntime-1
range(-1, max_intx)
manageable
Commence a CMS collection cycle (at least) every so many 
milliseconds (0 permanently, -1 disabled)
src/share/vm/runtime/globals.hpp
CMSTriggerRatioOpenJDK6Obsoleted in JDK14
Expired in JDK15
uintxruntime80
range(0, 100)
product
Percentage of MinHeapFreeRatio in CMS generation that is 
allocated before a CMS collection cycle commences
src/share/vm/runtime/globals.hpp
CMSVerifyReturnedBytesOpenJDK6boolruntimefalsenotproduct
Check that all the garbage collected was returned to the 
free lists
src/share/vm/runtime/globals.hpp
CMSWaitDurationOpenJDK6intxruntime2000
range(min_jint, max_jint)
manageable
Time in milliseconds that CMS thread waits for young GC
src/share/vm/runtime/globals.hpp
CMSWorkQueueDrainThresholdOpenJDK6Obsoleted in JDK14
Expired in JDK15
uintxruntime10
range(1, max_juint)
product
Don't drain below this size per parallel worker/thief
src/share/vm/runtime/globals.hpp
CMSYieldSleepCountOpenJDK6Obsoleted in JDK14
Expired in JDK15
uintxruntime0
range(0, max_juint)
product
Number of times a GC thread (minus the coordinator) 
will sleep while yielding before giving up and resuming GC
src/share/vm/runtime/globals.hpp
CMSYieldOpenJDK6Obsoleted in JDK14
Expired in JDK15
boolruntimetrueproduct
Yield between steps of CMS
src/share/vm/runtime/globals.hpp
CMSYoungGenPerWorkerOpenJDK6Obsoleted in JDK14
Expired in JDK15
uintxaarch6464*Mdefine_pd_global
// default max size of CMS young gen, per GC worker thread
src/cpu/aarch64/vm/globals_aarch64.hpp
CMSYoungGenPerWorkerOpenJDK6Obsoleted in JDK14
Expired in JDK15
size_tarm16*Mdefine_pd_global
// default max size of CMS young gen, per GC worker thread
src/cpu/arm/vm/globals_arm.hpp
CMSYoungGenPerWorkerOpenJDK6Obsoleted in JDK14
Expired in JDK15
size_truntimeproduct_pd
The maximum size of young gen chosen by default per GC worker 
thread available
src/share/vm/runtime/globals.hpp
CMSYoungGenPerWorkerOpenJDK6Obsoleted in JDK14
Expired in JDK15
size_tppc16*Mdefine_pd_global
// Default max size of CMS young gen, per GC worker thread.
src/cpu/ppc/vm/globals_ppc.hpp
CMSYoungGenPerWorkerOpenJDK6Obsoleted in JDK14
Expired in JDK15
size_ts39016*Mdefine_pd_global
// Default max size of CMS young gen, per GC worker thread.
src/cpu/s390/vm/globals_s390.hpp
CMSYoungGenPerWorkerOpenJDK6Obsoleted in JDK14
Expired in JDK15
size_tsparc16*Mdefine_pd_global
// default max size of CMS young gen, per GC worker thread
src/cpu/sparc/vm/globals_sparc.hpp
CMSYoungGenPerWorkerOpenJDK6Obsoleted in JDK14
Expired in JDK15
size_tx8664*Mdefine_pd_global
// default max size of CMS young gen, per GC worker thread
src/cpu/x86/vm/globals_x86.hpp
CMSYoungGenPerWorkerOpenJDK6Obsoleted in JDK14
Expired in JDK15
size_tzero16*Mdefine_pd_global
// default max size of CMS young gen, per GC worker thread
src/cpu/zero/vm/globals_zero.hpp
CMS_FLSPaddingOpenJDK6Obsoleted in JDK14
Expired in JDK15
uintxruntime1
range(0, max_juint)
product
The multiple of deviation from mean to use for buffering 
against volatility in free list demand
src/share/vm/runtime/globals.hpp
CMS_FLSWeightOpenJDK6Obsoleted in JDK14
Expired in JDK15
uintxruntime75
range(0, 100)
product
Percentage (0-100) used to weight the current sample when 
computing exponentially decaying averages for CMS FLS 
statistics
src/share/vm/runtime/globals.hpp
CMS_SweepPaddingOpenJDK6Obsoleted in JDK14
Expired in JDK15
uintxruntime1
range(0, max_juint)
product
The multiple of deviation from mean to use for buffering 
against volatility in inter-sweep duration
src/share/vm/runtime/globals.hpp
CMS_SweepTimerThresholdMillisOpenJDK6Obsoleted in JDK14
Expired in JDK15
uintxruntime10
range(0, max_uintx)
product
Skip block flux-rate sampling for an epoch unless inter-sweep 
duration exceeds this threshold in milliseconds
src/share/vm/runtime/globals.hpp
CMS_SweepWeightOpenJDK6Obsoleted in JDK14
Expired in JDK15
uintxruntime75
range(0, 100)
product
Percentage (0-100) used to weight the current sample when 
computing exponentially decaying average for inter-sweep 
duration
src/share/vm/runtime/globals.hpp
CPUForCMSThreadOpenJDK6uintxruntime0
range(0, max_juint)
diagnostic
When BindCMSThreadToCPU is true, the CPU to bind CMS thread to
src/share/vm/runtime/globals.hpp
CSEArrayLengthOpenJDK6boolaarch64c1falsedefine_pd_global
src/cpu/aarch64/vm/c1_globals_aarch64.hpp
CSEArrayLengthOpenJDK6boolarmc1truedefine_pd_global
src/cpu/arm/vm/c1_globals_arm.hpp
CSEArrayLengthOpenJDK6boolc1develop_pd
Create separate nodes for length in array accesses
src/share/vm/c1/c1_globals.hpp
CSEArrayLengthOpenJDK6boolppcc1truedefine_pd_global
src/cpu/ppc/vm/c1_globals_ppc.hpp
CSEArrayLengthOpenJDK6bools390c1truedefine_pd_global
src/cpu/s390/vm/c1_globals_s390.hpp
CSEArrayLengthOpenJDK6boolsparcc1truedefine_pd_global
src/cpu/sparc/vm/c1_globals_sparc.hpp
CSEArrayLengthOpenJDK6boolx86c1falsedefine_pd_global
src/cpu/x86/vm/c1_globals_x86.hpp
CanonicalizeNodesOpenJDK6boolc1truedevelop
Canonicalize graph nodes
src/share/vm/c1/c1_globals.hpp
CheckAssertionStatusDirectivesOpenJDK6Obsoleted in JDK11
Expired in JDK12
boolruntimefalsenotproduct
Temporary - see javaClasses.cpp
src/share/vm/runtime/globals.hpp
CheckCompressedOopsOpenJDK6boolruntimetruenotproduct
Generate checks in encoding/decoding code in debug VM
src/share/vm/runtime/globals.hpp
CheckEndorsedAndExtDirsOpenJDK7Deprecated in JDK10
Obsoleted in JDK11
Expired in JDK12
boolruntimefalseproduct
Verify the endorsed and extension directories are not used
src/share/vm/runtime/globals.hpp
CheckIntrinsicsOpenJDK9boolruntimetruediagnostic
When a class C is loaded, check that 
(1) all intrinsics defined by the VM for class C are present 
in the loaded class file and are marked with the 
@HotSpotIntrinsicCandidate annotation, that 
(2) there is an intrinsic registered for all loaded methods 
that are annotated with the @HotSpotIntrinsicCandidate 
annotation, and that 
(3) no orphan methods exist for class C (i.e., methods for 
which the VM declares an intrinsic but that are not declared 
in the loaded class C. 
Check (3) is available only in debug builds.
src/share/vm/runtime/globals.hpp
CheckJNICallsOpenJDK6boolruntimefalseproduct
Verify all arguments to JNI calls
src/share/vm/runtime/globals.hpp
CheckMemoryInitializationOpenJDK6boolruntimefalsenotproduct
Check memory initialization
src/share/vm/runtime/globals.hpp
CheckUnhandledOopsOpenJDK6boolruntimefalsedevelop
Check for unhandled oops in VM code
src/share/vm/runtime/globals.hpp
CheckZapUnusedHeapAreaOpenJDK6boolruntimefalsedevelop
Check zapping of unused heap space
src/share/vm/runtime/globals.hpp
ClassUnloadingWithConcurrentMarkOpenJDK8boolruntimetrueproduct
Do unloading of classes with a concurrent marking cycle
src/share/vm/runtime/globals.hpp
ClassUnloadingOpenJDK6boolruntimetrueproduct
Do unloading of classes
src/share/vm/runtime/globals.hpp
CleanChunkPoolAsyncOpenJDK6boolruntimetruedevelop
Clean the chunk pool asynchronously
src/share/vm/runtime/globals.hpp
ClearFPUAtParkOpenJDK6intxruntime0experimental
(Unsafe, Unstable)
src/share/vm/runtime/globals.hpp
ClipInliningOpenJDK6boolruntimetrueproduct
Clip inlining if aggregate method exceeds DesiredMethodLimit
src/share/vm/runtime/globals.hpp
CodeCacheExpansionSizeOpenJDK6intxaarch64c132*Kdefine_pd_global
src/cpu/aarch64/vm/c1_globals_aarch64.hpp
CodeCacheExpansionSizeOpenJDK6intxaarch64c264*Kdefine_pd_global
src/cpu/aarch64/vm/c2_globals_aarch64.hpp
CodeCacheExpansionSizeOpenJDK6size_tarmc132*Kdefine_pd_global
src/cpu/arm/vm/c1_globals_arm.hpp
CodeCacheExpansionSizeOpenJDK6uintxruntimeproduct_pd
Code cache expansion size (in bytes)
src/share/vm/runtime/globals.hpp
CodeCacheExpansionSizeOpenJDK6intxppcc132*Kdefine_pd_global
src/cpu/ppc/vm/c1_globals_ppc.hpp
CodeCacheExpansionSizeOpenJDK6intxppcc264*Kdefine_pd_global
src/cpu/ppc/vm/c2_globals_ppc.hpp
CodeCacheExpansionSizeOpenJDK6uintxs390c132*Kdefine_pd_global
src/cpu/s390/vm/c1_globals_s390.hpp
CodeCacheExpansionSizeOpenJDK6uintxs390c264*Kdefine_pd_global
src/cpu/s390/vm/c2_globals_s390.hpp
CodeCacheExpansionSizeOpenJDK6intxsparcc132*Kdefine_pd_global
src/cpu/sparc/vm/c1_globals_sparc.hpp
CodeCacheExpansionSizeOpenJDK6intxsparcc232*Kdefine_pd_global
src/cpu/sparc/vm/c2_globals_sparc.hpp
CodeCacheExpansionSizeOpenJDK6intxx86c132*Kdefine_pd_global
src/cpu/x86/vm/c1_globals_x86.hpp
CodeCacheExpansionSizeOpenJDK6intxx86c232*Kdefine_pd_global
src/cpu/x86/vm/c2_globals_x86.hpp
CodeCacheExpansionSizeOpenJDK6intxzeroshark32*Kdefine_pd_global
src/cpu/zero/vm/shark_globals_zero.hpp
CodeCacheMinBlockLengthOpenJDK6uintxaarch64c11define_pd_global
src/cpu/aarch64/vm/c1_globals_aarch64.hpp
CodeCacheMinBlockLengthOpenJDK6uintxaarch64c24define_pd_global
src/cpu/aarch64/vm/c2_globals_aarch64.hpp
CodeCacheMinBlockLengthOpenJDK6uintxarmc11define_pd_global
src/cpu/arm/vm/c1_globals_arm.hpp
CodeCacheMinBlockLengthOpenJDK6uintxruntimediagnostic_pd
Minimum number of segments in a code cache block
src/share/vm/runtime/globals.hpp
CodeCacheMinBlockLengthOpenJDK6uintxppcc11define_pd_global
src/cpu/ppc/vm/c1_globals_ppc.hpp
CodeCacheMinBlockLengthOpenJDK6uintxppcc24define_pd_global
src/cpu/ppc/vm/c2_globals_ppc.hpp
CodeCacheMinBlockLengthOpenJDK6uintxs390c11define_pd_global
src/cpu/s390/vm/c1_globals_s390.hpp
CodeCacheMinBlockLengthOpenJDK6uintxs390c24define_pd_global
src/cpu/s390/vm/c2_globals_s390.hpp
CodeCacheMinBlockLengthOpenJDK6uintxsparcc11define_pd_global
src/cpu/sparc/vm/c1_globals_sparc.hpp
CodeCacheMinBlockLengthOpenJDK6uintxsparcc24define_pd_global
src/cpu/sparc/vm/c2_globals_sparc.hpp
CodeCacheMinBlockLengthOpenJDK6uintxx86c11define_pd_global
src/cpu/x86/vm/c1_globals_x86.hpp
CodeCacheMinBlockLengthOpenJDK6uintxx86c24define_pd_global
src/cpu/x86/vm/c2_globals_x86.hpp
CodeCacheMinBlockLengthOpenJDK6uintxzeroshark1define_pd_global
src/cpu/zero/vm/shark_globals_zero.hpp
CodeCacheMinimumUseSpaceOpenJDK8uintxaarch64c1400*Kdefine_pd_global
src/cpu/aarch64/vm/c1_globals_aarch64.hpp
CodeCacheMinimumUseSpaceOpenJDK8uintxaarch64c2400*Kdefine_pd_global
src/cpu/aarch64/vm/c2_globals_aarch64.hpp
CodeCacheMinimumUseSpaceOpenJDK8size_tarmc1400*Kdefine_pd_global
src/cpu/arm/vm/c1_globals_arm.hpp
CodeCacheMinimumUseSpaceOpenJDK8uintxruntimedevelop_pd
Minimum code cache size (in bytes) required to start VM.
src/share/vm/runtime/globals.hpp
CodeCacheMinimumUseSpaceOpenJDK8uintxppcc2400*Kdefine_pd_global
src/cpu/ppc/vm/c2_globals_ppc.hpp
CodeCacheMinimumUseSpaceOpenJDK8uintxs390c1400*Kdefine_pd_global
src/cpu/s390/vm/c1_globals_s390.hpp
CodeCacheMinimumUseSpaceOpenJDK8uintxs390c2400*Kdefine_pd_global
src/cpu/s390/vm/c2_globals_s390.hpp
CodeCacheMinimumUseSpaceOpenJDK8uintxsparcc1400*Kdefine_pd_global
src/cpu/sparc/vm/c1_globals_sparc.hpp
CodeCacheMinimumUseSpaceOpenJDK8uintxsparcc2400*Kdefine_pd_global
src/cpu/sparc/vm/c2_globals_sparc.hpp
CodeCacheMinimumUseSpaceOpenJDK8uintxx86c1400*Kdefine_pd_global
src/cpu/x86/vm/c1_globals_x86.hpp
CodeCacheMinimumUseSpaceOpenJDK8uintxx86c2400*Kdefine_pd_global
src/cpu/x86/vm/c2_globals_x86.hpp
CodeCacheMinimumUseSpaceOpenJDK8uintxzeroshark200*Kdefine_pd_global
src/cpu/zero/vm/shark_globals_zero.hpp
CodeCacheSegmentSizeOpenJDK6uintxaarch6464 TIERED_ONLY(+64)define_pd_global
// Tiered compilation has large code-entry alignment.
src/cpu/aarch64/vm/globals_aarch64.hpp
CodeCacheSegmentSizeOpenJDK6uintxarm64 TIERED_ONLY(+64)define_pd_global
// Tiered compilation has large code-entry alignment.
src/cpu/arm/vm/globals_arm.hpp
CodeCacheSegmentSizeOpenJDK6uintxruntimedevelop_pd
Code cache segment size (in bytes) - smallest unit of 
allocation
src/share/vm/runtime/globals.hpp
CodeCacheSegmentSizeOpenJDK6uintxppc128define_pd_global
src/cpu/ppc/vm/globals_ppc.hpp
CodeCacheSegmentSizeOpenJDK6uintxs390256define_pd_global
src/cpu/s390/vm/globals_s390.hpp
CodeCacheSegmentSizeOpenJDK6uintxsparc64 TIERED_ONLY(+64)define_pd_global
// Tiered compilation has large code-entry alignment.
src/cpu/sparc/vm/globals_sparc.hpp
CodeCacheSegmentSizeOpenJDK6uintxx8664 TIERED_ONLY(+64)define_pd_global
// Tiered compilation has large code-entry alignment.
src/cpu/x86/vm/globals_x86.hpp
CodeCacheSegmentSizeOpenJDK6uintxzero64 TIERED_ONLY(+64)define_pd_global
// Tiered compilation has large code-entry alignment.
src/cpu/zero/vm/globals_zero.hpp
CodeEntryAlignmentOpenJDK6intxaarch6464define_pd_global
src/cpu/aarch64/vm/globals_aarch64.hpp
CodeEntryAlignmentOpenJDK6intxarm16define_pd_global
src/cpu/arm/vm/globals_arm.hpp
CodeEntryAlignmentOpenJDK6intxruntimedevelop_pd
Code entry alignment for generated code (in bytes)
src/share/vm/runtime/globals.hpp
CodeEntryAlignmentOpenJDK6intxppc128define_pd_global
src/cpu/ppc/vm/globals_ppc.hpp
CodeEntryAlignmentOpenJDK6intxs39064define_pd_global
src/cpu/s390/vm/globals_s390.hpp
CodeEntryAlignmentOpenJDK6intxsparc32define_pd_global
src/cpu/sparc/vm/globals_sparc.hpp
CodeEntryAlignmentOpenJDK6intxx8616define_pd_global
src/cpu/x86/vm/globals_x86.hpp
CodeEntryAlignmentOpenJDK6intxzero32define_pd_global
src/cpu/zero/vm/globals_zero.hpp
CollectIndexSetStatisticsOpenJDK6boolruntimefalsenotproduct
Collect information about IndexSets
src/share/vm/runtime/globals.hpp
CommentedAssemblyOpenJDK6boolc1trueInDebugdevelop
Show extra info in PrintNMethods output
src/share/vm/c1/c1_globals.hpp
CompactFieldsOpenJDK6Deprecated in JDK14
Obsoleted in JDK15
Expired in JDK16
boolruntimetrueproduct
Allocate nonstatic fields in gaps between previous fields
src/share/vm/runtime/globals.hpp
CompactStringsOpenJDK9boolaarch64truedefine_pd_global
src/cpu/aarch64/vm/globals_aarch64.hpp
CompactStringsOpenJDK9boolarmfalsedefine_pd_global
src/cpu/arm/vm/globals_arm.hpp
CompactStringsOpenJDK9boolruntimeproduct_pd
Enable Strings to use single byte chars in backing store
src/share/vm/runtime/globals.hpp
CompactStringsOpenJDK9boolppctruedefine_pd_global
src/cpu/ppc/vm/globals_ppc.hpp
CompactStringsOpenJDK9bools390truedefine_pd_global
src/cpu/s390/vm/globals_s390.hpp
CompactStringsOpenJDK9boolsparctruedefine_pd_global
src/cpu/sparc/vm/globals_sparc.hpp
CompactStringsOpenJDK9boolx86truedefine_pd_global
src/cpu/x86/vm/globals_x86.hpp
CompactStringsOpenJDK9boolzerofalsedefine_pd_global
src/cpu/zero/vm/globals_zero.hpp
CompilationPolicyChoiceOpenJDK6Deprecated in JDK13
Obsoleted in JDK14
Expired in JDK15
intxruntime0
range(0, 3)
product
which compilation policy (0-3)
src/share/vm/runtime/globals.hpp
CompileCommandFileOpenJDK6ccstrruntimeNULLproduct
Read compiler commands from this file [.hotspot_compiler]
src/share/vm/runtime/globals.hpp
CompileCommandOpenJDK6ccstrlistruntime
product
Prepend to .hotspot_compiler; e.g. log,java/lang/String.
src/share/vm/runtime/globals.hpp
CompileOnlyOpenJDK6ccstrlistruntime
product
List of methods (pkg/class.name) to restrict compilation to
src/share/vm/runtime/globals.hpp
CompileTheWorldPreloadClassesOpenJDK6boolruntimetruedevelop
Preload all classes used by a class before start loading
src/share/vm/runtime/globals.hpp
CompileTheWorldSafepointIntervalOpenJDK6intxruntime100notproduct
Force a safepoint every n compiles so sweeper can keep up
src/share/vm/runtime/globals.hpp
CompileTheWorldStartAtOpenJDK6intxruntime1notproduct
First class to consider when using +CompileTheWorld
src/share/vm/runtime/globals.hpp
CompileTheWorldStopAtOpenJDK6intxruntimemax_jintnotproduct
Last class to consider when using +CompileTheWorld
src/share/vm/runtime/globals.hpp
CompileTheWorldOpenJDK6boolruntimefalsedevelop
Compile all methods in all classes in bootstrap class path 
(stress test)
src/share/vm/runtime/globals.hpp
CompileThresholdScalingOpenJDK9doubleruntime1.0
range(0.0, DBL_MAX)
product
Factor to control when first compilation happens 
(both with and without tiered compilation): 
values greater than 1.0 delay counter overflow, 
values between 0 and 1.0 rush counter overflow, 
value of 1.0 leaves compilation thresholds unchanged 
value of 0.0 is equivalent to -Xint. 

Flag can be set as per-method option. 
If a value is specified for a method, compilation thresholds 
for that method are scaled by both the value of the global flag 
and the value of the per-method flag.
src/share/vm/runtime/globals.hpp
CompileThresholdOpenJDK6intxaarch64c11500define_pd_global
src/cpu/aarch64/vm/c1_globals_aarch64.hpp
CompileThresholdOpenJDK6intxaarch64c210000define_pd_global
src/cpu/aarch64/vm/c2_globals_aarch64.hpp
CompileThresholdOpenJDK6intxarmc11500define_pd_global
src/cpu/arm/vm/c1_globals_arm.hpp
CompileThresholdOpenJDK6intxarmc210000define_pd_global
src/cpu/arm/vm/c2_globals_arm.hpp
CompileThresholdOpenJDK6intxruntimeproduct_pd
number of interpreted method invocations before (re-)compiling
src/share/vm/runtime/globals.hpp
CompileThresholdOpenJDK6intxppcc11000define_pd_global
src/cpu/ppc/vm/c1_globals_ppc.hpp
CompileThresholdOpenJDK6intxppcc210000define_pd_global
src/cpu/ppc/vm/c2_globals_ppc.hpp
CompileThresholdOpenJDK6intxs390c11000define_pd_global
src/cpu/s390/vm/c1_globals_s390.hpp
CompileThresholdOpenJDK6intxs390c210000define_pd_global
src/cpu/s390/vm/c2_globals_s390.hpp
CompileThresholdOpenJDK6intxsparcc11000define_pd_global
// Design center runs on 1.3.1
src/cpu/sparc/vm/c1_globals_sparc.hpp
CompileThresholdOpenJDK6intxsparcc210000define_pd_global
src/cpu/sparc/vm/c2_globals_sparc.hpp
CompileThresholdOpenJDK6intxx86c11500define_pd_global
src/cpu/x86/vm/c1_globals_x86.hpp
CompileThresholdOpenJDK6intxx86c210000define_pd_global
src/cpu/x86/vm/c2_globals_x86.hpp
CompileThresholdOpenJDK6intxzeroshark1500define_pd_global
src/cpu/zero/vm/shark_globals_zero.hpp
CompilerDirectivesFileOpenJDK9ccstrruntimeNULLdiagnostic
Read compiler directives from this file
src/share/vm/runtime/globals.hpp
CompilerDirectivesIgnoreCompileCommandsOpenJDK9boolruntimefalsediagnostic
Disable backwards compatibility for compile commands.
src/share/vm/runtime/globals.hpp
CompilerDirectivesLimitOpenJDK9intruntime50diagnostic
Limit on number of compiler directives.
src/share/vm/runtime/globals.hpp
CompilerDirectivesPrintOpenJDK9boolruntimefalsediagnostic
Print compiler directives on installation.
src/share/vm/runtime/globals.hpp
CompilerThreadHintNoPreemptOpenJDK6Deprecated in JDK11
Obsoleted in JDK12
Expired in JDK13
boolruntimetrueproduct
(Solaris only) Give compiler threads an extra quanta
src/share/vm/runtime/globals.hpp
CompilerThreadPriorityOpenJDK6intxruntime-1
range(min_jint, max_jint)
product
The native priority at which compiler threads should run 
(-1 means no change)
src/share/vm/runtime/globals.hpp
CompilerThreadStackSizeOpenJDK6intxaixppc4096define_pd_global
src/os_cpu/aix_ppc/vm/globals_aix_ppc.hpp
CompilerThreadStackSizeOpenJDK6intxbsdx86512define_pd_global
src/os_cpu/bsd_x86/vm/globals_bsd_x86.hpp
CompilerThreadStackSizeOpenJDK6intxbsdzero0define_pd_global
src/os_cpu/bsd_zero/vm/globals_bsd_zero.hpp
CompilerThreadStackSizeOpenJDK6intxlinuxaarch642048define_pd_global
src/os_cpu/linux_aarch64/vm/globals_linux_aarch64.hpp
CompilerThreadStackSizeOpenJDK6intxlinuxarm512define_pd_global
src/os_cpu/linux_arm/vm/globals_linux_arm.hpp
CompilerThreadStackSizeOpenJDK6intxlinuxppc4096define_pd_global
src/os_cpu/linux_ppc/vm/globals_linux_ppc.hpp
CompilerThreadStackSizeOpenJDK6intxlinuxs3902048define_pd_global
src/os_cpu/linux_s390/vm/globals_linux_s390.hpp
CompilerThreadStackSizeOpenJDK6intxlinuxx86512define_pd_global
src/os_cpu/linux_x86/vm/globals_linux_x86.hpp
CompilerThreadStackSizeOpenJDK6intxlinuxzero0define_pd_global
src/os_cpu/linux_zero/vm/globals_linux_zero.hpp
CompilerThreadStackSizeOpenJDK6intxruntimeproduct_pd
Compiler Thread Stack Size (in Kbytes)
src/share/vm/runtime/globals.hpp
CompilerThreadStackSizeOpenJDK6intxsparc512define_pd_global
src/cpu/sparc/vm/globals_sparc.hpp
CompilerThreadStackSizeOpenJDK6intxsolarisx86512define_pd_global
src/os_cpu/solaris_x86/vm/globals_solaris_x86.hpp
CompilerThreadStackSizeOpenJDK6intxwindowsx860define_pd_global
src/os_cpu/windows_x86/vm/globals_windows_x86.hpp
CompressedClassSpaceSizeOpenJDK8size_truntime1*G
range(1*M, 3*G)
product
Maximum size of class area in Metaspace when compressed 
class pointers are used
src/share/vm/runtime/globals.hpp
ComputeExactFPURegisterUsageOpenJDK6boolc1truedevelop
Compute additional live set for fpu registers to simplify fpu stack merge (Intel only)
src/share/vm/c1/c1_globals.hpp
ConcGCThreadsOpenJDK6uintruntime0product
Number of threads concurrent gc will use
src/share/vm/runtime/globals.hpp
ConcGCYieldTimeoutOpenJDK6intxruntime0
range(0, max_intx)
develop
If non-zero, assert that GC threads yield within this 
number of milliseconds
src/share/vm/runtime/globals.hpp
ConditionalMoveLimitOpenJDK6intxaarch64c23define_pd_global
src/cpu/aarch64/vm/c2_globals_aarch64.hpp
ConditionalMoveLimitOpenJDK6intxarmc24define_pd_global
src/cpu/arm/vm/c2_globals_arm.hpp
ConditionalMoveLimitOpenJDK6intxc2product_pd
Limit of ops to make speculative when using CMOVE
src/share/vm/opto/c2_globals.hpp
ConditionalMoveLimitOpenJDK6intxppcc23define_pd_global
src/cpu/ppc/vm/c2_globals_ppc.hpp
ConditionalMoveLimitOpenJDK6intxs390c24define_pd_global
src/cpu/s390/vm/c2_globals_s390.hpp
ConditionalMoveLimitOpenJDK6intxsparcc24define_pd_global
src/cpu/sparc/vm/c2_globals_sparc.hpp
ConditionalMoveLimitOpenJDK6intxx86c23define_pd_global
src/cpu/x86/vm/c2_globals_x86.hpp
ContendedPaddingWidthOpenJDK8intxruntime128
range(0, 8192)
product
How many bytes to pad the fields/classes marked @Contended with
src/share/vm/runtime/globals.hpp
ConvertCmpD2CmpFOpenJDK6boolc2truedevelop
Convert cmpD to cmpF when one input is constant in float range
src/share/vm/opto/c2_globals.hpp
ConvertFloat2IntClippingOpenJDK6boolc2truedevelop
Convert float2int clipping idiom to integer clipping
src/share/vm/opto/c2_globals.hpp
ConvertSleepToYieldOpenJDK6Deprecated in JDK9
Obsoleted in JDK10
Expired in JDK11
boolruntimetrueproduct
Convert sleep(0) to thread yield
src/share/vm/runtime/globals.hpp
ConvertYieldToSleepOpenJDK6Deprecated in JDK9
Obsoleted in JDK10
Expired in JDK11
boolruntimefalseproduct
Convert yield to a sleep of MinSleepInterval to simulate Win32 
behavior
src/share/vm/runtime/globals.hpp
CountBytecodesOpenJDK6boolruntimefalsedevelop
Count number of bytecodes executed
src/share/vm/runtime/globals.hpp
CountCompiledCallsOpenJDK6boolruntimefalsedevelop
Count method invocations
src/share/vm/runtime/globals.hpp
CountJNICallsOpenJDK6boolruntimefalsedevelop
Count jni method invocations
src/share/vm/runtime/globals.hpp
CountJVMCallsOpenJDK6boolruntimefalsenotproduct
Count jvm method invocations
src/share/vm/runtime/globals.hpp
CountLinearScanOpenJDK6boolc1falsedevelop
collect statistic counters during LinearScan
src/share/vm/c1/c1_globals.hpp
CountRemovableExceptionsOpenJDK6boolruntimefalsenotproduct
Count exceptions that could be replaced by branches due to 
inlining
src/share/vm/runtime/globals.hpp
CountRuntimeCallsOpenJDK6boolruntimefalsenotproduct
Count VM runtime calls
src/share/vm/runtime/globals.hpp
CounterDecayMinIntervalLengthOpenJDK6intxruntime500develop
The minimum interval (in milliseconds) between invocation of 
CounterDecay
src/share/vm/runtime/globals.hpp
CounterHalfLifeTimeOpenJDK6intxruntime30develop
Half-life time of invocation counters (in seconds)
src/share/vm/runtime/globals.hpp
CrashGCForDumpingJavaThreadOpenJDK6boolruntimefalsenotproduct
Manually make GC thread crash then dump java stack trace; 
Test only
src/share/vm/runtime/globals.hpp
CrashOnOutOfMemoryErrorOpenJDK8boolruntimefalseproduct
JVM aborts, producing an error log and core/mini dump, on the 
first occurrence of an out-of-memory error
src/share/vm/runtime/globals.hpp
CreateCoredumpOnCrashOpenJDK9boolruntimetrueproduct
Create core/mini dump on VM fatal error
src/share/vm/runtime/globals.hpp
CriticalJNINativesOpenJDK6Deprecated in JDK16
Obsoleted in JDK18
Expired in JDK19
boolruntimetrueproduct
Check for critical JNI entry points
src/share/vm/runtime/globals.hpp
DSCR_DPFD_PPC64OpenJDK9uint64_tppc8product
Power8 or later: DPFD (default prefetch depth) value of the 
Data Stream Control Register.
 0: hardware default, 1: none, 2-7: min-max, 8: don't touch
src/cpu/ppc/vm/globals_ppc.hpp
DSCR_PPC64OpenJDK9uint64_tppc(uintx)-1product
Power8 or later: Specify encoded value for Data Stream Control 
Register
src/cpu/ppc/vm/globals_ppc.hpp
DSCR_URG_PPC64OpenJDK9uint64_tppc8product
Power8 or later: URG (depth attainment urgency) value of the 
Data Stream Control Register.
 0: hardware default, 1: none, 2-7: min-max, 8: don't touch
src/cpu/ppc/vm/globals_ppc.hpp
DTraceAllocProbesOpenJDK6boolruntimefalseproduct
Enable dtrace probes for object allocation
src/share/vm/runtime/globals.hpp
DTraceMethodProbesOpenJDK6boolruntimefalseproduct
Enable dtrace probes for method-entry and method-exit
src/share/vm/runtime/globals.hpp
DTraceMonitorProbesOpenJDK6boolruntimefalseproduct
Enable dtrace probes for monitor events
src/share/vm/runtime/globals.hpp
DebugDeoptimizationOpenJDK6boolruntimefalsedevelop
Tracing various information while debugging deoptimization
src/share/vm/runtime/globals.hpp
DebugInlinedCallsOpenJDK6boolc2truediagnostic
If false, restricts profiled locations to the root method only
src/share/vm/opto/c2_globals.hpp
DebugNonSafepointsOpenJDK6boolruntimetrueInDebugdiagnostic
Generate extra debugging information for non-safepoints in 
nmethods
src/share/vm/runtime/globals.hpp
DebugVtablesOpenJDK6boolruntimefalsedevelop
add debugging code to vtable dispatch
src/share/vm/runtime/globals.hpp
DebuggingOpenJDK6Obsoleted in JDK16
Expired in JDK17
boolruntimefalseproduct
Set when executing debug methods in debug.cpp 
(to prevent triggering assertions)
src/share/vm/runtime/globals.hpp
DeferInitialCardMarkOpenJDK6boolruntimefalsediagnostic
When +ReduceInitialCardMarks, explicitly defer any that 
may arise from new_pre_store_barrier
src/share/vm/runtime/globals.hpp
DeferPollingPageLoopCountOpenJDK6Deprecated in JDK10
Obsoleted in JDK11
Expired in JDK12
intxruntime-1
range(-1, max_jint-1)
product
(Unsafe,Unstable) Number of iterations in safepoint loop 
before changing safepoint polling page to RO
src/share/vm/runtime/globals.hpp
DeferThrSuspendLoopCountOpenJDK6Deprecated in JDK10
Obsoleted in JDK11
Expired in JDK12
intxruntime4000
range(-1, max_jint-1)
product
(Unstable) Number of times to iterate in safepoint loop 
before blocking VM threads
src/share/vm/runtime/globals.hpp
DelayCompilationDuringStartupOpenJDK6boolruntimetruedevelop
Delay invoking the compiler until main application class is 
loaded
src/share/vm/runtime/globals.hpp
DeoptC1OpenJDK6boolc1truedevelop
Use deoptimization in C1
src/share/vm/c1/c1_globals.hpp
DeoptimizeALotIntervalOpenJDK6intxruntime5notproduct
Number of exits until DeoptimizeALot kicks in
src/share/vm/runtime/globals.hpp
DeoptimizeALotOpenJDK6boolruntimefalsedevelop
Deoptimize at every exit from the runtime system
src/share/vm/runtime/globals.hpp
DeoptimizeOnlyAtOpenJDK6ccstrlistruntime
notproduct
A comma separated list of bcis to deoptimize at
src/share/vm/runtime/globals.hpp
DeoptimizeRandomOpenJDK6boolruntimefalseproduct
Deoptimize random frames on random exit from the runtime system
src/share/vm/runtime/globals.hpp
DesiredMethodLimitOpenJDK6intxruntime8000develop
The desired maximum method size (in bytecodes) after inlining
src/share/vm/runtime/globals.hpp
DieOnSafepointTimeoutOpenJDK6boolruntimefalsedevelop
Die upon failure to reach safepoint (see SafepointTimeout)
src/share/vm/runtime/globals.hpp
DisableAttachMechanismOpenJDK6boolruntimefalseproduct
Disable mechanism that allows tools to attach to this VM
src/share/vm/runtime/globals.hpp
DisableBCCheckOpenJDK9boolaarch64trueproduct
tell sim not to invoke bccheck callback
src/cpu/aarch64/vm/globals_aarch64.hpp
DisableExplicitGCOpenJDK6boolruntimefalseproduct
Ignore calls to System.gc()
src/share/vm/runtime/globals.hpp
DisableIntrinsicOpenJDK6ccstrlistruntime
diagnostic
do not expand intrinsics whose (internal) names appear here
src/share/vm/runtime/globals.hpp
DisableStartThreadOpenJDK6boolruntimefalsedevelop
Disable starting of additional Java threads 
(for debugging only)
src/share/vm/runtime/globals.hpp
DisplayVMOutputToStderrOpenJDK6boolruntimefalseproduct
If DisplayVMOutput is true, display all VM output to stderr
src/share/vm/runtime/globals.hpp
DisplayVMOutputToStdoutOpenJDK6boolruntimefalseproduct
If DisplayVMOutput is true, display all VM output to stdout
src/share/vm/runtime/globals.hpp
DisplayVMOutputOpenJDK6boolruntimetruediagnostic
Display all VM output on the tty, independently of LogVMOutput
src/share/vm/runtime/globals.hpp
DoCEEOpenJDK6boolc1truedevelop
Do Conditional Expression Elimination to simplify CFG
src/share/vm/c1/c1_globals.hpp
DoEscapeAnalysisOpenJDK6boolc2trueproduct
Perform escape analysis
src/share/vm/opto/c2_globals.hpp
DoReserveCopyInSuperWordOpenJDK9Obsoleted in JDK22
Expired in JDK23
boolc2trueproduct
Create reserve copy of graph in SuperWord.
src/share/vm/opto/c2_globals.hpp
DominatorSearchLimitOpenJDK6intxc21000
range(0, max_jint)
diagnostic
Iterations limit in Node::dominates
src/share/vm/opto/c2_globals.hpp
DontCompileHugeMethodsOpenJDK6boolruntimetrueproduct
Do not compile methods > HugeMethodLimit
src/share/vm/runtime/globals.hpp
DontYieldALotIntervalOpenJDK6intxruntime10develop
Interval between which yields will be dropped (milliseconds)
src/share/vm/runtime/globals.hpp
DontYieldALotOpenJDK6boolaixppcfalsedefine_pd_global
src/os_cpu/aix_ppc/vm/globals_aix_ppc.hpp
DontYieldALotOpenJDK6boolbsdx86falsedefine_pd_global
src/os_cpu/bsd_x86/vm/globals_bsd_x86.hpp
DontYieldALotOpenJDK6boolbsdzerofalsedefine_pd_global
src/os_cpu/bsd_zero/vm/globals_bsd_zero.hpp
DontYieldALotOpenJDK6boollinuxaarch64falsedefine_pd_global
src/os_cpu/linux_aarch64/vm/globals_linux_aarch64.hpp
DontYieldALotOpenJDK6boollinuxarmfalsedefine_pd_global
src/os_cpu/linux_arm/vm/globals_linux_arm.hpp
DontYieldALotOpenJDK6boollinuxppcfalsedefine_pd_global
src/os_cpu/linux_ppc/vm/globals_linux_ppc.hpp
DontYieldALotOpenJDK6boollinuxs390falsedefine_pd_global
src/os_cpu/linux_s390/vm/globals_linux_s390.hpp
DontYieldALotOpenJDK6boollinuxx86falsedefine_pd_global
src/os_cpu/linux_x86/vm/globals_linux_x86.hpp
DontYieldALotOpenJDK6boollinuxzerofalsedefine_pd_global
src/os_cpu/linux_zero/vm/globals_linux_zero.hpp
DontYieldALotOpenJDK6boolruntimeproduct_pd
Throw away obvious excess yield calls
src/share/vm/runtime/globals.hpp
DontYieldALotOpenJDK6boolsparctruedefine_pd_global
// yield no more than 100 times per second
src/cpu/sparc/vm/globals_sparc.hpp
DontYieldALotOpenJDK6boolsolarisx86truedefine_pd_global
// Determined in the design center
src/os_cpu/solaris_x86/vm/globals_solaris_x86.hpp
DontYieldALotOpenJDK6boolwindowsx86falsedefine_pd_global
src/os_cpu/windows_x86/vm/globals_windows_x86.hpp
DumpLoadedClassListOpenJDK8ccstrruntimeNULLproduct
Dump the names all loaded classes, that could be stored into 
the CDS archive, in the specified file
src/share/vm/runtime/globals.hpp
DumpReplayDataOnErrorOpenJDK8boolruntimetrueproduct
Record replay data for crashing compiler threads
src/share/vm/runtime/globals.hpp
DumpSharedSpacesOpenJDK6Deprecated in JDK18
Obsoleted in JDK19
boolruntimefalseproduct
Special mode: JVM reads a class list, loads classes, builds 
shared spaces, and dumps the shared spaces to a file to be 
used in future JVM runs
src/share/vm/runtime/globals.hpp
EagerInitializationOpenJDK6boolruntimefalsedevelop
Eagerly initialize classes if possible
src/share/vm/runtime/globals.hpp
EagerXrunInitOpenJDK6boolruntimefalseproduct
Eagerly initialize -Xrun libraries; allows startup profiling, 
but not all -Xrun libraries may support the state of the VM 
at this time
src/share/vm/runtime/globals.hpp
EliminateAllocationArraySizeLimitOpenJDK6intxc264
range(0, max_jint)
product
Array size (number of elements) limit for scalar replacement
src/share/vm/opto/c2_globals.hpp
EliminateAllocationsOpenJDK6boolc2trueproduct
Use escape analysis to eliminate allocations
src/share/vm/opto/c2_globals.hpp
EliminateAutoBoxOpenJDK6boolc2trueproduct
Control optimizations for autobox elimination
src/share/vm/opto/c2_globals.hpp
EliminateBlocksOpenJDK6boolc1truedevelop
Eliminate unneccessary basic blocks
src/share/vm/c1/c1_globals.hpp
EliminateFieldAccessOpenJDK6boolc1truedevelop
Optimize field loads and stores
src/share/vm/c1/c1_globals.hpp
EliminateLocksOpenJDK6boolc2trueproduct
Coarsen locks when possible
src/share/vm/opto/c2_globals.hpp
EliminateNestedLocksOpenJDK6boolc2trueproduct
Eliminate nested locks of the same object when possible
src/share/vm/opto/c2_globals.hpp
EliminateNestedLocksOpenJDK6boolsharktrueproduct
Eliminate nested locks of the same object when possible
src/share/vm/shark/shark_globals.hpp
EliminateNullChecksOpenJDK6boolc1truedevelop
Eliminate unneccessary null checks
src/share/vm/c1/c1_globals.hpp
EmitSyncOpenJDK6Obsoleted in JDK12
Expired in JDK13
intxruntime0experimental
(Unsafe, Unstable) 
Control emission of inline sync fast-path code
src/share/vm/runtime/globals.hpp
EnableContendedOpenJDK8boolruntimetrueproduct
Enable @Contended annotation support
src/share/vm/runtime/globals.hpp
EnableDynamicAgentLoadingOpenJDK9boolruntimetrueproduct
Allow tools to load agents with the attach mechanism
src/share/vm/runtime/globals.hpp
EnableJVMCIOpenJDK9booljvmcifalseexperimental
Enable JVMCI
src/share/vm/jvmci/jvmci_globals.hpp
EnableTracingOpenJDK7Obsoleted in JDK11
Expired in JDK12
boolruntimefalseproduct
Enable event-based tracing
src/share/vm/runtime/globals.hpp
ErgoHeapSizeLimitOpenJDK6size_truntime0
range(0, max_uintx)
product
Maximum ergonomically set heap size (in bytes); zero means use 
MaxRAM / MaxRAMFraction
src/share/vm/runtime/globals.hpp
ErrorFileOpenJDK6ccstrruntimeNULLproduct
If an error occurs, save the error data to this file 
[default: ./hs_err_pid%p.log] (%p replaced with pid)
src/share/vm/runtime/globals.hpp
ErrorHandlerTestOpenJDK6uintxruntime0notproduct
If > 0, provokes an error after VM initialization; the value 
determines which error to provoke. See test_error_handler() 
in debug.cpp.
src/share/vm/runtime/globals.hpp
ErrorLogTimeoutOpenJDK9uint64_truntime2 * 60
range(0, (uint64_t)max_jlong/1000)
product
Timeout, in seconds, to limit the time spent on writing an 
error log in case of a crash.
src/share/vm/runtime/globals.hpp
ErrorReportServerOpenJDK6Obsoleted in JDK12
Expired in JDK13
ccstrruntimeNULLproduct
Override built-in error report server address
src/share/vm/runtime/globals.hpp
EscapeAnalysisTimeoutOpenJDK7doublec220. DEBUG_ONLY(+40.)
range(0, DBL_MAX)
product
Abort EA when it reaches time limit (in sec)
src/share/vm/opto/c2_globals.hpp
EstimateArgEscapeOpenJDK6boolruntimetrueproduct
Analyze bytecodes to estimate escape state of arguments
src/share/vm/runtime/globals.hpp
ExecuteInternalVMTestsOpenJDK6boolruntimefalsenotproduct
Enable execution of internal VM tests
src/share/vm/runtime/globals.hpp
ExecutingUnitTestsOpenJDK9boolruntimefalseproduct
Whether the JVM is running unit tests or not
src/share/vm/runtime/globals.hpp
ExitEscapeAnalysisOnTimeoutOpenJDK7boolc2truedevelop
Exit or throw assert in EA when it reaches time limit
src/share/vm/opto/c2_globals.hpp
ExitOnFullCodeCacheOpenJDK6boolruntimefalsenotproduct
Exit the VM if we fill the code cache
src/share/vm/runtime/globals.hpp
ExitOnOutOfMemoryErrorOpenJDK8boolruntimefalseproduct
JVM exits on the first occurrence of an out-of-memory error
src/share/vm/runtime/globals.hpp
ExitVMOnVerifyErrorOpenJDK6boolruntimefalsenotproduct
standard exit from VM if bytecode verify error 
(only in debug mode)
src/share/vm/runtime/globals.hpp
ExpandLoadingBaseDecode_NNOpenJDK9bools390trueproduct
Expand the assembler 
instruction required to load the base from DecodeN_NN nodes 
during matching.
src/cpu/s390/vm/globals_s390.hpp
ExpandLoadingBaseDecodeOpenJDK9bools390trueproduct
Expand the assembler 
instruction required to load the base from DecodeN nodes during 
matching.
src/cpu/s390/vm/globals_s390.hpp
ExpandLoadingBaseEncode_NNOpenJDK9bools390trueproduct
Expand the assembler 
instruction required to load the base from EncodeP_NN nodes 
during matching.
src/cpu/s390/vm/globals_s390.hpp
ExpandLoadingBaseEncodeOpenJDK9bools390trueproduct
Expand the assembler 
instruction required to load the base from EncodeP nodes during 
matching.
src/cpu/s390/vm/globals_s390.hpp
ExplicitGCInvokesConcurrentAndUnloadsClassesOpenJDK6boolruntimefalseproduct
A System.gc() request invokes a concurrent collection and 
also unloads classes during such a concurrent gc cycle 
(effective only when UseConcMarkSweepGC)
src/share/vm/runtime/globals.hpp
ExplicitGCInvokesConcurrentOpenJDK6boolruntimefalseproduct
A System.gc() request invokes a concurrent collection; 
(effective only when using concurrent collectors)
src/share/vm/runtime/globals.hpp
ExtendedDTraceProbesOpenJDK6Deprecated in JDK19
Obsoleted in JDK20
Expired in JDK21
boolruntimefalseproduct
Enable performance-impacting dtrace probes
src/share/vm/runtime/globals.hpp
ExtraSharedClassListFileOpenJDK8ccstrruntimeNULLproduct
Extra classlist for building the CDS archive file
src/share/vm/runtime/globals.hpp
FLOATPRESSUREOpenJDK6intxaarch64c264define_pd_global
src/cpu/aarch64/vm/c2_globals_aarch64.hpp
FLOATPRESSUREOpenJDK6intxarmc230define_pd_global
src/cpu/arm/vm/c2_globals_arm.hpp
FLOATPRESSUREOpenJDK6intxc2develop_pd
Number of float LRG's that constitute high register pressure
src/share/vm/opto/c2_globals.hpp
FLOATPRESSUREOpenJDK6intxppcc228define_pd_global
src/cpu/ppc/vm/c2_globals_ppc.hpp
FLOATPRESSUREOpenJDK6intxs390c215define_pd_global
src/cpu/s390/vm/c2_globals_s390.hpp
FLOATPRESSUREOpenJDK6intxsparcc252define_pd_global
// C2 on V9 gets to use all the float/double registers
src/cpu/sparc/vm/c2_globals_sparc.hpp
FLOATPRESSUREOpenJDK6intxx86c26define_pd_global
src/cpu/x86/vm/c2_globals_x86.hpp
FLSAlwaysCoalesceLargeOpenJDK6Obsoleted in JDK14
Expired in JDK15
boolruntimefalseproduct
CMS: larger free blocks are always available for coalescing
src/share/vm/runtime/globals.hpp
FLSCoalescePolicyOpenJDK6Obsoleted in JDK14
Expired in JDK15
uintxruntime2
range(0, 4)
product
CMS: aggressiveness level for coalescing, increasing 
from 0 to 4
src/share/vm/runtime/globals.hpp
FLSLargestBlockCoalesceProximityOpenJDK6Obsoleted in JDK14
Expired in JDK15
doubleruntime0.99
range(0.0, 1.0)
product
CMS: the smaller the percentage the greater the coalescing 
force
src/share/vm/runtime/globals.hpp
FLSVerifyAllHeapReferencesOpenJDK6boolruntimefalsediagnostic
Verify that all references across the FLS boundary 
are to valid objects
src/share/vm/runtime/globals.hpp
FLSVerifyDictionaryOpenJDK6boolruntimefalsedevelop
Do lots of (expensive) FLS dictionary verification
src/share/vm/runtime/globals.hpp
FLSVerifyIndexTableOpenJDK6boolruntimefalsediagnostic
Do lots of (expensive) FLS index table verification
src/share/vm/runtime/globals.hpp
FLSVerifyListsOpenJDK6boolruntimefalsediagnostic
Do lots of (expensive) FreeListSpace verification
src/share/vm/runtime/globals.hpp
FailOverToOldVerifierOpenJDK6Obsoleted in JDK14
Expired in JDK15
boolruntimetrueproduct
Fail over to old verifier when split verifier fails
src/share/vm/runtime/globals.hpp
FastAllocateSizeLimitOpenJDK6intxruntime128*Kdevelop
/* Note: This value is zero mod 1<<13 for a cheap sparc set. */Inline allocations larger than this in doublewords must go slow
src/share/vm/runtime/globals.hpp
FastSuperclassLimitOpenJDK6intxruntime8develop
Depth of hardwired instanceof accelerator array
src/share/vm/runtime/globals.hpp
FastTLABRefillOpenJDK6Deprecated in JDK10
Obsoleted in JDK11
Expired in JDK12
boolruntimetrueproduct
Use fast TLAB refill code
src/share/vm/runtime/globals.hpp
FieldsAllocationStyleOpenJDK6Deprecated in JDK14
Obsoleted in JDK15
Expired in JDK16
intxruntime1
range(0, 2)
product
0 - type based with oops first, 

1 - with oops last, 

2 - oops in super and sub classes are together
src/share/vm/runtime/globals.hpp
FillDelaySlotsOpenJDK6boolruntimetruedevelop
Fill delay slots (on SPARC only)
src/share/vm/runtime/globals.hpp
FilterSpuriousWakeupsOpenJDK6Deprecated in JDK18
Obsoleted in JDK19
Expired in JDK20
boolruntimetrueproduct
When true prevents OS-level spurious, or premature, wakeups 
from Object.wait (Ignored for Windows)
src/share/vm/runtime/globals.hpp
FoldStableValuesOpenJDK8boolruntimetruediagnostic
Optimize loads from stable fields (marked w/ @Stable)
src/share/vm/runtime/globals.hpp
ForceDynamicNumberOfGCThreadsOpenJDK6boolruntimefalsediagnostic
Force dynamic selection of the number of 
parallel threads parallel gc will use to aid debugging
src/share/vm/runtime/globals.hpp
ForceFloatExceptionsOpenJDK6boolruntimetrueInDebugdevelop
Force exceptions on FP stack under/overflow
src/share/vm/runtime/globals.hpp
ForceNUMAOpenJDK6Deprecated in JDK15
Obsoleted in JDK16
Expired in JDK17
boolruntimefalseproduct
Force NUMA optimizations on single-node/UMA systems
src/share/vm/runtime/globals.hpp
ForceTimeHighResolutionOpenJDK6boolruntimefalseproduct
Using high time resolution (for Win32 only)
src/share/vm/runtime/globals.hpp
ForceUnreachableOpenJDK6boolruntimefalsediagnostic
Make all non code cache addresses to be unreachable by 
forcing use of 64bit literal fixups
src/share/vm/runtime/globals.hpp
FreqCountInvocationsOpenJDK6intxc21
range(1, max_intx)
develop
Scaling factor for branch frequencies (deprecated)
src/share/vm/opto/c2_globals.hpp
FreqInlineSizeOpenJDK6intxaarch64c1325define_pd_global
src/cpu/aarch64/vm/c1_globals_aarch64.hpp
FreqInlineSizeOpenJDK6intxaarch64c2325define_pd_global
src/cpu/aarch64/vm/c2_globals_aarch64.hpp
FreqInlineSizeOpenJDK6intxarmc1325define_pd_global
src/cpu/arm/vm/c1_globals_arm.hpp
FreqInlineSizeOpenJDK6intxarmc2175define_pd_global
src/cpu/arm/vm/c2_globals_arm.hpp
FreqInlineSizeOpenJDK6intxruntimeproduct_pd
The maximum bytecode size of a frequent method to be inlined
src/share/vm/runtime/globals.hpp
FreqInlineSizeOpenJDK6intxppcc1325define_pd_global
src/cpu/ppc/vm/c1_globals_ppc.hpp
FreqInlineSizeOpenJDK6intxppcc2175define_pd_global
src/cpu/ppc/vm/c2_globals_ppc.hpp
FreqInlineSizeOpenJDK6intxs390c1325define_pd_global
src/cpu/s390/vm/c1_globals_s390.hpp
FreqInlineSizeOpenJDK6intxs390c2175define_pd_global
src/cpu/s390/vm/c2_globals_s390.hpp
FreqInlineSizeOpenJDK6intxsparcc1325define_pd_global
src/cpu/sparc/vm/c1_globals_sparc.hpp
FreqInlineSizeOpenJDK6intxsparcc2175define_pd_global
src/cpu/sparc/vm/c2_globals_sparc.hpp
FreqInlineSizeOpenJDK6intxx86c1325define_pd_global
src/cpu/x86/vm/c1_globals_x86.hpp
FreqInlineSizeOpenJDK6intxx86c2325define_pd_global
src/cpu/x86/vm/c2_globals_x86.hpp
FreqInlineSizeOpenJDK6intxzeroshark325define_pd_global
src/cpu/zero/vm/shark_globals_zero.hpp
FullGCALotDummiesOpenJDK6intxruntime32*Knotproduct
Dummy object allocated with +FullGCALot, forcing all objects 
to move
src/share/vm/runtime/globals.hpp
FullGCALotIntervalOpenJDK6intxruntime1notproduct
Interval between which full gc will occur with +FullGCALot
src/share/vm/runtime/globals.hpp
FullGCALotStartOpenJDK6intxruntime0notproduct
For which invocation to start FullGCAlot
src/share/vm/runtime/globals.hpp
FullGCALotOpenJDK6boolruntimefalsedevelop
Force full gc at every Nth exit from the runtime system 
(N=FullGCALotInterval)
src/share/vm/runtime/globals.hpp
G1AdaptiveIHOPNumInitialSamplesOpenJDK9size_tgc3
range(1, max_intx)
experimental
How many completed time periods from initial mark to first 
mixed gc are required to use the input values for prediction 
of the optimal occupancy to start marking.
src/share/vm/gc/g1/g1_globals.hpp
G1ConcMarkStepDurationMillisOpenJDK6doublegc10.0
range(1.0, DBL_MAX)
product
Target duration of individual concurrent marking steps 
in milliseconds.
src/share/vm/gc/g1/g1_globals.hpp
G1ConcRSHotCardLimitOpenJDK6Obsoleted in JDK21
Expired in JDK24
uintxgc4
range(0, max_jubyte)
product
The threshold that defines (>=) a hot card.
src/share/vm/gc/g1/g1_globals.hpp
G1ConcRSLogCacheSizeOpenJDK6Obsoleted in JDK21
Expired in JDK24
size_tgc10
range(0, 27)
product
Log base 2 of the length of conc RS hot-card cache.
src/share/vm/gc/g1/g1_globals.hpp
G1ConcRefinementGreenZoneOpenJDK6Obsoleted in JDK20
Expired in JDK24
size_tgc0
range(0, max_intx)
product
The number of update buffers that are left in the queue by the 
concurrent processing threads. Will be selected ergonomically 
by default.
src/share/vm/gc/g1/g1_globals.hpp
G1ConcRefinementRedZoneOpenJDK6Obsoleted in JDK20
Expired in JDK24
size_tgc0
range(0, max_intx)
product
Maximum number of enqueued update buffers before mutator 
threads start processing new ones instead of enqueueing them. 
Will be selected ergonomically by default.
src/share/vm/gc/g1/g1_globals.hpp
G1ConcRefinementServiceIntervalMillisOpenJDK6Obsoleted in JDK20
Expired in JDK24
uintxgc300
range(0, max_jint)
product
The last concurrent refinement thread wakes up every 
specified number of milliseconds to do miscellaneous work.
src/share/vm/gc/g1/g1_globals.hpp
G1ConcRefinementThreadsOpenJDK6uintgc0
range(0, (max_jint-1)/wordSize)
product
The number of parallel rem set update threads. 
Will be set ergonomically by default.
src/share/vm/gc/g1/g1_globals.hpp
G1ConcRefinementThresholdStepOpenJDK6Obsoleted in JDK20
Expired in JDK24
size_tgc2
range(1, SIZE_MAX)
product
Each time the rset update queue increases by this amount 
activate the next refinement thread if available. 
The actual step size will be selected ergonomically by 
default, with this value used to determine a lower bound.
src/share/vm/gc/g1/g1_globals.hpp
G1ConcRefinementYellowZoneOpenJDK6Obsoleted in JDK20
Expired in JDK24
size_tgc0
range(0, max_intx)
product
Number of enqueued update buffers that will 
trigger concurrent processing. Will be selected ergonomically 
by default.
src/share/vm/gc/g1/g1_globals.hpp
G1ConfidencePercentOpenJDK6uintxgc50
range(0, 100)
product
Confidence level for MMU/pause predictions
src/share/vm/gc/g1/g1_globals.hpp
G1DummyRegionsPerGCOpenJDK6uintxgc0develop
The number of dummy regions G1 will allocate at the end of 
each evacuation pause in order to artificially fill up the 
heap and stress the marking implementation.
src/share/vm/gc/g1/g1_globals.hpp
G1EagerReclaimHumongousObjectsWithStaleRefsOpenJDK8boolgctrueexperimental
Try to reclaim dead large objects that have a few stale 
references at every young GC.
src/share/vm/gc/g1/g1_globals.hpp
G1EagerReclaimHumongousObjectsOpenJDK8boolgctrueexperimental
Try to reclaim dead large objects at every young GC.
src/share/vm/gc/g1/g1_globals.hpp
G1EvacuationFailureALotCountOpenJDK7uintxgc1000develop
Number of successful evacuations between evacuation failures 
occurring at object copying
src/share/vm/gc/g1/g1_globals.hpp
G1EvacuationFailureALotDuringConcMarkOpenJDK7boolgctruedevelop
Force use of evacuation failure handling during evacuation 
pauses when marking is in progress
src/share/vm/gc/g1/g1_globals.hpp
G1EvacuationFailureALotDuringInitialMarkOpenJDK7boolgctruedevelop
Force use of evacuation failure handling during initial mark 
evacuation pauses
src/share/vm/gc/g1/g1_globals.hpp
G1EvacuationFailureALotDuringMixedGCOpenJDK7boolgctruedevelop
Force use of evacuation failure handling during mixed 
evacuation pauses
src/share/vm/gc/g1/g1_globals.hpp
G1EvacuationFailureALotDuringYoungGCOpenJDK7boolgctruedevelop
Force use of evacuation failure handling during young 
evacuation pauses
src/share/vm/gc/g1/g1_globals.hpp
G1EvacuationFailureALotIntervalOpenJDK7uintxgc5develop
Total collections between forced triggering of evacuation 
failures
src/share/vm/gc/g1/g1_globals.hpp
G1EvacuationFailureALotOpenJDK7boolgcfalsenotproduct
Force use of evacuation failure handling during certain 
evacuation pauses
src/share/vm/gc/g1/g1_globals.hpp
G1ExitOnExpansionFailureOpenJDK6boolgcfalsedevelop
Raise a fatal VM exit out of memory failure in the event 
 that heap expansion fails due to running out of swap.
src/share/vm/gc/g1/g1_globals.hpp
G1ExpandByPercentOfAvailableOpenJDK6intxgc20
range(0, 100)
experimental
When expanding, % of uncommitted space to claim.
src/share/vm/gc/g1/g1_globals.hpp
G1HRRSFlushLogBuffersOnVerifyOpenJDK6boolgcfalsedevelop
Forces flushing of log buffers before verification.
src/share/vm/gc/g1/g1_globals.hpp
G1HRRSUseSparseTableOpenJDK6boolgctruedevelop
When true, use sparse table to save space.
src/share/vm/gc/g1/g1_globals.hpp
G1HeapRegionSizeOpenJDK6size_tgc0
range(0, 32*M)
product
Size of the G1 regions.
src/share/vm/gc/g1/g1_globals.hpp
G1HeapWastePercentOpenJDK7uintxgc5
range(0, 100)
product
Amount of space, expressed as a percentage of the heap size, 
that G1 is willing not to collect to avoid expensive GCs.
src/share/vm/gc/g1/g1_globals.hpp
G1LastPLABAverageOccupancyOpenJDK9doublegc50.0
range(0.001, 100.0)
experimental
The expected average occupancy of the last PLAB in 
percent.
src/share/vm/gc/g1/g1_globals.hpp
G1MarkingOverheadPercentOpenJDK6intxgc0
range(0, 100)
develop
Overhead of concurrent marking
src/share/vm/gc/g1/g1_globals.hpp
G1MaxNewSizePercentOpenJDK7uintxgc60
range(0, 100)
experimental
Percentage (0-100) of the heap size to use as default 
 maximum young gen size.
src/share/vm/gc/g1/g1_globals.hpp
G1MaxVerifyFailuresOpenJDK6intxgc-1
range(-1, max_jint)
develop
The maximum number of verification failures to print. 
-1 means print all.
src/share/vm/gc/g1/g1_globals.hpp
G1MixedGCCountTargetOpenJDK7uintxgc8
range(0, max_uintx)
product
The target number of mixed GCs after a marking cycle.
src/share/vm/gc/g1/g1_globals.hpp
G1MixedGCLiveThresholdPercentOpenJDK7uintxgc85
range(0, 100)
experimental
Threshold for regions to be considered for inclusion in the 
collection set of mixed GCs. 
Regions with live bytes exceeding this will not be collected.
src/share/vm/gc/g1/g1_globals.hpp
G1NewSizePercentOpenJDK7uintxgc5
range(0, 100)
experimental
Percentage (0-100) of the heap size to use as default 
minimum young gen size.
src/share/vm/gc/g1/g1_globals.hpp
G1OldCSetRegionThresholdPercentOpenJDK6uintxgc10
range(0, 100)
experimental
An upper bound for the number of old CSet regions expressed 
as a percentage of the heap size.
src/share/vm/gc/g1/g1_globals.hpp
G1PretouchAuxiliaryMemoryOpenJDK9boolgcfalseexperimental
Pre-touch large auxiliary data structures used by the GC.
src/share/vm/gc/g1/g1_globals.hpp
G1RSBarrierRegionFilterOpenJDK6boolgctruedevelop
If true, generate region filtering code in RS barrier
src/share/vm/gc/g1/g1_globals.hpp
G1RSetRegionEntriesBaseOpenJDK6intxgc256
range(1, max_jint/wordSize)
develop
Max number of regions in a fine-grain table per MB.
src/share/vm/gc/g1/g1_globals.hpp
G1RSetRegionEntriesOpenJDK6Obsoleted in JDK18
Expired in JDK19
intxgc0
range(0, max_jint/wordSize)
product
Max number of regions for which we keep bitmaps.
Will be set ergonomically by default
src/share/vm/gc/g1/g1_globals.hpp
G1RSetScanBlockSizeOpenJDK6Deprecated in JDK14
Obsoleted in JDK15
Expired in JDK16
size_tgc64
range(1, max_uintx)
product
Size of a work unit of cards claimed by a worker thread
during RSet scanning.
src/share/vm/gc/g1/g1_globals.hpp
G1RSetSparseRegionEntriesBaseOpenJDK6intxgc4
range(1, max_jint/wordSize)
develop
Max number of entries per region in a sparse table 
per MB.
src/share/vm/gc/g1/g1_globals.hpp
G1RSetSparseRegionEntriesOpenJDK6Obsoleted in JDK18
Expired in JDK19
intxgc0
range(0, max_jint/wordSize)
product
Max number of entries per region in a sparse table.
Will be set ergonomically by default.
src/share/vm/gc/g1/g1_globals.hpp
G1RSetUpdatingPauseTimePercentOpenJDK6intxgc10
range(0, 100)
product
A target percentage of time that is allowed to be spend on 
process RS update buffers during the collection pause.
src/share/vm/gc/g1/g1_globals.hpp
G1RefProcDrainIntervalOpenJDK6intxgc10
range(1, max_intx)
product
The number of discovered reference objects to process before 
draining concurrent marking work queues.
src/share/vm/gc/g1/g1_globals.hpp
G1ReservePercentOpenJDK6uintxgc10
range(0, 50)
product
It determines the minimum reserve we should have in the heap 
to minimize the probability of promotion failure.
src/share/vm/gc/g1/g1_globals.hpp
G1SATBBufferEnqueueingThresholdPercentOpenJDK6uintxgc60
range(0, 100)
product
Before enqueueing them, each mutator thread tries to do some 
filtering on the SATB buffers it generates. If post-filtering 
the percentage of retained entries is over this threshold 
the buffer will be enqueued for processing. A value of 0 
specifies that mutator threads should not do such filtering.
src/share/vm/gc/g1/g1_globals.hpp
G1SATBBufferSizeOpenJDK6size_tgc1*K
range(1, max_uintx)
product
Number of entries in an SATB log buffer.
src/share/vm/gc/g1/g1_globals.hpp
G1SATBProcessCompletedThresholdOpenJDK6intxgc20
range(0, max_jint)
develop
Number of completed buffers that triggers log processing.
src/share/vm/gc/g1/g1_globals.hpp
G1ScrubRemSetsOpenJDK6boolgctruedevelop
When true, do RS scrubbing after cleanup.
src/share/vm/gc/g1/g1_globals.hpp
G1SecondaryFreeListAppendLengthOpenJDK6uintxgc5develop
The number of regions we will add to the secondary free list 
at every append operation
src/share/vm/gc/g1/g1_globals.hpp
G1StressConcRegionFreeingDelayMillisOpenJDK6uintxgc0develop
Artificial delay during concurrent region freeing
src/share/vm/gc/g1/g1_globals.hpp
G1StressConcRegionFreeingOpenJDK6boolgcfalsedevelop
It stresses the concurrent region freeing operation
src/share/vm/gc/g1/g1_globals.hpp
G1SummarizeRSetStatsPeriodOpenJDK6intxgc0
range(0, max_intx)
diagnostic
The period (in number of GCs) at which we will generate 
update buffer processing info 
(0 means do not periodically generate this info); 
it also requires that logging is enabled on the trace
level for gc+remset
src/share/vm/gc/g1/g1_globals.hpp
G1UpdateBufferSizeOpenJDK6size_tgc256
range(1, NOT_LP64(32*M) LP64_ONLY(1*G))
product
Size of an update buffer
src/share/vm/gc/g1/g1_globals.hpp
G1UseAdaptiveConcRefinementOpenJDK6Obsoleted in JDK20
Expired in JDK24
boolgctrueproduct
Select green, yellow and red zones adaptively to meet the 
the pause requirements.
src/share/vm/gc/g1/g1_globals.hpp
G1UseAdaptiveIHOPOpenJDK9boolgctrueproduct
Adaptively adjust the initiating heap occupancy from the 
initial value of InitiatingHeapOccupancyPercent. The policy 
attempts to start marking in time based on application 
behavior.
src/share/vm/gc/g1/g1_globals.hpp
G1VerifyBitmapsOpenJDK8boolgcfalsedevelop
Verifies the consistency of the marking bitmaps
src/share/vm/gc/g1/g1_globals.hpp
G1VerifyCTCleanupOpenJDK6boolgcfalsedevelop
Verify card table cleanup.
src/share/vm/gc/g1/g1_globals.hpp
G1VerifyHeapRegionCodeRootsOpenJDK7boolgcfalsediagnostic
Verify the code root lists attached to each heap region.
src/share/vm/gc/g1/g1_globals.hpp
G1VerifyRSetsDuringFullGCOpenJDK7boolgcfalsediagnostic
If true, perform verification of each heap region's 
remembered set when verifying the heap during a full GC.
src/share/vm/gc/g1/g1_globals.hpp
GCALotAtAllSafepointsOpenJDK6boolruntimefalsenotproduct
Enforce ScavengeALot/GCALot at all potential safepoints
src/share/vm/runtime/globals.hpp
GCDrainStackTargetSizeOpenJDK6uintxruntime64
range(0, max_juint)
product
Number of entries we will try to leave on the stack 
during parallel gc
src/share/vm/runtime/globals.hpp
GCExpandToAllocateDelayMillisOpenJDK6uintxruntime0develop
Delay between expansion and allocation (in milliseconds)
src/share/vm/runtime/globals.hpp
GCHeapFreeLimitOpenJDK6uintxruntime2
range(0, 100)
product
Minimum percentage of free space after a full GC before an 
OutOfMemoryError is thrown (used with GCTimeLimit)
src/share/vm/runtime/globals.hpp
GCLockerEdenExpansionPercentOpenJDK6Obsoleted in JDK23
Expired in JDK24
uintxruntime5
range(0, 100)
product
How much the GC can expand the eden by while the GC locker 
is active (as a percentage)
src/share/vm/runtime/globals.hpp
GCLockerInvokesConcurrentOpenJDK6Obsoleted in JDK14
Expired in JDK15
boolruntimefalseproduct
The exit of a JNI critical section necessitating a scavenge, 
also kicks off a background concurrent collection
src/share/vm/runtime/globals.hpp
GCLockerRetryAllocationCountOpenJDK8uintxruntime2
range(0, max_uintx)
diagnostic
Number of times to retry allocations when 
blocked by the GC locker
src/share/vm/runtime/globals.hpp
GCParallelVerificationEnabledOpenJDK6boolruntimetruediagnostic
Enable parallel memory system verification
src/share/vm/runtime/globals.hpp
GCPauseIntervalMillisOpenJDK6uintxruntime0product
Time slice for MMU specification
src/share/vm/runtime/globals.hpp
GCTaskTimeStampEntriesOpenJDK6Obsoleted in JDK14
Expired in JDK16
uintruntime200
range(1, max_jint)
product
Number of time stamp entries per gc worker thread
src/share/vm/runtime/globals.hpp
GCTimeLimitOpenJDK6uintxruntime98
range(0, 100)
product
Limit of the proportion of time spent in GC before 
an OutOfMemoryError is thrown (used with GCHeapFreeLimit)
src/share/vm/runtime/globals.hpp
GCTimeRatioOpenJDK6uintxruntime99
range(0, max_juint)
product
Adaptive size policy application time to GC time ratio
src/share/vm/runtime/globals.hpp
GCWorkerDelayMillisOpenJDK8uintxruntime0develop
Delay in scheduling GC workers (in milliseconds)
src/share/vm/runtime/globals.hpp
GenerateArrayStoreCheckOpenJDK6boolc1truedevelop
Generates code for array store checks
src/share/vm/c1/c1_globals.hpp
GenerateRangeChecksOpenJDK6boolruntimetruedevelop
Generate range checks for array accesses
src/share/vm/runtime/globals.hpp
GenerateSynchronizationCodeOpenJDK6boolruntimetruedevelop
generate locking/unlocking code for synchronized methods and 
monitors
src/share/vm/runtime/globals.hpp
GuaranteedSafepointIntervalOpenJDK6intxruntime1000
range(0, max_jint)
diagnostic
Guarantee a safepoint (at least) every so many milliseconds 
(0 means none)
src/share/vm/runtime/globals.hpp
HeapBaseMinAddressOpenJDK6size_taixppc2*Gdefine_pd_global
src/os_cpu/aix_ppc/vm/globals_aix_ppc.hpp
HeapBaseMinAddressOpenJDK6size_tbsdx862*Gdefine_pd_global
src/os_cpu/bsd_x86/vm/globals_bsd_x86.hpp
HeapBaseMinAddressOpenJDK6size_tbsdzero2*Gdefine_pd_global
src/os_cpu/bsd_zero/vm/globals_bsd_zero.hpp
HeapBaseMinAddressOpenJDK6uintxlinuxaarch642*Gdefine_pd_global
src/os_cpu/linux_aarch64/vm/globals_linux_aarch64.hpp
HeapBaseMinAddressOpenJDK6size_tlinuxarm2*Gdefine_pd_global
src/os_cpu/linux_arm/vm/globals_linux_arm.hpp
HeapBaseMinAddressOpenJDK6size_tlinuxppc2*Gdefine_pd_global
src/os_cpu/linux_ppc/vm/globals_linux_ppc.hpp
HeapBaseMinAddressOpenJDK6size_tlinuxs3902*Gdefine_pd_global
src/os_cpu/linux_s390/vm/globals_linux_s390.hpp
HeapBaseMinAddressOpenJDK6size_tlinuxsparcCONST64(4)*Gdefine_pd_global
src/os_cpu/linux_sparc/vm/globals_linux_sparc.hpp
HeapBaseMinAddressOpenJDK6size_tlinuxx862*Gdefine_pd_global
src/os_cpu/linux_x86/vm/globals_linux_x86.hpp
HeapBaseMinAddressOpenJDK6size_tlinuxzero2*Gdefine_pd_global
src/os_cpu/linux_zero/vm/globals_linux_zero.hpp
HeapBaseMinAddressOpenJDK6size_truntimeproduct_pd
OS specific low limit for heap base address
src/share/vm/runtime/globals.hpp
HeapBaseMinAddressOpenJDK6size_tsolarissparc2*Gdefine_pd_global
src/os_cpu/solaris_sparc/vm/globals_solaris_sparc.hpp
HeapBaseMinAddressOpenJDK6size_tsolarisx862*Gdefine_pd_global
src/os_cpu/solaris_x86/vm/globals_solaris_x86.hpp
HeapBaseMinAddressOpenJDK6size_twindowsx862*Gdefine_pd_global
src/os_cpu/windows_x86/vm/globals_windows_x86.hpp
HeapDumpAfterFullGCOpenJDK6boolruntimefalsemanageable
Dump heap to file after any major stop-the-world GC
src/share/vm/runtime/globals.hpp
HeapDumpBeforeFullGCOpenJDK6boolruntimefalsemanageable
Dump heap to file before any major stop-the-world GC
src/share/vm/runtime/globals.hpp
HeapDumpOnOutOfMemoryErrorOpenJDK6boolruntimefalsemanageable
Dump heap to file when java.lang.OutOfMemoryError is thrown
src/share/vm/runtime/globals.hpp
HeapDumpPathOpenJDK6ccstrruntimeNULLmanageable
When HeapDumpOnOutOfMemoryError is on, the path (filename or 
directory) of the dump file (defaults to java_pid.hprof 
in the working directory)
src/share/vm/runtime/globals.hpp
HeapFirstMaximumCompactionCountOpenJDK6uintxruntime3
range(0, max_uintx)
product
The collection count for the first maximum compaction
src/share/vm/runtime/globals.hpp
HeapMaximumCompactionIntervalOpenJDK6uintxruntime20
range(0, max_uintx)
product
How often should we maximally compact the heap (not allowing 
any dead space)
src/share/vm/runtime/globals.hpp
HeapSearchStepsOpenJDK9uintxruntime3 PPC64_ONLY(+17)
range(1, max_uintx)
product
Heap allocation steps through preferred address regions to find
 where it can allocate the heap. Number of steps to take per 
region.
src/share/vm/runtime/globals.hpp
HeapSizePerGCThreadOpenJDK6size_truntimeScaleForWordSize(64*M)
range((size_t)os::vm_page_size(), (size_t)max_uintx)
product
Size of heap (bytes) per GC thread used in calculating the 
number of GC threads
src/share/vm/runtime/globals.hpp
HotCallCountThresholdOpenJDK6intxc2999999
range(0, max_intx)
develop
large numbers of calls (per method invocation) force hotness
src/share/vm/opto/c2_globals.hpp
HotCallProfitThresholdOpenJDK6intxc2999999
range(0, max_intx)
develop
highly profitable inlining opportunities force hotness
src/share/vm/opto/c2_globals.hpp
HotCallTrivialSizeOpenJDK6intxc2-1
range(-1, max_intx)
develop
trivial methods (no larger than this) force calls to be hot
src/share/vm/opto/c2_globals.hpp
HotCallTrivialWorkOpenJDK6intxc2-1
range(-1, max_intx)
develop
trivial execution time (no larger than this) forces hotness
src/share/vm/opto/c2_globals.hpp
HotMethodDetectionLimitOpenJDK9intxruntime100000
range(1, max_jint)
diagnostic
Number of compiled code invocations after which 
the method is considered as hot by the flusher
src/share/vm/runtime/globals.hpp
HugeMethodLimitOpenJDK6intxruntime8000develop
Don't compile methods larger than this if 
+DontCompileHugeMethods
src/share/vm/runtime/globals.hpp
ICMissHistogramOpenJDK6boolruntimefalsenotproduct
Produce histogram of IC misses
src/share/vm/runtime/globals.hpp
IEEEPrecisionOpenJDK6boolx86truedevelop
Enables IEEE precision (for INTEL only)
src/cpu/x86/vm/globals_x86.hpp
INTPRESSUREOpenJDK6intxaarch64c224define_pd_global
src/cpu/aarch64/vm/c2_globals_aarch64.hpp
INTPRESSUREOpenJDK6intxarmc212define_pd_global
src/cpu/arm/vm/c2_globals_arm.hpp
INTPRESSUREOpenJDK6intxc2develop_pd
Number of integer LRG's that constitute high register pressure
src/share/vm/opto/c2_globals.hpp
INTPRESSUREOpenJDK6intxppcc226define_pd_global
src/cpu/ppc/vm/c2_globals_ppc.hpp
INTPRESSUREOpenJDK6intxs390c210define_pd_global
// Medium size register set, 6 special purpose regs, 3 SOE regs.
src/cpu/s390/vm/c2_globals_s390.hpp
INTPRESSUREOpenJDK6intxsparcc248define_pd_global
// large register set
src/cpu/sparc/vm/c2_globals_sparc.hpp
INTPRESSUREOpenJDK6intxx86c26define_pd_global
src/cpu/x86/vm/c2_globals_x86.hpp
IdealizeClearArrayNodeOpenJDK9boolaarch64c2truedefine_pd_global
src/cpu/aarch64/vm/c2_globals_aarch64.hpp
IdealizeClearArrayNodeOpenJDK9boolc2diagnostic_pd
Replace ClearArrayNode by subgraph of basic operations.
src/share/vm/opto/c2_globals.hpp
IdealizeClearArrayNodeOpenJDK9boolppcc2truedefine_pd_global
src/cpu/ppc/vm/c2_globals_ppc.hpp
IdealizeClearArrayNodeOpenJDK9bools390c2falsedefine_pd_global
src/cpu/s390/vm/c2_globals_s390.hpp
IdealizeClearArrayNodeOpenJDK9boolsparcc2truedefine_pd_global
src/cpu/sparc/vm/c2_globals_sparc.hpp
IdealizeClearArrayNodeOpenJDK9boolx86c2truedefine_pd_global
src/cpu/x86/vm/c2_globals_x86.hpp
IdealizedNumericsOpenJDK6boolc2falsedevelop
Check performance difference allowing FP 
associativity and commutativity...
src/share/vm/opto/c2_globals.hpp
IgnoreEmptyClassPathsOpenJDK8boolruntimefalseproduct
Ignore empty path elements in -classpath
src/share/vm/runtime/globals.hpp
IgnoreLibthreadGPFaultOpenJDK6boolruntimefalsedevelop
Suppress workaround for libthread GP fault
src/share/vm/runtime/globals.hpp
IgnoreLockingAssertionsOpenJDK6boolruntimefalsenotproduct
disable locking assertions (for speed)
src/share/vm/runtime/globals.hpp
IgnoreRewritesOpenJDK6boolruntimefalsedevelop
Suppress rewrites of bytecodes in the oopmap generator. 
This is unsafe!
src/share/vm/runtime/globals.hpp
IgnoreUnrecognizedVMOptionsOpenJDK6boolruntimefalseproduct
Ignore unrecognized VM options
src/share/vm/runtime/globals.hpp
IgnoreUnverifiableClassesDuringDumpOpenJDK8Deprecated in JDK10
Obsoleted in JDK12
Expired in JDK13
boolruntimefalsediagnostic
Do not quit -Xshare:dump even if we encounter unverifiable 
classes. Just exclude them from the shared dictionary.
src/share/vm/runtime/globals.hpp
ImplicitDiv0ChecksOpenJDK6boolc1truedevelop
Use implicit division by zero checks
src/share/vm/c1/c1_globals.hpp
ImplicitNullCheckThresholdOpenJDK6intxc23
range(0, max_jint)
develop
Don't do implicit null checks if NPE's in a method exceeds 
limit
src/share/vm/opto/c2_globals.hpp
ImplicitNullChecksOpenJDK6boolaarch64truedefine_pd_global
// Generate code for implicit null checks
src/cpu/aarch64/vm/globals_aarch64.hpp
ImplicitNullChecksOpenJDK6boolarmtruedefine_pd_global
// Generate code for implicit null checks
src/cpu/arm/vm/globals_arm.hpp
ImplicitNullChecksOpenJDK6boolruntimediagnostic_pd
Generate code for implicit null checks
src/share/vm/runtime/globals.hpp
ImplicitNullChecksOpenJDK6boolppctruedefine_pd_global
// Generate code for implicit null checks.
src/cpu/ppc/vm/globals_ppc.hpp
ImplicitNullChecksOpenJDK6bools390truedefine_pd_global
// Generate code for implicit null checks.
src/cpu/s390/vm/globals_s390.hpp
ImplicitNullChecksOpenJDK6boolsparctruedefine_pd_global
// Generate code for implicit null checks
src/cpu/sparc/vm/globals_sparc.hpp
ImplicitNullChecksOpenJDK6boolx86truedefine_pd_global
// Generate code for implicit null checks
src/cpu/x86/vm/globals_x86.hpp
ImplicitNullChecksOpenJDK6boolzerotruedefine_pd_global
src/cpu/zero/vm/globals_zero.hpp
IncreaseFirstTierCompileThresholdAtOpenJDK8uintxruntime50
range(0, 99)
product
Increase the compile threshold for C1 compilation if the code 
cache is filled by the specified percentage
src/share/vm/runtime/globals.hpp
IncrementalInlineOpenJDK7boolc2trueproduct
do post parse inlining
src/share/vm/opto/c2_globals.hpp
IndexSetWatchOpenJDK6intxc20
range(-1, 0)
notproduct
Trace all operations on this IndexSet (-1 means all, 0 none)
src/share/vm/opto/c2_globals.hpp
InitArrayShortSizeOpenJDK9intxaarch64BytesPerLongdefine_pd_global
src/cpu/aarch64/vm/globals_aarch64.hpp
InitArrayShortSizeOpenJDK9intxarm8*BytesPerLongdefine_pd_global
src/cpu/arm/vm/globals_arm.hpp
InitArrayShortSizeOpenJDK9intxruntimediagnostic_pd
Threshold small size (in bytes) for clearing arrays. 
Anything this size or smaller may get converted to discrete 
scalar stores.
src/share/vm/runtime/globals.hpp
InitArrayShortSizeOpenJDK9intxppc9*BytesPerLongdefine_pd_global
src/cpu/ppc/vm/globals_ppc.hpp
InitArrayShortSizeOpenJDK9intxs3901*BytesPerLongdefine_pd_global
src/cpu/s390/vm/globals_s390.hpp
InitArrayShortSizeOpenJDK9intxsparc8*BytesPerLongdefine_pd_global
src/cpu/sparc/vm/globals_sparc.hpp
InitArrayShortSizeOpenJDK9intxx868*BytesPerLongdefine_pd_global
src/cpu/x86/vm/globals_x86.hpp
InitArrayShortSizeOpenJDK9intxzero0define_pd_global
src/cpu/zero/vm/globals_zero.hpp
InitialBootClassLoaderMetaspaceSizeOpenJDK8Deprecated in JDK15
Obsoleted in JDK16
Expired in JDK17
size_truntimeNOT_LP64(2200*K) LP64_ONLY(4*M)
range(30*K, max_uintx/BytesPerWord)
product
Initial size of the boot class loader data metaspace
src/share/vm/runtime/globals.hpp
InitialCodeCacheSizeOpenJDK6intxaarch64c1160*Kdefine_pd_global
src/cpu/aarch64/vm/c1_globals_aarch64.hpp
InitialCodeCacheSizeOpenJDK6intxaarch64c22496*Kdefine_pd_global
// Integral multiple of CodeCacheExpansionSize
src/cpu/aarch64/vm/c2_globals_aarch64.hpp
InitialCodeCacheSizeOpenJDK6size_tarmc1160*Kdefine_pd_global
src/cpu/arm/vm/c1_globals_arm.hpp
InitialCodeCacheSizeOpenJDK6uintxruntimeproduct_pd
Initial code cache size (in bytes)
src/share/vm/runtime/globals.hpp
InitialCodeCacheSizeOpenJDK6intxppcc1160*Kdefine_pd_global
src/cpu/ppc/vm/c1_globals_ppc.hpp
InitialCodeCacheSizeOpenJDK6intxppcc22048*Kdefine_pd_global
// Integral multiple of CodeCacheExpansionSize
src/cpu/ppc/vm/c2_globals_ppc.hpp
InitialCodeCacheSizeOpenJDK6uintxs390c1160*Kdefine_pd_global
src/cpu/s390/vm/c1_globals_s390.hpp
InitialCodeCacheSizeOpenJDK6uintxs390c22048*Kdefine_pd_global
// Integral multiple of CodeCacheExpansionSize
src/cpu/s390/vm/c2_globals_s390.hpp
InitialCodeCacheSizeOpenJDK6intxsparcc1160*Kdefine_pd_global
src/cpu/sparc/vm/c1_globals_sparc.hpp
InitialCodeCacheSizeOpenJDK6intxsparcc21536*Kdefine_pd_global
// Integral multiple of CodeCacheExpansionSize
src/cpu/sparc/vm/c2_globals_sparc.hpp
InitialCodeCacheSizeOpenJDK6intxx86c1160*Kdefine_pd_global
src/cpu/x86/vm/c1_globals_x86.hpp
InitialCodeCacheSizeOpenJDK6intxx86c22304*Kdefine_pd_global
// Integral multiple of CodeCacheExpansionSize
src/cpu/x86/vm/c2_globals_x86.hpp
InitialCodeCacheSizeOpenJDK6intxzeroshark160*Kdefine_pd_global
src/cpu/zero/vm/shark_globals_zero.hpp
InitialHeapSizeOpenJDK6size_truntime0product
Initial heap size (in bytes); zero means use ergonomics
src/share/vm/runtime/globals.hpp
InitialRAMFractionOpenJDK6Deprecated in JDK10
Obsoleted in JDK23
Expired in JDK24
uintxruntime64
range(1, max_uintx)
product
Fraction (1/n) of real memory used for initial heap size
src/share/vm/runtime/globals.hpp
InitialSurvivorRatioOpenJDK6uintxruntime8
range(0, max_uintx)
product
Initial ratio of young generation/survivor space size
src/share/vm/runtime/globals.hpp
InitialTenuringThresholdOpenJDK6uintxruntime7
range(0, markOopDesc::max_age + 1)
product
Initial value for tenuring threshold
src/share/vm/runtime/globals.hpp
InitiatingHeapOccupancyPercentOpenJDK6uintxruntime45
range(0, 100)
product
The percent occupancy (IHOP) of the current old generation 
capacity above which a concurrent mark cycle will be initiated 
Its value may change over time if adaptive IHOP is enabled, 
otherwise the value remains constant. 
In the latter case a value of 0 will result as frequent as 
possible concurrent marking cycles. A value of 100 disables 
concurrent marking. 
Fragmentation waste in the old generation is not considered 
free space in this calculation. (G1 collector only)
src/share/vm/runtime/globals.hpp
InjectGCWorkerCreationFailureOpenJDK9boolruntimefalsediagnostic
Inject thread creation failures for 
UseDynamicNumberOfGCThreads
src/share/vm/runtime/globals.hpp
InlineAccessorsOpenJDK6boolc2truedevelop
inline accessor methods (get/set)
src/share/vm/opto/c2_globals.hpp
InlineArrayCopyOpenJDK6boolruntimetruediagnostic
Inline arraycopy native that is known to be part of 
base library DLL
src/share/vm/runtime/globals.hpp
InlineClassNativesOpenJDK6boolruntimetruediagnostic
Inline Class.isInstance, etc
src/share/vm/runtime/globals.hpp
InlineDataFileOpenJDK8ccstrruntimeNULLproduct
File containing inlining replay information
[default: ./inline_pid%p.log] (%p replaced with pid)
src/share/vm/runtime/globals.hpp
InlineFrequencyCountOpenJDK6Obsoleted in JDK18
Expired in JDK19
intxaarch64100define_pd_global
src/cpu/aarch64/vm/globals_aarch64.hpp
InlineFrequencyCountOpenJDK6Obsoleted in JDK18
Expired in JDK19
intxarm50define_pd_global
src/cpu/arm/vm/globals_arm.hpp
InlineFrequencyCountOpenJDK6Obsoleted in JDK18
Expired in JDK19
intxruntimediagnostic_pd
Count of call site execution necessary to trigger frequent 
inlining
src/share/vm/runtime/globals.hpp
InlineFrequencyCountOpenJDK6Obsoleted in JDK18
Expired in JDK19
intxppc100define_pd_global
src/cpu/ppc/vm/globals_ppc.hpp
InlineFrequencyCountOpenJDK6Obsoleted in JDK18
Expired in JDK19
intxs390100define_pd_global
src/cpu/s390/vm/globals_s390.hpp
InlineFrequencyCountOpenJDK6Obsoleted in JDK18
Expired in JDK19
intxsparc50define_pd_global
// we can use more inlining on the SPARC
src/cpu/sparc/vm/globals_sparc.hpp
InlineFrequencyCountOpenJDK6Obsoleted in JDK18
Expired in JDK19
intxx86100define_pd_global
src/cpu/x86/vm/globals_x86.hpp
InlineFrequencyCountOpenJDK6Obsoleted in JDK18
Expired in JDK19
intxzero100define_pd_global
src/cpu/zero/vm/globals_zero.hpp
InlineFrequencyRatioOpenJDK6intxruntime20
range(0, max_jint)
develop
Ratio of call site execution to caller method invocation
src/share/vm/runtime/globals.hpp
InlineIntrinsicsOpenJDK6boolaarch64c1truedefine_pd_global
src/cpu/aarch64/vm/c1_globals_aarch64.hpp
InlineIntrinsicsOpenJDK6boolaarch64c2truedefine_pd_global
src/cpu/aarch64/vm/c2_globals_aarch64.hpp
InlineIntrinsicsOpenJDK6boolarmc1falsedefine_pd_global
// TODO: ARM
src/cpu/arm/vm/c1_globals_arm.hpp
InlineIntrinsicsOpenJDK6boolarmc2falsedefine_pd_global
src/cpu/arm/vm/c2_globals_arm.hpp
InlineIntrinsicsOpenJDK6boolruntimedevelop_pd
Inline intrinsics that can be statically resolved
src/share/vm/runtime/globals.hpp
InlineIntrinsicsOpenJDK6boolppcc1truedefine_pd_global
src/cpu/ppc/vm/c1_globals_ppc.hpp
InlineIntrinsicsOpenJDK6boolppcc2truedefine_pd_global
src/cpu/ppc/vm/c2_globals_ppc.hpp
InlineIntrinsicsOpenJDK6bools390c1truedefine_pd_global
src/cpu/s390/vm/c1_globals_s390.hpp
InlineIntrinsicsOpenJDK6bools390c2truedefine_pd_global
src/cpu/s390/vm/c2_globals_s390.hpp
InlineIntrinsicsOpenJDK6boolsparcc1truedefine_pd_global
src/cpu/sparc/vm/c1_globals_sparc.hpp
InlineIntrinsicsOpenJDK6boolsparcc2falsedefine_pd_global
src/cpu/sparc/vm/c2_globals_sparc.hpp
InlineIntrinsicsOpenJDK6boolx86c1truedefine_pd_global
src/cpu/x86/vm/c1_globals_x86.hpp
InlineIntrinsicsOpenJDK6boolx86c2truedefine_pd_global
src/cpu/x86/vm/c2_globals_x86.hpp
InlineIntrinsicsOpenJDK6boolzerosharkfalsedefine_pd_global
src/cpu/zero/vm/shark_globals_zero.hpp
InlineMathNativesOpenJDK6boolruntimetruediagnostic
Inline SinD, CosD, etc.
src/share/vm/runtime/globals.hpp
InlineMethodsWithExceptionHandlersOpenJDK6boolc1truedevelop
Inline methods containing exception handlers 
(NOTE: does not work with current backend)
src/share/vm/c1/c1_globals.hpp
InlineNIOCheckIndexOpenJDK6boolc1truediagnostic
Intrinsify java.nio.Buffer.checkIndex
src/share/vm/c1/c1_globals.hpp
InlineNativesOpenJDK6boolruntimetruediagnostic
Inline natives that are known to be part of base library DLL
src/share/vm/runtime/globals.hpp
InlineNotifyOpenJDK9Obsoleted in JDK11
Expired in JDK12
boolruntimetruediagnostic
intrinsify subset of notify
src/share/vm/runtime/globals.hpp
InlineObjectCopyOpenJDK6boolc2truediagnostic
inline Object.clone and Arrays.copyOf[Range] intrinsics
src/share/vm/opto/c2_globals.hpp
InlineObjectHashOpenJDK6boolruntimetruediagnostic
Inline Object::hashCode() native that is known to be part 
of base library DLL
src/share/vm/runtime/globals.hpp
InlineReflectionGetCallerClassOpenJDK6boolc2truediagnostic
inline sun.reflect.Reflection.getCallerClass(), known to be 
part of base library DLL
src/share/vm/opto/c2_globals.hpp
InlineSmallCodeOpenJDK6intxaarch641000define_pd_global
src/cpu/aarch64/vm/globals_aarch64.hpp
InlineSmallCodeOpenJDK6intxarm1500define_pd_global
src/cpu/arm/vm/globals_arm.hpp
InlineSmallCodeOpenJDK6intxruntimeproduct_pd
Only inline already compiled methods if their code size is 
less than this
src/share/vm/runtime/globals.hpp
InlineSmallCodeOpenJDK6intxppc1500define_pd_global
src/cpu/ppc/vm/globals_ppc.hpp
InlineSmallCodeOpenJDK6intxs3902000define_pd_global
src/cpu/s390/vm/globals_s390.hpp
InlineSmallCodeOpenJDK6intxsparc1500define_pd_global
src/cpu/sparc/vm/globals_sparc.hpp
InlineSmallCodeOpenJDK6intxx861000define_pd_global
src/cpu/x86/vm/globals_x86.hpp
InlineSmallCodeOpenJDK6intxzero1000define_pd_global
src/cpu/zero/vm/globals_zero.hpp
InlineSynchronizedMethodsOpenJDK6boolc1trueproduct
Inline synchronized methods
src/share/vm/c1/c1_globals.hpp
InlineThreadNativesOpenJDK6boolruntimetruediagnostic
Inline Thread.currentThread, etc
src/share/vm/runtime/globals.hpp
InlineThrowCountOpenJDK6intxruntime50
range(0, max_jint)
develop
Force inlining of interpreted methods that throw this often
src/share/vm/runtime/globals.hpp
InlineThrowMaxSizeOpenJDK6intxruntime200
range(0, max_jint)
develop
Force inlining of throwing methods smaller than this
src/share/vm/runtime/globals.hpp
InlineUnsafeOpsOpenJDK6boolruntimetruediagnostic
Inline memory ops (native methods) from Unsafe
src/share/vm/runtime/globals.hpp
InlineWarmCallsOpenJDK6boolc2falsedevelop
Use a heat-based priority queue to govern inlining
src/share/vm/opto/c2_globals.hpp
InlineOpenJDK6boolruntimetrueproduct
Enable inlining
src/share/vm/runtime/globals.hpp
InsertEndGroupPPC64OpenJDK7boolppcfalseproduct
Insert EndGroup instructions to optimize for Power6.
src/cpu/ppc/vm/globals_ppc.hpp
InsertMemBarAfterArraycopyOpenJDK6Obsoleted in JDK16
Expired in JDK17
boolc2trueproduct
Insert memory barrier after arraycopy call
src/share/vm/opto/c2_globals.hpp
InstallMethodsOpenJDK6boolc1truedevelop
Install methods at the end of successful compilations
src/share/vm/c1/c1_globals.hpp
InstructionCountCutoffOpenJDK6intxc137000
range(0, max_jint)
develop
If GraphBuilder adds this many instructions, bails out
src/share/vm/c1/c1_globals.hpp
InterceptOSExceptionOpenJDK6boolruntimefalsedevelop
Start debugger when an implicit OS (e.g. NULL) 
exception happens
src/share/vm/runtime/globals.hpp
InteriorEntryAlignmentOpenJDK6intxaarch64c216define_pd_global
src/cpu/aarch64/vm/c2_globals_aarch64.hpp
InteriorEntryAlignmentOpenJDK6intxarmc216define_pd_global
// = CodeEntryAlignment
src/cpu/arm/vm/c2_globals_arm.hpp
InteriorEntryAlignmentOpenJDK6intxc2product_pd
Code alignment for interior entry points 
in generated code (in bytes)
src/share/vm/opto/c2_globals.hpp
InteriorEntryAlignmentOpenJDK6intxppcc216define_pd_global
src/cpu/ppc/vm/c2_globals_ppc.hpp
InteriorEntryAlignmentOpenJDK6intxs390c22define_pd_global
src/cpu/s390/vm/c2_globals_s390.hpp
InteriorEntryAlignmentOpenJDK6intxsparcc216define_pd_global
// = CodeEntryAlignment
src/cpu/sparc/vm/c2_globals_sparc.hpp
InteriorEntryAlignmentOpenJDK6intxx86c24define_pd_global
src/cpu/x86/vm/c2_globals_x86.hpp
InterpreterProfilePercentageOpenJDK6intxruntime33
range(0, 100)
product
NON_TIERED number of method invocations/branches (expressed as 
% of CompileThreshold) before profiling in the interpreter
src/share/vm/runtime/globals.hpp
JVMCICounterSizeOpenJDK9intxjvmci0
range(0, max_jint)
experimental
Reserved size for benchmark counters
src/share/vm/jvmci/jvmci_globals.hpp
JVMCICountersExcludeCompilerOpenJDK9booljvmcitrueexperimental
Exclude JVMCI compiler threads from benchmark counters
src/share/vm/jvmci/jvmci_globals.hpp
JVMCIHostThreadsOpenJDK9intxjvmci1
range(1, max_jint)
experimental
Force number of compiler threads for JVMCI host compiler
src/share/vm/jvmci/jvmci_globals.hpp
JVMCINMethodSizeLimitOpenJDK9intxjvmci(80*K)*wordSizeexperimental
Maximum size of a compiled method.
src/share/vm/jvmci/jvmci_globals.hpp
JVMCIPrintPropertiesOpenJDK9booljvmcifalseexperimental
Prints properties used by the JVMCI compiler and exits
src/share/vm/jvmci/jvmci_globals.hpp
JVMCIThreadsOpenJDK9intxjvmci1
range(1, max_jint)
experimental
Force number of JVMCI compiler threads to use
src/share/vm/jvmci/jvmci_globals.hpp
JVMCITraceLevelOpenJDK9intxjvmci0experimental
Trace level for JVMCI: 

1 means emit a message for each CompilerToVM call,
levels greater than 1 provide progressively greater detail
src/share/vm/jvmci/jvmci_globals.hpp
JVMCIUseFastLockingOpenJDK9booljvmcitruedevelop
Use fast inlined locking code
src/share/vm/jvmci/jvmci_globals.hpp
JVMInvokeMethodSlackOpenJDK6size_taixppc8192define_pd_global
src/os_cpu/aix_ppc/vm/globals_aix_ppc.hpp
JVMInvokeMethodSlackOpenJDK6size_tbsdx868192define_pd_global
src/os_cpu/bsd_x86/vm/globals_bsd_x86.hpp
JVMInvokeMethodSlackOpenJDK6size_tbsdzero8192define_pd_global
src/os_cpu/bsd_zero/vm/globals_bsd_zero.hpp
JVMInvokeMethodSlackOpenJDK6uintxlinuxaarch648192define_pd_global
src/os_cpu/linux_aarch64/vm/globals_linux_aarch64.hpp
JVMInvokeMethodSlackOpenJDK6size_tlinuxarm8192define_pd_global
src/os_cpu/linux_arm/vm/globals_linux_arm.hpp
JVMInvokeMethodSlackOpenJDK6size_tlinuxppc8192define_pd_global
src/os_cpu/linux_ppc/vm/globals_linux_ppc.hpp
JVMInvokeMethodSlackOpenJDK6size_tlinuxs3908192define_pd_global
src/os_cpu/linux_s390/vm/globals_linux_s390.hpp
JVMInvokeMethodSlackOpenJDK6size_tlinuxsparc12288define_pd_global
src/os_cpu/linux_sparc/vm/globals_linux_sparc.hpp
JVMInvokeMethodSlackOpenJDK6size_tlinuxx868192define_pd_global
src/os_cpu/linux_x86/vm/globals_linux_x86.hpp
JVMInvokeMethodSlackOpenJDK6size_tlinuxzero8192define_pd_global
src/os_cpu/linux_zero/vm/globals_linux_zero.hpp
JVMInvokeMethodSlackOpenJDK6size_truntimedevelop_pd
Stack space (bytes) required for JVM_InvokeMethod to complete
src/share/vm/runtime/globals.hpp
JVMInvokeMethodSlackOpenJDK6size_tsolarissparc12288define_pd_global
src/os_cpu/solaris_sparc/vm/globals_solaris_sparc.hpp
JVMInvokeMethodSlackOpenJDK6size_tsolarisx8610*Kdefine_pd_global
src/os_cpu/solaris_x86/vm/globals_solaris_x86.hpp
JVMInvokeMethodSlackOpenJDK6size_twindowsx868192define_pd_global
src/os_cpu/windows_x86/vm/globals_windows_x86.hpp
JavaMonitorsInStackTraceOpenJDK6boolruntimetrueproduct
Print information about Java monitor locks when the stacks are
dumped
src/share/vm/runtime/globals.hpp
JavaPriority10_To_OSPriorityOpenJDK6intxruntime-1
range(-1, 127)
product
Map Java priorities to OS priorities
src/share/vm/runtime/globals.hpp
JavaPriority1_To_OSPriorityOpenJDK6intxruntime-1
range(-1, 127)
product
Map Java priorities to OS priorities
src/share/vm/runtime/globals.hpp
JavaPriority2_To_OSPriorityOpenJDK6intxruntime-1
range(-1, 127)
product
Map Java priorities to OS priorities
src/share/vm/runtime/globals.hpp
JavaPriority3_To_OSPriorityOpenJDK6intxruntime-1
range(-1, 127)
product
Map Java priorities to OS priorities
src/share/vm/runtime/globals.hpp
JavaPriority4_To_OSPriorityOpenJDK6intxruntime-1
range(-1, 127)
product
Map Java priorities to OS priorities
src/share/vm/runtime/globals.hpp
JavaPriority5_To_OSPriorityOpenJDK6intxruntime-1
range(-1, 127)
product
Map Java priorities to OS priorities
src/share/vm/runtime/globals.hpp
JavaPriority6_To_OSPriorityOpenJDK6intxruntime-1
range(-1, 127)
product
Map Java priorities to OS priorities
src/share/vm/runtime/globals.hpp
JavaPriority7_To_OSPriorityOpenJDK6intxruntime-1
range(-1, 127)
product
Map Java priorities to OS priorities
src/share/vm/runtime/globals.hpp
JavaPriority8_To_OSPriorityOpenJDK6intxruntime-1
range(-1, 127)
product
Map Java priorities to OS priorities
src/share/vm/runtime/globals.hpp
JavaPriority9_To_OSPriorityOpenJDK6intxruntime-1
range(-1, 127)
product
Map Java priorities to OS priorities
src/share/vm/runtime/globals.hpp
LIRFillDelaySlotsOpenJDK6Obsoleted in JDK15
Expired in JDK16
boolaarch64c1falsedefine_pd_global
src/cpu/aarch64/vm/c1_globals_aarch64.hpp
LIRFillDelaySlotsOpenJDK6Obsoleted in JDK15
Expired in JDK16
boolarmc1falsedefine_pd_global
src/cpu/arm/vm/c1_globals_arm.hpp
LIRFillDelaySlotsOpenJDK6Obsoleted in JDK15
Expired in JDK16
boolc1product_pd
fill delays on on SPARC with LIR
src/share/vm/c1/c1_globals.hpp
LIRFillDelaySlotsOpenJDK6Obsoleted in JDK15
Expired in JDK16
boolppcc1falsedefine_pd_global
src/cpu/ppc/vm/c1_globals_ppc.hpp
LIRFillDelaySlotsOpenJDK6Obsoleted in JDK15
Expired in JDK16
bools390c1falsedefine_pd_global
src/cpu/s390/vm/c1_globals_s390.hpp
LIRFillDelaySlotsOpenJDK6Obsoleted in JDK15
Expired in JDK16
boolsparcc1truedefine_pd_global
src/cpu/sparc/vm/c1_globals_sparc.hpp
LIRFillDelaySlotsOpenJDK6Obsoleted in JDK15
Expired in JDK16
boolx86c1falsedefine_pd_global
src/cpu/x86/vm/c1_globals_x86.hpp
LIRTraceExecutionOpenJDK6boolc1falsedevelop
add LIR code which logs the execution of blocks
src/share/vm/c1/c1_globals.hpp
LIRTracePeepholeOpenJDK6boolc1falsedevelop
Trace peephole optimizer
src/share/vm/c1/c1_globals.hpp
LargePageHeapSizeThresholdOpenJDK6size_truntime128*M
range(0, max_uintx)
product
Use large pages if maximum heap is at least this big
src/share/vm/runtime/globals.hpp
LargePageSizeInBytesOpenJDK6size_truntime0
range(0, max_uintx)
product
Large page size (0 to let VM choose the page size)
src/share/vm/runtime/globals.hpp
LargePagesIndividualAllocationInjectErrorOpenJDK6boolruntimefalsedevelop
Fail large pages individual allocation
src/share/vm/runtime/globals.hpp
LiveNodeCountInliningCutoffOpenJDK7intxc240000
range(0, max_juint / 8)
product
max number of live nodes in a method
src/share/vm/opto/c2_globals.hpp
LoadExecStackDllInVMThreadOpenJDK7boollinuxtrueproduct
Load DLLs with executable-stack attribute in the VM Thread
src/os/linux/vm/globals_linux.hpp
LoadLineNumberTablesOpenJDK6boolruntimetruedevelop
Tell whether the class file parser loads line number tables
src/share/vm/runtime/globals.hpp
LoadLocalVariableTablesOpenJDK6boolruntimetruedevelop
Tell whether the class file parser loads local variable tables
src/share/vm/runtime/globals.hpp
LoadLocalVariableTypeTablesOpenJDK6boolruntimetruedevelop
Tell whether the class file parser loads local variable type
tables
src/share/vm/runtime/globals.hpp
LoadPollAddressFromThreadOpenJDK7boolppcfalseproduct
Load polling page address from thread object (required for 
per-thread safepoints on platforms != IA64)
src/cpu/ppc/vm/globals_ppc.hpp
LogCompilationOpenJDK6boolruntimefalsediagnostic
Log compilation activity in detail to LogFile
src/share/vm/runtime/globals.hpp
LogEventsBufferEntriesOpenJDK6uintxruntime10
range(1, NOT_LP64(1*K) LP64_ONLY(1*M))
diagnostic
Number of ring buffer event logs
src/share/vm/runtime/globals.hpp
LogEventsOpenJDK6boolruntimetruediagnostic
Enable the various ring buffer event logs
src/share/vm/runtime/globals.hpp
LogFileOpenJDK6ccstrruntimeNULLdiagnostic
If LogVMOutput or LogCompilation is on, save VM output to 
this file [default: ./hotspot_pid%p.log] (%p replaced with pid)
src/share/vm/runtime/globals.hpp
LogSweeperOpenJDK6boolruntimefalsenotproduct
Keep a ring buffer of sweeper activity
src/share/vm/runtime/globals.hpp
LogTouchedMethodsOpenJDK9boolruntimefalsediagnostic
Log methods which have been ever touched in runtime
src/share/vm/runtime/globals.hpp
LogVMOutputOpenJDK6boolruntimefalsediagnostic
Save VM output to LogFile
src/share/vm/runtime/globals.hpp
LongCompileThresholdOpenJDK6intxruntime50develop
Used with +TraceLongCompiles
src/share/vm/runtime/globals.hpp
LoopMaxUnrollOpenJDK7intxc216
range(0, max_jint)
product
Maximum number of unrolls for main loop
src/share/vm/opto/c2_globals.hpp
LoopOptsCountOpenJDK6intxc243
range(5, 43)
product
Set level of loop optimization for tier 1 compiles
src/share/vm/opto/c2_globals.hpp
LoopPercentProfileLimitOpenJDK9intxaarch64c210define_pd_global
src/cpu/aarch64/vm/c2_globals_aarch64.hpp
LoopPercentProfileLimitOpenJDK9intxc2product_pd
Unroll loop bodies with % node count of profile limit
src/share/vm/opto/c2_globals.hpp
LoopPercentProfileLimitOpenJDK9intxppcc210define_pd_global
src/cpu/ppc/vm/c2_globals_ppc.hpp
LoopPercentProfileLimitOpenJDK9intxs390c210define_pd_global
src/cpu/s390/vm/c2_globals_s390.hpp
LoopPercentProfileLimitOpenJDK9intxsparcc210define_pd_global
src/cpu/sparc/vm/c2_globals_sparc.hpp
LoopPercentProfileLimitOpenJDK9intxx86c230define_pd_global
src/cpu/x86/vm/c2_globals_x86.hpp
LoopUnrollLimitOpenJDK6intxaarch64c260define_pd_global
src/cpu/aarch64/vm/c2_globals_aarch64.hpp
LoopUnrollLimitOpenJDK6intxc2product_pd
Unroll loop bodies with node count less than this
src/share/vm/opto/c2_globals.hpp
LoopUnrollLimitOpenJDK6intxppcc260define_pd_global
src/cpu/ppc/vm/c2_globals_ppc.hpp
LoopUnrollLimitOpenJDK6intxs390c260define_pd_global
src/cpu/s390/vm/c2_globals_s390.hpp
LoopUnrollLimitOpenJDK6intxsparcc260define_pd_global
// Design center runs on 1.3.1
src/cpu/sparc/vm/c2_globals_sparc.hpp
LoopUnrollLimitOpenJDK6intxx86c250define_pd_global
// Design center runs on 1.3.1
src/cpu/x86/vm/c2_globals_x86.hpp
LoopUnrollMinOpenJDK6intxc24
range(0, max_jint)
product
Minimum number of unroll loop bodies before checking progress
of rounds of unroll,optimize,..
src/share/vm/opto/c2_globals.hpp
LoopUnswitchingOpenJDK6boolc2trueproduct
Enable loop unswitching (a form of invariant test hoisting)
src/share/vm/opto/c2_globals.hpp
MVCLEThresholdOpenJDK9size_ts390+2*(4*K)product
Threshold above which page-aligned MVCLE copy/init is used.
src/cpu/s390/vm/globals_s390.hpp
MallocCatchPtrOpenJDK6intxruntime-1develop
Hit breakpoint when mallocing/freeing this pointer
src/share/vm/runtime/globals.hpp
MallocMaxTestWordsOpenJDK8uintxruntime0
range(0, max_uintx)
diagnostic
If non-zero, maximum number of words that malloc/realloc can 
allocate (for testing only)
src/share/vm/runtime/globals.hpp
ManagementServerOpenJDK6boolruntimefalseproduct
Create JMX Management Server
src/share/vm/runtime/globals.hpp
MarkStackSizeMaxOpenJDK6size_truntimeNOT_LP64(4*M) LP64_ONLY(512*M)
range(1, (max_jint - 1))
product
Maximum size of marking stack
src/share/vm/runtime/globals.hpp
MarkStackSizeOpenJDK6size_truntimeNOT_LP64(32*K) LP64_ONLY(4*M)product
Size of marking stack
src/share/vm/runtime/globals.hpp
MarkSweepAlwaysCompactCountOpenJDK6uintruntime4
range(1, max_juint)
product
How often should we fully compact the heap (ignoring the dead 
space parameters)
src/share/vm/runtime/globals.hpp
MarkSweepDeadRatioOpenJDK6uintxruntime5
range(0, 100)
product
Percentage (0-100) of the old gen allowed as dead wood. 
Serial mark sweep treats this as both the minimum and maximum 
value. 
CMS uses this value only if it falls back to mark sweep. 
Par compact uses a variable scale based on the density of the 
generation and treats this as the maximum value when the heap 
is either completely full or completely empty. Par compact 
also has a smaller default value; see arguments.cpp.
src/share/vm/runtime/globals.hpp
MaxBCEAEstimateLevelOpenJDK6intxruntime5
range(0, max_jint)
product
Maximum number of nested calls that are analyzed by BC EA
src/share/vm/runtime/globals.hpp
MaxBCEAEstimateSizeOpenJDK6intxruntime150
range(0, max_jint)
product
Maximum bytecode size of a method to be analyzed by BC EA
src/share/vm/runtime/globals.hpp
MaxDirectMemorySizeOpenJDK6uint64_truntime0
range(0, max_jlong)
product
Maximum total size of NIO direct-buffer allocations
src/share/vm/runtime/globals.hpp
MaxElementPrintSizeOpenJDK6intxruntime256notproduct
maximum number of elements to print
src/share/vm/runtime/globals.hpp
MaxExpectedDataSegmentSizeOpenJDK9uintxaix8*Gproduct
Maximum expected Data Segment Size.
src/os/aix/vm/globals_aix.hpp
MaxFDLimitOpenJDK6boolruntimetrueproduct
Bump the number of file descriptors to maximum in Solaris
src/share/vm/runtime/globals.hpp
MaxForceInlineLevelOpenJDK7intxruntime100
range(0, max_jint)
develop
maximum number of nested calls that are forced for inlining 
(using CompileCommand or marked w/ @ForceInline)
src/share/vm/runtime/globals.hpp
MaxGCMinorPauseMillisOpenJDK6Deprecated in JDK8
Obsoleted in JDK23
Expired in JDK24
uintxruntimemax_uintx
range(0, max_uintx)
product
Adaptive size policy maximum GC minor pause time goal 
in millisecond
src/share/vm/runtime/globals.hpp
MaxGCPauseMillisOpenJDK6uintxruntimemax_uintx - 1
range(1, max_uintx - 1)
product
Adaptive size policy maximum GC pause time goal in millisecond, 
or (G1 Only) the maximum GC time per MMU time slice
src/share/vm/runtime/globals.hpp
MaxHeapFreeRatioOpenJDK6uintxruntime70
range(0, 100)
manageable
The maximum percentage of heap free after GC to avoid shrinking.
 For most GCs this applies to the old generation. In G1 and
 ParallelGC it applies to the whole heap.
src/share/vm/runtime/globals.hpp
MaxHeapSizeOpenJDK6size_truntimeScaleForWordSize(96*M)product
Maximum heap size (in bytes)
src/share/vm/runtime/globals.hpp
MaxInlineLevelOpenJDK6intxruntime9
range(0, max_jint)
product
maximum number of nested calls that are inlined
src/share/vm/runtime/globals.hpp
MaxInlineSizeOpenJDK6intxruntime35
range(0, max_jint)
product
The maximum bytecode size of a method to be inlined
src/share/vm/runtime/globals.hpp
MaxInterpretedSearchLengthOpenJDK6intxruntime3develop
The maximum number of interpreted frames to skip when searching 
for recompilee
src/share/vm/runtime/globals.hpp
MaxJNILocalCapacityOpenJDK8intxruntime65536
range(min_intx, max_intx)
product
Maximum allowable local JNI handle capacity to 
EnsureLocalCapacity() and PushLocalFrame(), 
where <= 0 is unlimited, default: 65536
src/share/vm/runtime/globals.hpp
MaxJavaStackTraceDepthOpenJDK6intxruntime1024
range(0, max_jint/2)
product
The maximum number of lines in the stack trace for Java 
exceptions (0 means all)
src/share/vm/runtime/globals.hpp
MaxJumpTableSizeOpenJDK6intxc265000
range(0, max_intx)
product
Maximum number of targets in a generated jump table
src/share/vm/opto/c2_globals.hpp
MaxJumpTableSparsenessOpenJDK6intxc25
range(0, max_intx / 4)
product
Maximum sparseness for jumptables
src/share/vm/opto/c2_globals.hpp
MaxLabelRootDepthOpenJDK6intxc21100
range(100, max_jint)
product
Maximum times call Label_Root to prevent stack overflow
src/share/vm/opto/c2_globals.hpp
MaxLoopPadOpenJDK6intxc2(OptoLoopAlignment-1)
range(0, max_jint)
product
Align a loop if padding size in bytes is less or equal to this 
value
src/share/vm/opto/c2_globals.hpp
MaxMetaspaceExpansionOpenJDK8size_truntimeScaleForWordSize(4*M)
range(0, max_uintx)
product
The maximum expansion of Metaspace without full GC (in bytes)
src/share/vm/runtime/globals.hpp
MaxMetaspaceFreeRatioOpenJDK8uintxruntime70
range(0, 100)
product
The maximum percentage of Metaspace free after GC to avoid 
shrinking
src/share/vm/runtime/globals.hpp
MaxMetaspaceSizeOpenJDK8size_truntimemax_uintxproduct
Maximum size of Metaspaces (in bytes)
src/share/vm/runtime/globals.hpp
MaxNewSizeOpenJDK6size_truntimemax_uintx
range(0, max_uintx)
product
Maximum new generation size (in bytes), max_uintx means set 
ergonomically
src/share/vm/runtime/globals.hpp
MaxNodeLimitOpenJDK6intxc280000
range(1000, max_jint / 3)
product
Maximum number of nodes
src/share/vm/opto/c2_globals.hpp
MaxNodeLimitOpenJDK6intxshark65000product
Maximum number of nodes
src/share/vm/shark/shark_globals.hpp
MaxRAMFractionOpenJDK6Deprecated in JDK10
Obsoleted in JDK23
Expired in JDK24
uintxruntime4
range(1, max_uintx)
product
Maximum fraction (1/n) of real memory used for maximum heap 
size
src/share/vm/runtime/globals.hpp
MaxRAMOpenJDK6uint64_taarch64c11ULL*Gdefine_pd_global
src/cpu/aarch64/vm/c1_globals_aarch64.hpp
MaxRAMOpenJDK6uint64_taarch64c2128ULL*Gdefine_pd_global
src/cpu/aarch64/vm/c2_globals_aarch64.hpp
MaxRAMOpenJDK6uint64_tarmc11ULL*Gdefine_pd_global
src/cpu/arm/vm/c1_globals_arm.hpp
MaxRAMOpenJDK6uint64_truntimeproduct_pd
Real memory size (in bytes) used to set maximum heap size
src/share/vm/runtime/globals.hpp
MaxRAMOpenJDK6uint64_tppcc11ULL*Gdefine_pd_global
src/cpu/ppc/vm/c1_globals_ppc.hpp
MaxRAMOpenJDK6uint64_tppcc24ULL*Gdefine_pd_global
src/cpu/ppc/vm/c2_globals_ppc.hpp
MaxRAMOpenJDK6uint64_ts390c11ULL*Gdefine_pd_global
src/cpu/s390/vm/c1_globals_s390.hpp
MaxRAMOpenJDK6uint64_ts390c2128ULL*Gdefine_pd_global
src/cpu/s390/vm/c2_globals_s390.hpp
MaxRAMOpenJDK6uint64_tsparcc11ULL*Gdefine_pd_global
src/cpu/sparc/vm/c1_globals_sparc.hpp
MaxRAMOpenJDK6uint64_tsparcc24ULL*Gdefine_pd_global
src/cpu/sparc/vm/c2_globals_sparc.hpp
MaxRAMOpenJDK6uint64_tx86c11ULL*Gdefine_pd_global
src/cpu/x86/vm/c1_globals_x86.hpp
MaxRAMOpenJDK6uint64_tx86c24ULL*Gdefine_pd_global
src/cpu/x86/vm/c2_globals_x86.hpp
MaxRAMOpenJDK6uint64_tzeroshark1ULL*Gdefine_pd_global
src/cpu/zero/vm/shark_globals_zero.hpp
MaxRecompilationSearchLengthOpenJDK6intxruntime10develop
The maximum number of frames to inspect when searching for 
recompilee
src/share/vm/runtime/globals.hpp
MaxRecursiveInlineLevelOpenJDK6intxruntime1
range(0, max_jint)
product
maximum number of nested recursive calls that are inlined
src/share/vm/runtime/globals.hpp
MaxSubklassPrintSizeOpenJDK6intxruntime4notproduct
maximum number of subklasses to print when printing klass
src/share/vm/runtime/globals.hpp
MaxTenuringThresholdOpenJDK6uintxruntime15
range(0, markOopDesc::max_age + 1)
product
Maximum value for tenuring threshold
src/share/vm/runtime/globals.hpp
MaxTrivialSizeOpenJDK6intxruntime6
range(0, max_jint)
product
The maximum bytecode size of a trivial method to be inlined
src/share/vm/runtime/globals.hpp
MaxVectorSizeOpenJDK7intxc264
range(0, max_jint)
product
Max vector size in bytes, 
actual size could be less depending on elements type
src/share/vm/opto/c2_globals.hpp
MaxVirtMemFractionOpenJDK7uintxruntime2develop
Maximum fraction (1/n) of virtual memory used for ergonomically 
determining maximum heap size
src/share/vm/runtime/globals.hpp
MemProfilingIntervalOpenJDK6intxruntime500notproduct
Time between each invocation of the MemProfiler
src/share/vm/runtime/globals.hpp
MemProfilingOpenJDK6boolruntimefalsedevelop
Write memory usage profiling to log file
src/share/vm/runtime/globals.hpp
MetadataAllocationFailALotIntervalOpenJDK8uintxruntime1000develop
Metadata allocation failure a lot interval
src/share/vm/runtime/globals.hpp
MetadataAllocationFailALotOpenJDK8boolruntimefalsedevelop
Fail metadata allocations at intervals controlled by 
MetadataAllocationFailALotInterval
src/share/vm/runtime/globals.hpp
MetaspaceSizeOpenJDK8uintxaarch64c112*Mdefine_pd_global
src/cpu/aarch64/vm/c1_globals_aarch64.hpp
MetaspaceSizeOpenJDK8uintxaarch64c2ScaleForWordSize(16*M)define_pd_global
src/cpu/aarch64/vm/c2_globals_aarch64.hpp
MetaspaceSizeOpenJDK8size_tarmc112*Mdefine_pd_global
src/cpu/arm/vm/c1_globals_arm.hpp
MetaspaceSizeOpenJDK8size_truntimeproduct_pd
Initial threshold (in bytes) at which a garbage collection 
is done to reduce Metaspace usage
src/share/vm/runtime/globals.hpp
MetaspaceSizeOpenJDK8uintxppcc112*Mdefine_pd_global
src/cpu/ppc/vm/c1_globals_ppc.hpp
MetaspaceSizeOpenJDK8size_tppcc2ScaleForWordSize(16*M)define_pd_global
src/cpu/ppc/vm/c2_globals_ppc.hpp
MetaspaceSizeOpenJDK8size_ts390c112*Mdefine_pd_global
src/cpu/s390/vm/c1_globals_s390.hpp
MetaspaceSizeOpenJDK8size_ts390c2ScaleForWordSize(16*M)define_pd_global
src/cpu/s390/vm/c2_globals_s390.hpp
MetaspaceSizeOpenJDK8size_tsparcc112*Mdefine_pd_global
src/cpu/sparc/vm/c1_globals_sparc.hpp
MetaspaceSizeOpenJDK8size_tsparcc2ScaleForWordSize(16*M)define_pd_global
src/cpu/sparc/vm/c2_globals_sparc.hpp
MetaspaceSizeOpenJDK8size_tx86c112*Mdefine_pd_global
src/cpu/x86/vm/c1_globals_x86.hpp
MetaspaceSizeOpenJDK8size_tx86c2ScaleForWordSize(16*M)define_pd_global
src/cpu/x86/vm/c2_globals_x86.hpp
MetaspaceSizeOpenJDK8size_tzeroshark12*Mdefine_pd_global
src/cpu/zero/vm/shark_globals_zero.hpp
MethodFlushingOpenJDK6boolruntimetrueproduct
Reclamation of zombie and not-entrant methods
src/share/vm/runtime/globals.hpp
MethodHistogramCutoffOpenJDK6intxruntime100develop
The cutoff value for method invocation histogram (+CountCalls)
src/share/vm/runtime/globals.hpp
MethodProfileWidthOpenJDK9intxjvmci0experimental
Number of methods to record in call profile
src/share/vm/jvmci/jvmci_globals.hpp
MinHeapDeltaBytesOpenJDK6size_truntimeScaleForWordSize(128*K)
range(0, max_uintx)
product
The minimum change in heap space due to GC (in bytes)
src/share/vm/runtime/globals.hpp
MinHeapFreeRatioOpenJDK6uintxruntime40
range(0, 100)
manageable
The minimum percentage of heap free after GC to avoid expansion.
 For most GCs this applies to the old generation. In G1 and
 ParallelGC it applies to the whole heap.
src/share/vm/runtime/globals.hpp
MinInliningThresholdOpenJDK6Deprecated in JDK18
Obsoleted in JDK19
Expired in JDK20
intxruntime250
range(0, max_jint)
product
The minimum invocation count a method needs to have to be 
inlined
src/share/vm/runtime/globals.hpp
MinJumpTableSizeOpenJDK6intxaarch64c210define_pd_global
src/cpu/aarch64/vm/c2_globals_aarch64.hpp
MinJumpTableSizeOpenJDK6intxc2product_pd
Minimum number of targets in a generated jump table
src/share/vm/opto/c2_globals.hpp
MinJumpTableSizeOpenJDK6intxppcc210define_pd_global
src/cpu/ppc/vm/c2_globals_ppc.hpp
MinJumpTableSizeOpenJDK6intxs390c218define_pd_global
src/cpu/s390/vm/c2_globals_s390.hpp
MinJumpTableSizeOpenJDK6intxsparcc25define_pd_global
src/cpu/sparc/vm/c2_globals_sparc.hpp
MinJumpTableSizeOpenJDK6intxx86c210define_pd_global
src/cpu/x86/vm/c2_globals_x86.hpp
MinMetaspaceExpansionOpenJDK8size_truntimeScaleForWordSize(256*K)
range(0, max_uintx)
product
The minimum expansion of Metaspace (in bytes)
src/share/vm/runtime/globals.hpp
MinMetaspaceFreeRatioOpenJDK8uintxruntime40
range(0, 99)
product
The minimum percentage of Metaspace free after GC to avoid 
expansion
src/share/vm/runtime/globals.hpp
MinOopMapAllocationOpenJDK6intxruntime8develop
Minimum number of OopMap entries in an OopMapSet
src/share/vm/runtime/globals.hpp
MinPassesBeforeFlushOpenJDK9intxruntime10
range(0, max_intx)
diagnostic
Minimum number of sweeper passes before an nmethod 
can be flushed
src/share/vm/runtime/globals.hpp
MinRAMFractionOpenJDK6Deprecated in JDK10
Obsoleted in JDK23
Expired in JDK24
uintxruntime2
range(1, max_uintx)
product
Minimum fraction (1/n) of real memory used for maximum heap 
size on systems with small physical memory size
src/share/vm/runtime/globals.hpp
MinSleepIntervalOpenJDK6Deprecated in JDK9
Obsoleted in JDK10
Expired in JDK11
intxruntime1develop
Minimum sleep() interval (milliseconds) when 
ConvertSleepToYield is off (used for Solaris)
src/share/vm/runtime/globals.hpp
MinSurvivorRatioOpenJDK6uintxruntime3
range(3, max_uintx)
product
Minimum ratio of young generation/survivor space size
src/share/vm/runtime/globals.hpp
MinTLABSizeOpenJDK6size_truntime2*K
range(1, max_uintx/2)
product
Minimum allowed TLAB size (in bytes)
src/share/vm/runtime/globals.hpp
MonitorBoundOpenJDK6Deprecated in JDK14
Obsoleted in JDK15
Expired in JDK16
intxruntime0
range(0, max_jint)
product
Bound Monitor population
src/share/vm/runtime/globals.hpp
MonitorInUseListsOpenJDK6Deprecated in JDK10
Obsoleted in JDK12
Expired in JDK13
boolruntimetrueproduct
Track Monitors for Deflation
src/share/vm/runtime/globals.hpp
MonomorphicArrayCheckOpenJDK6boolc2truedevelop
Uncommon-trap array store checks that require full type check
src/share/vm/opto/c2_globals.hpp
MultiArrayExpandLimitOpenJDK6intxc26
range(0, max_jint)
product
Maximum number of individual allocations in an inline-expanded 
multianewarray instruction
src/share/vm/opto/c2_globals.hpp
MustCallLoadClassInternalOpenJDK6Deprecated in JDK10
Obsoleted in JDK11
Expired in JDK12
boolruntimefalseproduct
Call loadClassInternal() rather than loadClass()
src/share/vm/runtime/globals.hpp
NMethodSizeLimitOpenJDK6intxc1(64*K)*wordSize
range(0, max_jint)
develop
Maximum size of a compiled method.
src/share/vm/c1/c1_globals.hpp
NUMAChunkResizeWeightOpenJDK6uintxruntime20
range(0, 100)
product
Percentage (0-100) used to weight the current sample when 
computing exponentially decaying average for 
AdaptiveNUMAChunkSizing
src/share/vm/runtime/globals.hpp
NUMAInterleaveGranularityOpenJDK6size_truntime2*M
range(os::vm_allocation_granularity(), NOT_LP64(2*G) LP64_ONLY(8192*G))
product
Granularity to use for NUMA interleaving on Windows OS
src/share/vm/runtime/globals.hpp
NUMAPageScanRateOpenJDK6Obsoleted in JDK23
Expired in JDK24
uintxruntime256
range(0, max_uintx)
product
Maximum number of pages to include in the page scan procedure
src/share/vm/runtime/globals.hpp
NUMASpaceResizeRateOpenJDK6size_truntime1*G
range(0, max_uintx)
product
Do not reallocate more than this amount per collection
src/share/vm/runtime/globals.hpp
NUMAStatsOpenJDK6boolruntimefalseproduct
Print NUMA stats in detailed heap information
src/share/vm/runtime/globals.hpp
NativeMemoryTrackingOpenJDK7ccstrruntimeoffproduct
Native memory tracking options
src/share/vm/runtime/globals.hpp
NativeMonitorFlagsOpenJDK6Obsoleted in JDK11
Expired in JDK12
intxruntime0experimental
(Unstable)
src/share/vm/runtime/globals.hpp
NativeMonitorSpinLimitOpenJDK6Obsoleted in JDK11
Expired in JDK12
intxruntime20experimental
(Unstable)
src/share/vm/runtime/globals.hpp
NativeMonitorTimeoutOpenJDK6Obsoleted in JDK11
Expired in JDK12
intxruntime-1experimental
(Unstable)
src/share/vm/runtime/globals.hpp
NearCpoolOpenJDK9boolaarch64trueproduct
constant pool is close to instructions
src/cpu/aarch64/vm/globals_aarch64.hpp
NeedsDeoptSuspendOpenJDK6Obsoleted in JDK13
Expired in JDK14
boolaarch64falsedefine_pd_global
// only register window machines need this
src/cpu/aarch64/vm/globals_aarch64.hpp
NeedsDeoptSuspendOpenJDK6Obsoleted in JDK13
Expired in JDK14
boolarmfalsedefine_pd_global
// only register window machines need this
src/cpu/arm/vm/globals_arm.hpp
NeedsDeoptSuspendOpenJDK6Obsoleted in JDK13
Expired in JDK14
boolruntimeproduct_pd
True for register window machines (sparc/ia64)
src/share/vm/runtime/globals.hpp
NeedsDeoptSuspendOpenJDK6Obsoleted in JDK13
Expired in JDK14
boolppcfalsedefine_pd_global
// Only register window machines need this.
src/cpu/ppc/vm/globals_ppc.hpp
NeedsDeoptSuspendOpenJDK6Obsoleted in JDK13
Expired in JDK14
bools390falsedefine_pd_global
// Only register window machines need this.
src/cpu/s390/vm/globals_s390.hpp
NeedsDeoptSuspendOpenJDK6Obsoleted in JDK13
Expired in JDK14
boolsparctruedefine_pd_global
// register window machines need this
src/cpu/sparc/vm/globals_sparc.hpp
NeedsDeoptSuspendOpenJDK6Obsoleted in JDK13
Expired in JDK14
boolx86falsedefine_pd_global
// only register window machines need this
src/cpu/x86/vm/globals_x86.hpp
NeedsDeoptSuspendOpenJDK6Obsoleted in JDK13
Expired in JDK14
boolzerofalsedefine_pd_global
src/cpu/zero/vm/globals_zero.hpp
NestedInliningSizeRatioOpenJDK6intxc190
range(0, 100)
develop
Percentage of prev. allowed inline size in recursive inlining
src/share/vm/c1/c1_globals.hpp
NeverActAsServerClassMachineOpenJDK6boolaarch64c1truedefine_pd_global
src/cpu/aarch64/vm/c1_globals_aarch64.hpp
NeverActAsServerClassMachineOpenJDK6boolaarch64c2falsedefine_pd_global
src/cpu/aarch64/vm/c2_globals_aarch64.hpp
NeverActAsServerClassMachineOpenJDK6boolarmc1truedefine_pd_global
src/cpu/arm/vm/c1_globals_arm.hpp
NeverActAsServerClassMachineOpenJDK6boolruntimeproduct_pd
Never act like a server-class machine
src/share/vm/runtime/globals.hpp
NeverActAsServerClassMachineOpenJDK6boolppcc1truedefine_pd_global
src/cpu/ppc/vm/c1_globals_ppc.hpp
NeverActAsServerClassMachineOpenJDK6boolppcc2falsedefine_pd_global
src/cpu/ppc/vm/c2_globals_ppc.hpp
NeverActAsServerClassMachineOpenJDK6bools390c1truedefine_pd_global
src/cpu/s390/vm/c1_globals_s390.hpp
NeverActAsServerClassMachineOpenJDK6bools390c2falsedefine_pd_global
src/cpu/s390/vm/c2_globals_s390.hpp
NeverActAsServerClassMachineOpenJDK6boolsparcc1truedefine_pd_global
src/cpu/sparc/vm/c1_globals_sparc.hpp
NeverActAsServerClassMachineOpenJDK6boolsparcc2falsedefine_pd_global
src/cpu/sparc/vm/c2_globals_sparc.hpp
NeverActAsServerClassMachineOpenJDK6boolx86c1truedefine_pd_global
src/cpu/x86/vm/c1_globals_x86.hpp
NeverActAsServerClassMachineOpenJDK6boolx86c2falsedefine_pd_global
src/cpu/x86/vm/c2_globals_x86.hpp
NeverActAsServerClassMachineOpenJDK6boolzerosharktruedefine_pd_global
src/cpu/zero/vm/shark_globals_zero.hpp
NeverTenureOpenJDK6boolruntimefalseproduct
Never tenure objects in eden, may tenure on overflow 
(ParallelGC only)
src/share/vm/runtime/globals.hpp
NewCodeParameterOpenJDK6intxruntime0develop
Testing Only: Create a dedicated integer parameter before 
putback
src/share/vm/runtime/globals.hpp
NewRatioOpenJDK6uintxruntime2
range(0, max_uintx-1)
product
Ratio of old/new generation sizes
src/share/vm/runtime/globals.hpp
NewRatioOpenJDK6uintxzeroshark12define_pd_global
src/cpu/zero/vm/shark_globals_zero.hpp
NewSizeThreadIncreaseOpenJDK6intxaarch64c14*Kdefine_pd_global
src/cpu/aarch64/vm/c1_globals_aarch64.hpp
NewSizeThreadIncreaseOpenJDK6intxaarch64c2ScaleForWordSize(4*K)define_pd_global
src/cpu/aarch64/vm/c2_globals_aarch64.hpp
NewSizeThreadIncreaseOpenJDK6size_tarmc14*Kdefine_pd_global
src/cpu/arm/vm/c1_globals_arm.hpp
NewSizeThreadIncreaseOpenJDK6size_tarmc2ScaleForWordSize(4*K)define_pd_global
src/cpu/arm/vm/c2_globals_arm.hpp
NewSizeThreadIncreaseOpenJDK6size_truntimeproduct_pd
Additional size added to desired new generation size per 
non-daemon thread (in bytes)
src/share/vm/runtime/globals.hpp
NewSizeThreadIncreaseOpenJDK6intxppcc116*Kdefine_pd_global
src/cpu/ppc/vm/c1_globals_ppc.hpp
NewSizeThreadIncreaseOpenJDK6size_tppcc2ScaleForWordSize(4*K)define_pd_global
src/cpu/ppc/vm/c2_globals_ppc.hpp
NewSizeThreadIncreaseOpenJDK6size_ts390c116*Kdefine_pd_global
src/cpu/s390/vm/c1_globals_s390.hpp
NewSizeThreadIncreaseOpenJDK6size_ts390c2ScaleForWordSize(4*K)define_pd_global
src/cpu/s390/vm/c2_globals_s390.hpp
NewSizeThreadIncreaseOpenJDK6size_tsparcc116*Kdefine_pd_global
src/cpu/sparc/vm/c1_globals_sparc.hpp
NewSizeThreadIncreaseOpenJDK6size_tsparcc2ScaleForWordSize(4*K)define_pd_global
src/cpu/sparc/vm/c2_globals_sparc.hpp
NewSizeThreadIncreaseOpenJDK6size_tx86c14*Kdefine_pd_global
src/cpu/x86/vm/c1_globals_x86.hpp
NewSizeThreadIncreaseOpenJDK6size_tx86c24*Kdefine_pd_global
src/cpu/x86/vm/c2_globals_x86.hpp
NewSizeThreadIncreaseOpenJDK6size_tzeroshark4*Kdefine_pd_global
src/cpu/zero/vm/shark_globals_zero.hpp
NewSizeOpenJDK6size_truntimeScaleForWordSize(1*M)product
Initial new generation size (in bytes)
src/share/vm/runtime/globals.hpp
NmethodSweepActivityOpenJDK8intxruntime10
range(0, 2000)
product
Removes cold nmethods from code cache if > 0. Higher values 
result in more aggressive sweeping
src/share/vm/runtime/globals.hpp
NodeCountInliningCutoffOpenJDK6intxc218000
range(0, max_jint)
develop
If parser node generation exceeds limit stop inlining
src/share/vm/opto/c2_globals.hpp
NodeCountInliningStepOpenJDK6intxc21000
range(0, max_jint)
develop
Target size of warm calls inlined between optimization passes
src/share/vm/opto/c2_globals.hpp
NodeLimitFudgeFactorOpenJDK6intxc22000product
Fudge Factor for certain optimizations
src/share/vm/opto/c2_globals.hpp
NonNMethodCodeHeapSizeOpenJDK9intxaarch64c15*Mdefine_pd_global
src/cpu/aarch64/vm/c1_globals_aarch64.hpp
NonNMethodCodeHeapSizeOpenJDK9intxaarch64c25*Mdefine_pd_global
src/cpu/aarch64/vm/c2_globals_aarch64.hpp
NonNMethodCodeHeapSizeOpenJDK9size_tarmc15*Mdefine_pd_global
src/cpu/arm/vm/c1_globals_arm.hpp
NonNMethodCodeHeapSizeOpenJDK9uintxruntimeproduct_pd
Size of code heap with non-nmethods (in bytes)
src/share/vm/runtime/globals.hpp
NonNMethodCodeHeapSizeOpenJDK9intxppcc25*Mdefine_pd_global
src/cpu/ppc/vm/c2_globals_ppc.hpp
NonNMethodCodeHeapSizeOpenJDK9uintxs390c15*Mdefine_pd_global
src/cpu/s390/vm/c1_globals_s390.hpp
NonNMethodCodeHeapSizeOpenJDK9uintxs390c25*Mdefine_pd_global
src/cpu/s390/vm/c2_globals_s390.hpp
NonNMethodCodeHeapSizeOpenJDK9intxsparcc15*Mdefine_pd_global
src/cpu/sparc/vm/c1_globals_sparc.hpp
NonNMethodCodeHeapSizeOpenJDK9intxsparcc25*Mdefine_pd_global
src/cpu/sparc/vm/c2_globals_sparc.hpp
NonNMethodCodeHeapSizeOpenJDK9intxx86c15*Mdefine_pd_global
src/cpu/x86/vm/c1_globals_x86.hpp
NonNMethodCodeHeapSizeOpenJDK9intxx86c25*Mdefine_pd_global
src/cpu/x86/vm/c2_globals_x86.hpp
NonNMethodCodeHeapSizeOpenJDK9intxzeroshark5*Mdefine_pd_global
src/cpu/zero/vm/shark_globals_zero.hpp
NonProfiledCodeHeapSizeOpenJDK9intxaarch64c113*Mdefine_pd_global
src/cpu/aarch64/vm/c1_globals_aarch64.hpp
NonProfiledCodeHeapSizeOpenJDK9intxaarch64c221*Mdefine_pd_global
src/cpu/aarch64/vm/c2_globals_aarch64.hpp
NonProfiledCodeHeapSizeOpenJDK9size_tarmc113*Mdefine_pd_global
src/cpu/arm/vm/c1_globals_arm.hpp
NonProfiledCodeHeapSizeOpenJDK9uintxruntimeproduct_pd
Size of code heap with non-profiled methods (in bytes)
src/share/vm/runtime/globals.hpp
NonProfiledCodeHeapSizeOpenJDK9intxppcc2125*Mdefine_pd_global
src/cpu/ppc/vm/c2_globals_ppc.hpp
NonProfiledCodeHeapSizeOpenJDK9uintxs390c113*Mdefine_pd_global
src/cpu/s390/vm/c1_globals_s390.hpp
NonProfiledCodeHeapSizeOpenJDK9uintxs390c221*Mdefine_pd_global
src/cpu/s390/vm/c2_globals_s390.hpp
NonProfiledCodeHeapSizeOpenJDK9intxsparcc113*Mdefine_pd_global
src/cpu/sparc/vm/c1_globals_sparc.hpp
NonProfiledCodeHeapSizeOpenJDK9intxsparcc213*Mdefine_pd_global
src/cpu/sparc/vm/c2_globals_sparc.hpp
NonProfiledCodeHeapSizeOpenJDK9intxx86c113*Mdefine_pd_global
src/cpu/x86/vm/c1_globals_x86.hpp
NonProfiledCodeHeapSizeOpenJDK9intxx86c221*Mdefine_pd_global
src/cpu/x86/vm/c2_globals_x86.hpp
NonProfiledCodeHeapSizeOpenJDK9intxzeroshark13*Mdefine_pd_global
src/cpu/zero/vm/shark_globals_zero.hpp
NotifySimulatorOpenJDK9boolaarch64UseBuiltinSimproduct
tell the AArch64 sim where we are in method code
src/cpu/aarch64/vm/globals_aarch64.hpp
NumberOfLoopInstrToAlignOpenJDK6intxc24
range(0, max_jint)
product
Number of first instructions in a loop to align
src/share/vm/opto/c2_globals.hpp
OSROnlyBCIOpenJDK6intxruntime-1develop
OSR only at this bci. Negative values mean exclude that bci
src/share/vm/runtime/globals.hpp
ObjArrayMarkingStrideOpenJDK6uintxruntime2048develop
Number of object array elements to push onto the marking stack 
before pushing a continuation entry
src/share/vm/runtime/globals.hpp
ObjectAlignmentInBytesOpenJDK6intxruntime8
range(8, 256)
lp64_product
Default object alignment in bytes, 8 is minimum
src/share/vm/runtime/globals.hpp
ObjectCountCutOffPercentOpenJDK7doubleruntime0.5
range(0.0, 100.0)
experimental
The percentage of the used heap that the instances of a class 
must occupy for the class to generate a trace event
src/share/vm/runtime/globals.hpp
OldPLABSizeOpenJDK6size_truntime1024product
Size of old gen promotion LAB's (in HeapWords), or Number 
of blocks to attempt to claim when refilling CMS LAB's
src/share/vm/runtime/globals.hpp
OldPLABWeightOpenJDK6Obsoleted in JDK14
Expired in JDK15
uintxruntime50
range(0, 100)
product
Percentage (0-100) used to weight the current sample when 
computing exponentially decaying average for resizing 
OldPLABSize
src/share/vm/runtime/globals.hpp
OldSizeOpenJDK6size_truntimeScaleForWordSize(4*M)
range(0, max_uintx)
product
Initial tenured generation size (in bytes)
src/share/vm/runtime/globals.hpp
OmitStackTraceInFastThrowOpenJDK6boolruntimetrueproduct
Omit backtraces for some 'hot' exceptions in optimized code
src/share/vm/runtime/globals.hpp
OnErrorOpenJDK6ccstrlistruntime
product
Run user-defined commands on fatal error; see VMError.cpp 
for examples
src/share/vm/runtime/globals.hpp
OnOutOfMemoryErrorOpenJDK6ccstrlistruntime
product
Run user-defined commands on first java.lang.OutOfMemoryError
src/share/vm/runtime/globals.hpp
OnStackReplacePercentageOpenJDK6intxaarch64c1933define_pd_global
src/cpu/aarch64/vm/c1_globals_aarch64.hpp
OnStackReplacePercentageOpenJDK6intxaarch64c2140define_pd_global
src/cpu/aarch64/vm/c2_globals_aarch64.hpp
OnStackReplacePercentageOpenJDK6intxarmc1933define_pd_global
src/cpu/arm/vm/c1_globals_arm.hpp
OnStackReplacePercentageOpenJDK6intxarmc2140define_pd_global
src/cpu/arm/vm/c2_globals_arm.hpp
OnStackReplacePercentageOpenJDK6intxruntimeproduct_pd
NON_TIERED number of method invocations/branches (expressed as 
% of CompileThreshold) before (re-)compiling OSR code
src/share/vm/runtime/globals.hpp
OnStackReplacePercentageOpenJDK6intxppcc11400define_pd_global
src/cpu/ppc/vm/c1_globals_ppc.hpp
OnStackReplacePercentageOpenJDK6intxppcc2140define_pd_global
src/cpu/ppc/vm/c2_globals_ppc.hpp
OnStackReplacePercentageOpenJDK6intxs390c11400define_pd_global
src/cpu/s390/vm/c1_globals_s390.hpp
OnStackReplacePercentageOpenJDK6intxs390c2140define_pd_global
src/cpu/s390/vm/c2_globals_s390.hpp
OnStackReplacePercentageOpenJDK6intxsparcc11400define_pd_global
src/cpu/sparc/vm/c1_globals_sparc.hpp
OnStackReplacePercentageOpenJDK6intxsparcc2140define_pd_global
src/cpu/sparc/vm/c2_globals_sparc.hpp
OnStackReplacePercentageOpenJDK6intxx86c1933define_pd_global
src/cpu/x86/vm/c1_globals_x86.hpp
OnStackReplacePercentageOpenJDK6intxx86c2140define_pd_global
src/cpu/x86/vm/c2_globals_x86.hpp
OnStackReplacePercentageOpenJDK6intxzeroshark933define_pd_global
src/cpu/zero/vm/shark_globals_zero.hpp
OptimizeExpensiveOpsOpenJDK7boolc2truediagnostic
Find best control for expensive operations
src/share/vm/opto/c2_globals.hpp
OptimizeFillOpenJDK6boolc2true PPC64_ONLY(&& false)product
convert fill/copy loops into intrinsic
src/share/vm/opto/c2_globals.hpp
OptimizeIfOpsOpenJDK6boolc1truedevelop
Optimize multiple IfOps
src/share/vm/c1/c1_globals.hpp
OptimizePollingPageLocationOpenJDK7boolaixtrueproduct
Optimize the location of the polling page used for Safepoints
src/os/aix/vm/globals_aix.hpp
OptimizePtrCompareOpenJDK6boolc2trueproduct
Use escape analysis to optimize pointers compare
src/share/vm/opto/c2_globals.hpp
OptimizeSinglePrecisionOpenJDK6boolaarch64c1truedefine_pd_global
src/cpu/aarch64/vm/c1_globals_aarch64.hpp
OptimizeSinglePrecisionOpenJDK6boolarmc1truedefine_pd_global
src/cpu/arm/vm/c1_globals_arm.hpp
OptimizeSinglePrecisionOpenJDK6boolppcc1falsedefine_pd_global
src/cpu/ppc/vm/c1_globals_ppc.hpp
OptimizeSinglePrecisionOpenJDK6bools390c1falsedefine_pd_global
src/cpu/s390/vm/c1_globals_s390.hpp
OptimizeSinglePrecisionOpenJDK6boolsparcc1falsedefine_pd_global
src/cpu/sparc/vm/c1_globals_sparc.hpp
OptimizeSinglePrecisionOpenJDK6boolx86c1truedefine_pd_global
src/cpu/x86/vm/c1_globals_x86.hpp
OptimizeStringConcatOpenJDK6boolc2trueproduct
Optimize the construction of Strings by StringBuilder
src/share/vm/opto/c2_globals.hpp
OptimizeUnsafesOpenJDK6boolc1truedevelop
Optimize raw unsafe ops
src/share/vm/c1/c1_globals.hpp
OptoBlockListSizeOpenJDK6intxc28
range(0, max_jint)
develop
Starting allocation size of Block_List data structures
src/share/vm/opto/c2_globals.hpp
OptoBreakpointC2ROpenJDK6boolc2falsenotproduct
insert breakpoint at runtime stub entry
src/share/vm/opto/c2_globals.hpp
OptoBreakpointOSROpenJDK6boolc2falsenotproduct
insert breakpoint at osr method entry
src/share/vm/opto/c2_globals.hpp
OptoBreakpointOpenJDK6boolc2falsedevelop
insert breakpoint at method entry
src/share/vm/opto/c2_globals.hpp
OptoBundlingOpenJDK6boolaarch64c2falsedefine_pd_global
src/cpu/aarch64/vm/c2_globals_aarch64.hpp
OptoBundlingOpenJDK6boolc2product_pd
Generate nops to fill i-cache lines
src/share/vm/opto/c2_globals.hpp
OptoBundlingOpenJDK6boolppcc2falsedefine_pd_global
src/cpu/ppc/vm/c2_globals_ppc.hpp
OptoBundlingOpenJDK6bools390c2falsedefine_pd_global
src/cpu/s390/vm/c2_globals_s390.hpp
OptoBundlingOpenJDK6boolsparcc2falsedefine_pd_global
src/cpu/sparc/vm/c2_globals_sparc.hpp
OptoBundlingOpenJDK6boolx86c2falsedefine_pd_global
src/cpu/x86/vm/c2_globals_x86.hpp
OptoCoalesceOpenJDK6boolc2truedevelop
Use Conservative Copy Coalescing in the Register Allocator
src/share/vm/opto/c2_globals.hpp
OptoLoopAlignmentOpenJDK6intxaarch6416define_pd_global
src/cpu/aarch64/vm/globals_aarch64.hpp
OptoLoopAlignmentOpenJDK6intxarm16define_pd_global
src/cpu/arm/vm/globals_arm.hpp
OptoLoopAlignmentOpenJDK6intxruntimeproduct_pd
Align inner loops to zero relative to this modulus
src/share/vm/runtime/globals.hpp
OptoLoopAlignmentOpenJDK6intxppc16define_pd_global
src/cpu/ppc/vm/globals_ppc.hpp
OptoLoopAlignmentOpenJDK6intxs3902define_pd_global
src/cpu/s390/vm/globals_s390.hpp
OptoLoopAlignmentOpenJDK6intxsparc16define_pd_global
// = 4*wordSize
src/cpu/sparc/vm/globals_sparc.hpp
OptoLoopAlignmentOpenJDK6intxx8616define_pd_global
src/cpu/x86/vm/globals_x86.hpp
OptoLoopAlignmentOpenJDK6intxzero16define_pd_global
src/cpu/zero/vm/globals_zero.hpp
OptoNoExecuteOpenJDK6boolc2falsenotproduct
Attempt to parse and compile but do not execute generated code
src/share/vm/opto/c2_globals.hpp
OptoNodeListSizeOpenJDK6intxc24
range(0, max_jint)
develop
Starting allocation size of Node_List data structures
src/share/vm/opto/c2_globals.hpp
OptoPeepholeAtOpenJDK6intxc2-1develop
Apply peephole optimizations to this peephole rule
src/share/vm/opto/c2_globals.hpp
OptoPeepholeOpenJDK6boolaarch64c2falsedefine_pd_global
src/cpu/aarch64/vm/c2_globals_aarch64.hpp
OptoPeepholeOpenJDK6boolc2develop_pd
Apply peephole optimizations after register allocation
src/share/vm/opto/c2_globals.hpp
OptoPeepholeOpenJDK6boolppcc2falsedefine_pd_global
src/cpu/ppc/vm/c2_globals_ppc.hpp
OptoPeepholeOpenJDK6bools390c2falsedefine_pd_global
src/cpu/s390/vm/c2_globals_s390.hpp
OptoPeepholeOpenJDK6boolsparcc2falsedefine_pd_global
src/cpu/sparc/vm/c2_globals_sparc.hpp
OptoPeepholeOpenJDK6boolx86c2truedefine_pd_global
src/cpu/x86/vm/c2_globals_x86.hpp
OptoPrologueNopsOpenJDK6intxc20
range(0, 128)
develop
Insert this many extra nop instructions 
in the prologue of every nmethod
src/share/vm/opto/c2_globals.hpp
OptoRegSchedulingOpenJDK9boolaarch64c2falsedefine_pd_global
src/cpu/aarch64/vm/c2_globals_aarch64.hpp
OptoRegSchedulingOpenJDK9boolc2product_pd
Instruction Scheduling before register allocation for pressure
src/share/vm/opto/c2_globals.hpp
OptoRegSchedulingOpenJDK9boolppcc2falsedefine_pd_global
src/cpu/ppc/vm/c2_globals_ppc.hpp
OptoRegSchedulingOpenJDK9bools390c2falsedefine_pd_global
src/cpu/s390/vm/c2_globals_s390.hpp
OptoRegSchedulingOpenJDK9boolsparcc2falsedefine_pd_global
src/cpu/sparc/vm/c2_globals_sparc.hpp
OptoRegSchedulingOpenJDK9boolx86c2truedefine_pd_global
src/cpu/x86/vm/c2_globals_x86.hpp
OptoRemoveUselessOpenJDK6boolc2truedevelop
Remove useless nodes after parsing
src/share/vm/opto/c2_globals.hpp
OptoSchedulingOpenJDK6boolaarch64c2falsedefine_pd_global
src/cpu/aarch64/vm/c2_globals_aarch64.hpp
OptoSchedulingOpenJDK6boolc2product_pd
Instruction Scheduling after register allocation
src/share/vm/opto/c2_globals.hpp
OptoSchedulingOpenJDK6boolppcc2falsedefine_pd_global
src/cpu/ppc/vm/c2_globals_ppc.hpp
OptoSchedulingOpenJDK6bools390c2falsedefine_pd_global
src/cpu/s390/vm/c2_globals_s390.hpp
OptoSchedulingOpenJDK6boolsparcc2truedefine_pd_global
src/cpu/sparc/vm/c2_globals_sparc.hpp
OptoSchedulingOpenJDK6boolx86c2falsedefine_pd_global
src/cpu/x86/vm/c2_globals_x86.hpp
PLABWeightOpenJDK6uintxruntime75
range(0, 100)
product
Percentage (0-100) used to weight the current sample when 
computing exponentially decaying average for ResizePLAB
src/share/vm/runtime/globals.hpp
PSAdaptiveSizePolicyResizeVirtualSpaceAlotOpenJDK6intxruntime-1
range(-1, 1)
develop
Resize the virtual spaces of the young or old generations
src/share/vm/runtime/globals.hpp
PSChunkLargeArraysOpenJDK6boolruntimetrueproduct
Process large arrays in chunks
src/share/vm/runtime/globals.hpp
ParGCArrayScanChunkOpenJDK6intruntime50
range(1, max_jint/3)
product
Scan a subset of object array and push remainder, if array is 
bigger than this
src/share/vm/runtime/globals.hpp
ParGCCardsPerStrideChunkOpenJDK6intxruntime256
range(1, max_intx)
diagnostic
The number of cards in each chunk of the parallel chunks used 
during card table scanning
src/share/vm/runtime/globals.hpp
ParGCDesiredObjsFromOverflowListOpenJDK6Obsoleted in JDK14
Expired in JDK15
uintxruntime20
range(0, max_uintx)
product
The desired number of objects to claim from the overflow list
src/share/vm/runtime/globals.hpp
ParGCStridesPerThreadOpenJDK6uintxruntime2
range(1, max_uintx)
diagnostic
The number of strides per worker thread that we divide up the 
card table scanning work into
src/share/vm/runtime/globals.hpp
ParGCTrimOverflowOpenJDK6Obsoleted in JDK14
Expired in JDK15
boolruntimetrueproduct
Eagerly trim the local overflow lists 
(when ParGCUseLocalOverflow)
src/share/vm/runtime/globals.hpp
ParGCUseLocalOverflowOpenJDK6Obsoleted in JDK14
Expired in JDK15
boolruntimefalseproduct
Instead of a global overflow list, use local overflow stacks
src/share/vm/runtime/globals.hpp
ParGCWorkQueueOverflowALotOpenJDK6boolruntimefalsenotproduct
Simulate work queue overflow in ParNew
src/share/vm/runtime/globals.hpp
ParGCWorkQueueOverflowIntervalOpenJDK6uintxruntime1000notproduct
An `interval' counter that determines how frequently 
we simulate overflow; a smaller number increases frequency
src/share/vm/runtime/globals.hpp
ParallelGCBufferWastePctOpenJDK6uintxruntime10
range(0, 100)
product
Wasted fraction of parallel allocation buffer
src/share/vm/runtime/globals.hpp
ParallelGCThreadsOpenJDK6uintruntime0product
Number of parallel threads parallel gc will use
src/share/vm/runtime/globals.hpp
ParallelOldDeadWoodLimiterMeanOpenJDK6uintxruntime50
range(0, 100)
product
The mean used by the parallel compact dead wood 
limiter (a number between 0-100)
src/share/vm/runtime/globals.hpp
ParallelOldDeadWoodLimiterStdDevOpenJDK6uintxruntime80
range(0, 100)
product
The standard deviation used by the parallel compact dead wood 
limiter (a number between 0-100)
src/share/vm/runtime/globals.hpp
ParallelRefProcBalancingEnabledOpenJDK6boolruntimetrueproduct
Enable balancing of reference processing queues
src/share/vm/runtime/globals.hpp
ParallelRefProcEnabledOpenJDK6boolruntimefalseproduct
Enable parallel reference processing whenever possible
src/share/vm/runtime/globals.hpp
PartialPeelAtUnsignedTestsOpenJDK6boolc2trueproduct
Partial peel at unsigned tests if no signed test exists
src/share/vm/opto/c2_globals.hpp
PartialPeelLoopOpenJDK6boolc2trueproduct
Partial peel (rotate) loops
src/share/vm/opto/c2_globals.hpp
PartialPeelNewPhiDeltaOpenJDK6intxc20
range(0, max_jint)
product
Additional phis that can be created by partial peeling
src/share/vm/opto/c2_globals.hpp
PatchALotOpenJDK6boolc1falsedevelop
Marks all fields as having unloaded classes
src/share/vm/c1/c1_globals.hpp
PauseAtExitOpenJDK6boolruntimefalsediagnostic
Pause and wait for keypress on exit if a debugger is attached
src/share/vm/runtime/globals.hpp
PauseAtStartupFileOpenJDK6ccstrruntimeNULLdiagnostic
The file to create and for whose removal to await when pausing 
at startup. (default: ./vm.paused.)
src/share/vm/runtime/globals.hpp
PauseAtStartupOpenJDK6boolruntimefalsediagnostic
Causes the VM to pause at startup time and wait for the pause 
file to be removed (default: ./vm.paused.)
src/share/vm/runtime/globals.hpp
PausePaddingOpenJDK6uintxruntime1
range(0, max_juint)
product
How much buffer to keep for pause time
src/share/vm/runtime/globals.hpp
PerBytecodeRecompilationCutoffOpenJDK6intxruntime200
range(-1, max_intx)
product
Per-BCI limit on repeated recompilation (-1=>'Inf')
src/share/vm/runtime/globals.hpp
PerBytecodeTrapLimitOpenJDK6intxruntime4
range(0, max_jint)
product
Limit on traps (of one kind) at a particular BCI
src/share/vm/runtime/globals.hpp
PerMethodRecompilationCutoffOpenJDK6intxruntime400
range(-1, max_intx)
product
After recompiling N times, stay in the interpreter (-1=>'Inf')
src/share/vm/runtime/globals.hpp
PerMethodSpecTrapLimitOpenJDK8intxruntime5000
range(0, max_jint)
experimental
Limit on speculative traps (of one kind) in a method 
(includes inlines)
src/share/vm/runtime/globals.hpp
PerMethodTrapLimitOpenJDK6intxruntime100
range(0, max_jint)
product
Limit on traps (of one kind) in a method (includes inlines)
src/share/vm/runtime/globals.hpp
PerfAllowAtExitRegistrationOpenJDK6boolruntimefalseproduct
Allow registration of atexit() methods
src/share/vm/runtime/globals.hpp
PerfBypassFileSystemCheckOpenJDK6boolruntimefalseproduct
Bypass Win32 file system criteria checks (Windows Only)
src/share/vm/runtime/globals.hpp
PerfDataMemorySizeOpenJDK6intxruntime32*K
range(128, 32*64*K)
product
Size of performance data memory region. Will be rounded 
up to a multiple of the native os page size.
src/share/vm/runtime/globals.hpp
PerfDataSamplingIntervalOpenJDK6intxruntime50
range(PeriodicTask::min_interval, max_jint)
product
Data sampling interval (in milliseconds)
src/share/vm/runtime/globals.hpp
PerfDataSaveFileOpenJDK6ccstrruntimeNULLproduct
Save PerfData memory to the specified absolute pathname. 
The string %p in the file name (if present) 
will be replaced by pid
src/share/vm/runtime/globals.hpp
PerfDataSaveToFileOpenJDK6boolruntimefalseproduct
Save PerfData memory to hsperfdata_ file on exit
src/share/vm/runtime/globals.hpp
PerfDisableSharedMemOpenJDK6boolruntimefalseproduct
Store performance data in standard memory
src/share/vm/runtime/globals.hpp
PerfMaxStringConstLengthOpenJDK6intxruntime1024
range(32, 32*K)
product
Maximum PerfStringConstant string length before truncation
src/share/vm/runtime/globals.hpp
PerfTraceDataCreationOpenJDK6boolruntimefalsedevelop
Trace creation of Performance Data Entries
src/share/vm/runtime/globals.hpp
PerfTraceMemOpsOpenJDK6boolruntimefalsedevelop
Trace PerfMemory create/attach/detach calls
src/share/vm/runtime/globals.hpp
PinAllInstructionsOpenJDK6boolc1falsedevelop
All instructions are pinned
src/share/vm/c1/c1_globals.hpp
PoisonOSREntryOpenJDK6boolc2truedevelop
Detect abnormal calls to OSR code
src/share/vm/opto/c2_globals.hpp
PostLoopMultiversioningOpenJDK9boolc2falseexperimental
Multi versioned post loops to eliminate range checks
src/share/vm/opto/c2_globals.hpp
PowerArchitecturePPC64OpenJDK7uintxppc0product
CPU Version: x for PowerX. Currently recognizes Power5 to 
Power8. Default is 0. Newer CPUs will be recognized as Power8.
src/cpu/ppc/vm/globals_ppc.hpp
PreTouchParallelChunkSizeOpenJDK9size_truntime1 * G
range(1, SIZE_MAX / 2)
product
Per-thread chunk size for parallel memory pre-touch.
src/share/vm/runtime/globals.hpp
PreallocatedOutOfMemoryErrorCountOpenJDK6uintxruntime4develop
Number of OutOfMemoryErrors preallocated with backtrace
src/share/vm/runtime/globals.hpp
PredictedLoadedClassCountOpenJDK6intxruntime0experimental
Experimental: Tune loaded class cache starting size
src/share/vm/runtime/globals.hpp
PreferInterpreterNativeStubsOpenJDK6boolaarch64c1falsedefine_pd_global
src/cpu/aarch64/vm/c1_globals_aarch64.hpp
PreferInterpreterNativeStubsOpenJDK6boolaarch64c2falsedefine_pd_global
src/cpu/aarch64/vm/c2_globals_aarch64.hpp
PreferInterpreterNativeStubsOpenJDK6boolarmc1falsedefine_pd_global
src/cpu/arm/vm/c1_globals_arm.hpp
PreferInterpreterNativeStubsOpenJDK6boolarmc2falsedefine_pd_global
src/cpu/arm/vm/c2_globals_arm.hpp
PreferInterpreterNativeStubsOpenJDK6boolruntimeproduct_pd
Use always interpreter stubs for native methods invoked via 
interpreter
src/share/vm/runtime/globals.hpp
PreferInterpreterNativeStubsOpenJDK6boolppcc1falsedefine_pd_global
src/cpu/ppc/vm/c1_globals_ppc.hpp
PreferInterpreterNativeStubsOpenJDK6boolppcc2falsedefine_pd_global
src/cpu/ppc/vm/c2_globals_ppc.hpp
PreferInterpreterNativeStubsOpenJDK6bools390c1falsedefine_pd_global
src/cpu/s390/vm/c1_globals_s390.hpp
PreferInterpreterNativeStubsOpenJDK6bools390c2falsedefine_pd_global
src/cpu/s390/vm/c2_globals_s390.hpp
PreferInterpreterNativeStubsOpenJDK6boolsparcc1falsedefine_pd_global
src/cpu/sparc/vm/c1_globals_sparc.hpp
PreferInterpreterNativeStubsOpenJDK6boolsparcc2falsedefine_pd_global
src/cpu/sparc/vm/c2_globals_sparc.hpp
PreferInterpreterNativeStubsOpenJDK6boolx86c1falsedefine_pd_global
src/cpu/x86/vm/c1_globals_x86.hpp
PreferInterpreterNativeStubsOpenJDK6boolx86c2falsedefine_pd_global
src/cpu/x86/vm/c2_globals_x86.hpp
PreferInterpreterNativeStubsOpenJDK6boolzerosharkfalsedefine_pd_global
src/cpu/zero/vm/shark_globals_zero.hpp
PreferLAoverADDOpenJDK9bools390falseproduct
Use LA/LAY instructions over ADD instructions (z/Architecture).
src/cpu/s390/vm/globals_s390.hpp
PrefetchCopyIntervalInBytesOpenJDK6intxruntime-1
range(-1, max_jint)
product
How far ahead to prefetch destination area (<= 0 means off)
src/share/vm/runtime/globals.hpp
PrefetchFieldsAheadOpenJDK6Obsoleted in JDK19
Expired in JDK20
intxruntime-1
range(-1, max_jint)
product
How many fields ahead to prefetch in oop scan (<= 0 means off)
src/share/vm/runtime/globals.hpp
PrefetchScanIntervalInBytesOpenJDK6intxruntime-1
range(-1, max_jint)
product
How far ahead to prefetch scan area (<= 0 means off)
src/share/vm/runtime/globals.hpp
PreserveAllAnnotationsOpenJDK6boolruntimefalseproduct
Preserve RuntimeInvisibleAnnotations as well 
as RuntimeVisibleAnnotations
src/share/vm/runtime/globals.hpp
PreserveFramePointerOpenJDK8boolaarch64falsedefine_pd_global
src/cpu/aarch64/vm/globals_aarch64.hpp
PreserveFramePointerOpenJDK8boolarmfalsedefine_pd_global
src/cpu/arm/vm/globals_arm.hpp
PreserveFramePointerOpenJDK8boolruntimeproduct_pd
Use the FP register for holding the frame pointer 
and not as a general purpose register.
src/share/vm/runtime/globals.hpp
PreserveFramePointerOpenJDK8boolppcfalsedefine_pd_global
src/cpu/ppc/vm/globals_ppc.hpp
PreserveFramePointerOpenJDK8bools390falsedefine_pd_global
src/cpu/s390/vm/globals_s390.hpp
PreserveFramePointerOpenJDK8boolsparcfalsedefine_pd_global
src/cpu/sparc/vm/globals_sparc.hpp
PreserveFramePointerOpenJDK8boolx86falsedefine_pd_global
src/cpu/x86/vm/globals_x86.hpp
PreserveFramePointerOpenJDK8boolzerofalsedefine_pd_global
src/cpu/zero/vm/globals_zero.hpp
PretenureSizeThresholdOpenJDK6size_truntime0
range(0, max_uintx)
product
Maximum size in bytes of objects allocated in DefNew 
generation; zero means no maximum
src/share/vm/runtime/globals.hpp
PrintAOTStatisticsOpenJDK9boolruntimefalsenotproduct
Print AOT statistics
src/share/vm/runtime/globals.hpp
PrintAOTOpenJDK9boolruntimefalseproduct
Print used AOT klasses and methods
src/share/vm/runtime/globals.hpp
PrintAdapterHandlersOpenJDK6boolruntimefalsediagnostic
Print code generated for i2c/c2i adapters
src/share/vm/runtime/globals.hpp
PrintAssemblyOptionsOpenJDK6ccstrruntimeNULLdiagnostic
Print options string passed to disassembler.so
src/share/vm/runtime/globals.hpp
PrintAssemblyOpenJDK6boolruntimefalsediagnostic
Print assembly code (using external disassembler.so)
src/share/vm/runtime/globals.hpp
PrintBailoutsOpenJDK6boolc1falsedevelop
Print bailout and its reason
src/share/vm/c1/c1_globals.hpp
PrintBiasedLockingStatisticsOpenJDK6Deprecated in JDK15
Obsoleted in JDK18
Expired in JDK19
boolruntimefalsediagnostic
Print statistics of biased locking in JVM
src/share/vm/runtime/globals.hpp
PrintBlockEliminationOpenJDK6boolc1falsedevelop
Print basic block elimination
src/share/vm/c1/c1_globals.hpp
PrintBootstrapOpenJDK9booljvmcitrueexperimental
Print JVMCI bootstrap progress and summary
src/share/vm/jvmci/jvmci_globals.hpp
PrintBytecodeHistogramOpenJDK6boolruntimefalsedevelop
Print histogram of the executed bytecodes
src/share/vm/runtime/globals.hpp
PrintBytecodePairHistogramOpenJDK6boolruntimefalsedevelop
Print histogram of the executed bytecode pairs
src/share/vm/runtime/globals.hpp
PrintC1StatisticsOpenJDK6boolc1falsenotproduct
Print Compiler1 statistics
src/share/vm/c1/c1_globals.hpp
PrintCEEOpenJDK6boolc1falsedevelop
Print Conditional Expression Elimination
src/share/vm/c1/c1_globals.hpp
PrintCFG0OpenJDK6boolc1falsenotproduct
Print control flow graph after construction
src/share/vm/c1/c1_globals.hpp
PrintCFG1OpenJDK6boolc1falsenotproduct
Print control flow graph after optimizations
src/share/vm/c1/c1_globals.hpp
PrintCFG2OpenJDK6boolc1falsenotproduct
Print control flow graph before code generation
src/share/vm/c1/c1_globals.hpp
PrintCFGBlockFreqOpenJDK6boolc2falsedevelop
Print CFG block freqencies
src/share/vm/opto/c2_globals.hpp
PrintCFGToFileOpenJDK6boolc1falsedevelop
print control flow graph to a separate file during compilation
src/share/vm/c1/c1_globals.hpp
PrintCFGOpenJDK6boolc1falsenotproduct
Print control flow graph after each change
src/share/vm/c1/c1_globals.hpp
PrintCanonicalizationOpenJDK6boolc1falsedevelop
Print graph node canonicalization
src/share/vm/c1/c1_globals.hpp
PrintClassHistogramOpenJDK6boolruntimefalsemanageable
Print a histogram of class instances
src/share/vm/runtime/globals.hpp
PrintCodeCache2OpenJDK6boolruntimefalsedevelop
Print detailed usage information on the code cache when exiting
src/share/vm/runtime/globals.hpp
PrintCodeCacheExtensionOpenJDK6boolruntimefalsedevelop
Print extension of code cache
src/share/vm/runtime/globals.hpp
PrintCodeCacheOnCompilationOpenJDK8boolruntimefalseproduct
Print the code cache memory usage each time a method is 
compiled
src/share/vm/runtime/globals.hpp
PrintCodeCacheOpenJDK6boolruntimefalseproduct
Print the code cache memory usage when exiting
src/share/vm/runtime/globals.hpp
PrintCommandLineFlagsOpenJDK6boolruntimefalseproduct
Print flags specified on command line or set by ergonomics
src/share/vm/runtime/globals.hpp
PrintCompilation2OpenJDK6boolruntimefalsediagnostic
Print additional statistics per compilation
src/share/vm/runtime/globals.hpp
PrintCompilationOpenJDK6boolruntimefalseproduct
Print compilations
src/share/vm/runtime/globals.hpp
PrintConcurrentLocksOpenJDK6boolruntimefalsemanageable
Print java.util.concurrent locks in thread dump
src/share/vm/runtime/globals.hpp
PrintDebugInfoOpenJDK6boolruntimefalsedevelop
Print debug information for all nmethods when generated
src/share/vm/runtime/globals.hpp
PrintDeoptimizationDetailsOpenJDK9boolruntimefalsedevelop
Print more information about deoptimization
src/share/vm/runtime/globals.hpp
PrintDependenciesOpenJDK6boolruntimefalsedevelop
Print dependency information for all nmethods when generated
src/share/vm/runtime/globals.hpp
PrintDominatorsOpenJDK6boolc2falsedevelop
Print out dominator trees for GVN
src/share/vm/opto/c2_globals.hpp
PrintEliminateAllocationsOpenJDK6boolc2falsenotproduct
Print out when allocations are eliminated
src/share/vm/opto/c2_globals.hpp
PrintEliminateLocksOpenJDK6boolc2falsenotproduct
Print out when locks are eliminated
src/share/vm/opto/c2_globals.hpp
PrintEscapeAnalysisOpenJDK6boolc2falsenotproduct
Print the results of escape analysis
src/share/vm/opto/c2_globals.hpp
PrintExceptionHandlersOpenJDK6boolruntimefalsedevelop
Print exception handler tables for all nmethods when generated
src/share/vm/runtime/globals.hpp
PrintFieldLayoutOpenJDK8boolruntimefalsenotproduct
Print field layout for each class
src/share/vm/runtime/globals.hpp
PrintFlagsFinalOpenJDK6boolruntimefalseproduct
Print all VM flags after argument and ergonomic processing
src/share/vm/runtime/globals.hpp
PrintFlagsInitialOpenJDK6boolruntimefalseproduct
Print all VM flags before argument processing and exit VM
src/share/vm/runtime/globals.hpp
PrintFlagsRangesOpenJDK9boolruntimefalseproduct
Print VM flags and their ranges and exit VM
src/share/vm/runtime/globals.hpp
PrintFlagsWithCommentsOpenJDK6boolruntimefalsenotproduct
Print all VM flags with default values and descriptions and 
exit
src/share/vm/runtime/globals.hpp
PrintFrameConverterAssemblyOpenJDK6boolc2falsenotproduct
Print New compiler assembly output for frame converters
src/share/vm/opto/c2_globals.hpp
PrintGCDetailsOpenJDK6boolruntimefalseproduct
Print more details at garbage collection. 
Deprecated, use -Xlog:gc* instead.
src/share/vm/runtime/globals.hpp
PrintGCOpenJDK6boolruntimefalseproduct
Print message at garbage collection. 
Deprecated, use -Xlog:gc instead.
src/share/vm/runtime/globals.hpp
PrintHeapAtSIGBREAKOpenJDK6boolruntimetrueproduct
Print heap layout in response to SIGBREAK
src/share/vm/runtime/globals.hpp
PrintIR0OpenJDK6boolc1falsenotproduct
Print full intermediate representation after construction
src/share/vm/c1/c1_globals.hpp
PrintIR1OpenJDK6boolc1falsenotproduct
Print full intermediate representation after optimizations
src/share/vm/c1/c1_globals.hpp
PrintIR2OpenJDK6boolc1falsenotproduct
Print full intermediate representation before code generation
src/share/vm/c1/c1_globals.hpp
PrintIRDuringConstructionOpenJDK6boolc1falsenotproduct
Print IR as it's being constructed (helpful for debugging frontend)
src/share/vm/c1/c1_globals.hpp
PrintIRWithLIROpenJDK6boolc1falsenotproduct
Print IR instructions with generated LIR
src/share/vm/c1/c1_globals.hpp
PrintIROpenJDK6boolc1falsenotproduct
Print full intermediate representation after each change
src/share/vm/c1/c1_globals.hpp
PrintIdealGraphAddressOpenJDK6ccstrc2127.0.0.1notproduct
IP address to connect to visualizer
src/share/vm/opto/c2_globals.hpp
PrintIdealGraphFileOpenJDK6ccstrc2NULLnotproduct
File to dump ideal graph to. If set overrides the 
use of the network
src/share/vm/opto/c2_globals.hpp
PrintIdealGraphLevelOpenJDK6intxc20
range(0, 4)
notproduct
Level of detail of the ideal graph printout. 
System-wide value, 0=nothing is printed, 4=all details printed. 
Level of detail of printouts can be set on a per-method level 
as well by using CompileCommand=option.
src/share/vm/opto/c2_globals.hpp
PrintIdealGraphPortOpenJDK6intxc24444
range(0, SHRT_MAX)
notproduct
Ideal graph printer to network port
src/share/vm/opto/c2_globals.hpp
PrintIdealGraphOpenJDK9boolc2falsenotproduct
Print ideal graph to XML file / network interface. 
By default attempts to connect to the visualizer on a socket.
src/share/vm/opto/c2_globals.hpp
PrintIdealNodeCountOpenJDK7boolc2falsenotproduct
Print liveness counts of ideal nodes
src/share/vm/opto/c2_globals.hpp
PrintIdealOpenJDK6boolc2falsenotproduct
Print ideal graph before code generation
src/share/vm/opto/c2_globals.hpp
PrintInitialBlockListOpenJDK6boolc1falsenotproduct
Print block list of BlockListBuilder
src/share/vm/c1/c1_globals.hpp
PrintInliningOpenJDK6boolruntimefalsediagnostic
Print inlining optimizations
src/share/vm/runtime/globals.hpp
PrintInterpreterOpenJDK6boolruntimefalsediagnostic
Print the generated interpreter code
src/share/vm/runtime/globals.hpp
PrintIntrinsicsOpenJDK6boolc2falsediagnostic
prints attempted and successful inlining of intrinsics
src/share/vm/opto/c2_globals.hpp
PrintJNIResolvingOpenJDK6Obsoleted in JDK16
Expired in JDK17
boolruntimefalseproduct
Used to implement -v:jni
src/share/vm/runtime/globals.hpp
PrintLIRWithAssemblyOpenJDK6boolc1falsenotproduct
Show LIR instruction with generated assembly
src/share/vm/c1/c1_globals.hpp
PrintLIROpenJDK6boolc1falsedevelop
print low-level IR
src/share/vm/c1/c1_globals.hpp
PrintLockStatisticsOpenJDK6boolc2falsenotproduct
Print precise statistics on the dynamic lock usage
src/share/vm/opto/c2_globals.hpp
PrintMallocFreeOpenJDK6Obsoleted in JDK11
Expired in JDK12
boolruntimefalsenotproduct
Trace calls to C heap malloc/free allocation
src/share/vm/runtime/globals.hpp
PrintMallocStatisticsOpenJDK6boolruntimefalsedevelop
Print malloc/free statistics
src/share/vm/runtime/globals.hpp
PrintMallocOpenJDK6Obsoleted in JDK11
Expired in JDK12
boolruntimefalsedevelop
Print all malloc/free calls
src/share/vm/runtime/globals.hpp
PrintMethodDataOpenJDK6boolruntimefalsediagnostic
Print the results of +ProfileInterpreter at end of run
src/share/vm/runtime/globals.hpp
PrintMethodFlushingStatisticsOpenJDK8boolruntimefalsediagnostic
print statistics about method flushing
src/share/vm/runtime/globals.hpp
PrintMethodFlushingOpenJDK6boolruntimefalsedevelop
Print the nmethods being flushed
src/share/vm/runtime/globals.hpp
PrintMethodHandleStubsOpenJDK6boolruntimefalsediagnostic
Print generated stub code for method handles
src/share/vm/runtime/globals.hpp
PrintMiscellaneousOpenJDK6boolruntimefalsedevelop
Print uncategorized debugging information (requires +Verbose)
src/share/vm/runtime/globals.hpp
PrintNMTStatisticsOpenJDK7boolruntimefalsediagnostic
Print native memory tracking summary data if it is on
src/share/vm/runtime/globals.hpp
PrintNMethodStatisticsOpenJDK9boolruntimefalsenotproduct
Print a summary statistic for the generated nmethods
src/share/vm/runtime/globals.hpp
PrintNMethodsOpenJDK6boolruntimefalsediagnostic
Print assembly code for nmethods when generated
src/share/vm/runtime/globals.hpp
PrintNativeNMethodsOpenJDK6boolruntimefalsediagnostic
Print assembly code for native nmethods when generated
src/share/vm/runtime/globals.hpp
PrintNotLoadedOpenJDK6boolc1falsedevelop
Prints where classes are not loaded during code generation
src/share/vm/c1/c1_globals.hpp
PrintNullCheckEliminationOpenJDK6boolc1falsedevelop
Print null check elimination
src/share/vm/c1/c1_globals.hpp
PrintOptimizePtrCompareOpenJDK6boolc2falsenotproduct
Print information about optimized pointers compare
src/share/vm/opto/c2_globals.hpp
PrintOptimizeStringConcatOpenJDK6boolc2falsenotproduct
Print information about transformations performed on Strings
src/share/vm/opto/c2_globals.hpp
PrintOptoAssemblyOpenJDK6boolc2falsediagnostic
Print New compiler assembly output
src/share/vm/opto/c2_globals.hpp
PrintOptoInliningOpenJDK6boolc2falsenotproduct
Print compiler2 inlining decisions
src/share/vm/opto/c2_globals.hpp
PrintOptoPeepholeOpenJDK6boolc2falsenotproduct
Print New compiler peephole replacements
src/share/vm/opto/c2_globals.hpp
PrintOptoStatisticsOpenJDK6boolc2falsenotproduct
Print New compiler statistics
src/share/vm/opto/c2_globals.hpp
PrintOptoOpenJDK6boolc2falsenotproduct
Print compiler2 attempts
src/share/vm/opto/c2_globals.hpp
PrintParseStatisticsOpenJDK6boolc2falsenotproduct
Print nodes, transforms and new values made per bytecode parsed
src/share/vm/opto/c2_globals.hpp
PrintPhiFunctionsOpenJDK6boolc1falsenotproduct
Print phi functions when they are created and simplified
src/share/vm/c1/c1_globals.hpp
PrintPreciseBiasedLockingStatisticsOpenJDK6Deprecated in JDK15
Obsoleted in JDK18
Expired in JDK19
boolc2falsediagnostic
Print per-lock-site statistics of biased locking in JVM
src/share/vm/opto/c2_globals.hpp
PrintPreciseRTMLockingStatisticsOpenJDK8boolc2falsediagnostic
Print per-lock-site statistics of rtm locking in JVM
src/share/vm/opto/c2_globals.hpp
PrintRelocationsOpenJDK6boolruntimefalsedevelop
Print relocation information for all nmethods when generated
src/share/vm/runtime/globals.hpp
PrintRewritesOpenJDK6boolruntimefalsenotproduct
Print methods that are being rewritten
src/share/vm/runtime/globals.hpp
PrintSafepointStatisticsCountOpenJDK6Deprecated in JDK11
Obsoleted in JDK12
Expired in JDK13
intxruntime300
range(1, max_intx)
product
Total number of safepoint statistics collected 
before printing them out
src/share/vm/runtime/globals.hpp
PrintSafepointStatisticsTimeoutOpenJDK6Deprecated in JDK11
Obsoleted in JDK12
Expired in JDK13
intxruntime-1product
Print safepoint statistics only when safepoint takes 
more than PrintSafepointSatisticsTimeout in millis
src/share/vm/runtime/globals.hpp
PrintSafepointStatisticsOpenJDK6Deprecated in JDK11
Obsoleted in JDK12
Expired in JDK13
boolruntimefalseproduct
Print statistics about safepoint synchronization
src/share/vm/runtime/globals.hpp
PrintSharedArchiveAndExitOpenJDK8boolruntimefalseproduct
Print shared archive file contents
src/share/vm/runtime/globals.hpp
PrintSharedDictionaryOpenJDK8Obsoleted in JDK20
Expired in JDK21
boolruntimefalseproduct
If PrintSharedArchiveAndExit is true, also print the shared 
dictionary
src/share/vm/runtime/globals.hpp
PrintSharedSpacesOpenJDK6Obsoleted in JDK16
Expired in JDK17
boolruntimefalseproduct
Print usage of shared spaces
src/share/vm/runtime/globals.hpp
PrintSignatureHandlersOpenJDK6boolruntimefalsediagnostic
Print code generated for native method signature handlers
src/share/vm/runtime/globals.hpp
PrintSimpleStubsOpenJDK6boolc1falsenotproduct
Print SimpleStubs
src/share/vm/c1/c1_globals.hpp
PrintStringTableStatisticsOpenJDK6boolruntimefalseproduct
print statistics about the StringTable and SymbolTable
src/share/vm/runtime/globals.hpp
PrintStubCodeOpenJDK6boolruntimefalsediagnostic
Print generated stub code
src/share/vm/runtime/globals.hpp
PrintSymbolTableSizeHistogramOpenJDK6boolruntimefalsenotproduct
print histogram of the symbol table
src/share/vm/runtime/globals.hpp
PrintSystemDictionaryAtExitOpenJDK6boolruntimefalsenotproduct
Print the system dictionary at exit
src/share/vm/runtime/globals.hpp
PrintTieredEventsOpenJDK6boolruntimefalseproduct
Print tiered events notifications
src/share/vm/runtime/globals.hpp
PrintTouchedMethodsAtExitOpenJDK9boolruntimefalsediagnostic
Print all methods that have been ever touched in runtime
src/share/vm/runtime/globals.hpp
PrintUnsafeOptimizationOpenJDK6boolc1falsedevelop
Print optimization of raw unsafe ops
src/share/vm/c1/c1_globals.hpp
PrintVMMessagesOpenJDK6boolruntimetruedevelop
Print VM messages on console
src/share/vm/runtime/globals.hpp
PrintVMOptionsOpenJDK6boolruntimefalseproduct
Print flags that appeared on the command line
src/share/vm/runtime/globals.hpp
PrintVMQWaitTimeOpenJDK6Deprecated in JDK15
Obsoleted in JDK16
Expired in JDK17
boolruntimefalseproduct
Print out the waiting time in VM operation queue
src/share/vm/runtime/globals.hpp
PrintValueNumberingOpenJDK6boolc1falsedevelop
Print Value Numbering
src/share/vm/c1/c1_globals.hpp
PrintVtableStatsOpenJDK6boolruntimefalsenotproduct
print vtables stats at end of run
src/share/vm/runtime/globals.hpp
PrintWarningsOpenJDK6boolruntimetrueproduct
Print JVM warnings to output stream
src/share/vm/runtime/globals.hpp
ProcessDistributionStrideOpenJDK6Obsoleted in JDK23
Expired in JDK24
uintxruntime4
range(0, max_juint)
product
Stride through processors when distributing processes
src/share/vm/runtime/globals.hpp
ProfileDynamicTypesOpenJDK6boolc2truediagnostic
do extra type profiling and use it more aggressively
src/share/vm/opto/c2_globals.hpp
ProfileInterpreterOpenJDK6boolaarch64c1falsedefine_pd_global
src/cpu/aarch64/vm/c1_globals_aarch64.hpp
ProfileInterpreterOpenJDK6boolaarch64c2truedefine_pd_global
src/cpu/aarch64/vm/c2_globals_aarch64.hpp
ProfileInterpreterOpenJDK6boolarmc1falsedefine_pd_global
src/cpu/arm/vm/c1_globals_arm.hpp
ProfileInterpreterOpenJDK6boolarmc2truedefine_pd_global
src/cpu/arm/vm/c2_globals_arm.hpp
ProfileInterpreterOpenJDK6boolruntimeproduct_pd
Profile at the bytecode level during interpretation
src/share/vm/runtime/globals.hpp
ProfileInterpreterOpenJDK6boolppcc1falsedefine_pd_global
src/cpu/ppc/vm/c1_globals_ppc.hpp
ProfileInterpreterOpenJDK6boolppcc2truedefine_pd_global
src/cpu/ppc/vm/c2_globals_ppc.hpp
ProfileInterpreterOpenJDK6bools390c1falsedefine_pd_global
src/cpu/s390/vm/c1_globals_s390.hpp
ProfileInterpreterOpenJDK6bools390c2truedefine_pd_global
src/cpu/s390/vm/c2_globals_s390.hpp
ProfileInterpreterOpenJDK6boolsparcc1falsedefine_pd_global
src/cpu/sparc/vm/c1_globals_sparc.hpp
ProfileInterpreterOpenJDK6boolsparcc2truedefine_pd_global
src/cpu/sparc/vm/c2_globals_sparc.hpp
ProfileInterpreterOpenJDK6boolx86c1falsedefine_pd_global
src/cpu/x86/vm/c1_globals_x86.hpp
ProfileInterpreterOpenJDK6boolx86c2truedefine_pd_global
src/cpu/x86/vm/c2_globals_x86.hpp
ProfileInterpreterOpenJDK6boolzerosharkfalsedefine_pd_global
src/cpu/zero/vm/shark_globals_zero.hpp
ProfileIntervalsTicksOpenJDK6Obsoleted in JDK13
Expired in JDK14
intxruntime100
range(0, max_intx)
product
Number of ticks between printing of interval profile 
(+ProfileIntervals)
src/share/vm/runtime/globals.hpp
ProfileIntervalsOpenJDK6Obsoleted in JDK13
Expired in JDK14
boolruntimefalseproduct
Print profiles for each interval (see ProfileIntervalsTicks)
src/share/vm/runtime/globals.hpp
ProfileMaturityPercentageOpenJDK6intxruntime20
range(0, 100)
product
number of method invocations/branches (expressed as % of 
CompileThreshold) before using the method's profile
src/share/vm/runtime/globals.hpp
ProfileTrapsOpenJDK6boolaarch64c1falsedefine_pd_global
src/cpu/aarch64/vm/c1_globals_aarch64.hpp
ProfileTrapsOpenJDK6boolaarch64c2truedefine_pd_global
src/cpu/aarch64/vm/c2_globals_aarch64.hpp
ProfileTrapsOpenJDK6boolarmc1falsedefine_pd_global
src/cpu/arm/vm/c1_globals_arm.hpp
ProfileTrapsOpenJDK6boolarmc2truedefine_pd_global
src/cpu/arm/vm/c2_globals_arm.hpp
ProfileTrapsOpenJDK6boolruntimedevelop_pd
Profile deoptimization traps at the bytecode level
src/share/vm/runtime/globals.hpp
ProfileTrapsOpenJDK6boolppcc1falsedefine_pd_global
src/cpu/ppc/vm/c1_globals_ppc.hpp
ProfileTrapsOpenJDK6boolppcc2truedefine_pd_global
src/cpu/ppc/vm/c2_globals_ppc.hpp
ProfileTrapsOpenJDK6bools390c1falsedefine_pd_global
src/cpu/s390/vm/c1_globals_s390.hpp
ProfileTrapsOpenJDK6bools390c2truedefine_pd_global
src/cpu/s390/vm/c2_globals_s390.hpp
ProfileTrapsOpenJDK6boolsparcc1falsedefine_pd_global
src/cpu/sparc/vm/c1_globals_sparc.hpp
ProfileTrapsOpenJDK6boolsparcc2truedefine_pd_global
src/cpu/sparc/vm/c2_globals_sparc.hpp
ProfileTrapsOpenJDK6boolx86c1falsedefine_pd_global
src/cpu/x86/vm/c1_globals_x86.hpp
ProfileTrapsOpenJDK6boolx86c2truedefine_pd_global
src/cpu/x86/vm/c2_globals_x86.hpp
ProfileTrapsOpenJDK6boolzerosharkfalsedefine_pd_global
src/cpu/zero/vm/shark_globals_zero.hpp
ProfileVMOpenJDK6Obsoleted in JDK13
Expired in JDK14
boolruntimefalseproduct
Profile ticks that fall within VM (either in the VM Thread 
or VM code called through stubs)
src/share/vm/runtime/globals.hpp
ProfiledCodeHeapSizeOpenJDK9intxaarch64c114*Mdefine_pd_global
src/cpu/aarch64/vm/c1_globals_aarch64.hpp
ProfiledCodeHeapSizeOpenJDK9intxaarch64c222*Mdefine_pd_global
src/cpu/aarch64/vm/c2_globals_aarch64.hpp
ProfiledCodeHeapSizeOpenJDK9size_tarmc114*Mdefine_pd_global
src/cpu/arm/vm/c1_globals_arm.hpp
ProfiledCodeHeapSizeOpenJDK9uintxruntimeproduct_pd
Size of code heap with profiled methods (in bytes)
src/share/vm/runtime/globals.hpp
ProfiledCodeHeapSizeOpenJDK9intxppcc2126*Mdefine_pd_global
src/cpu/ppc/vm/c2_globals_ppc.hpp
ProfiledCodeHeapSizeOpenJDK9uintxs390c114*Mdefine_pd_global
src/cpu/s390/vm/c1_globals_s390.hpp
ProfiledCodeHeapSizeOpenJDK9uintxs390c222*Mdefine_pd_global
src/cpu/s390/vm/c2_globals_s390.hpp
ProfiledCodeHeapSizeOpenJDK9intxsparcc114*Mdefine_pd_global
src/cpu/sparc/vm/c1_globals_sparc.hpp
ProfiledCodeHeapSizeOpenJDK9intxsparcc214*Mdefine_pd_global
src/cpu/sparc/vm/c2_globals_sparc.hpp
ProfiledCodeHeapSizeOpenJDK9intxx86c114*Mdefine_pd_global
src/cpu/x86/vm/c1_globals_x86.hpp
ProfiledCodeHeapSizeOpenJDK9intxx86c222*Mdefine_pd_global
src/cpu/x86/vm/c2_globals_x86.hpp
ProfiledCodeHeapSizeOpenJDK9intxzeroshark14*Mdefine_pd_global
src/cpu/zero/vm/shark_globals_zero.hpp
ProfilerCheckIntervalsOpenJDK6Obsoleted in JDK13
Expired in JDK14
boolruntimefalsenotproduct
Collect and print information on spacing of profiler ticks
src/share/vm/runtime/globals.hpp
ProfilerNodeSizeOpenJDK6intxruntime1024
range(0, 1024)
develop
Size in K to allocate for the Profile Nodes of each thread
src/share/vm/runtime/globals.hpp
ProfilerNumberOfCompiledMethodsOpenJDK6Obsoleted in JDK13
Expired in JDK14
intxruntime25diagnostic
Number of compiled methods to show in profile
src/share/vm/runtime/globals.hpp
ProfilerNumberOfInterpretedMethodsOpenJDK6Obsoleted in JDK13
Expired in JDK14
intxruntime25diagnostic
Number of interpreted methods to show in profile
src/share/vm/runtime/globals.hpp
ProfilerNumberOfRuntimeStubNodesOpenJDK6Obsoleted in JDK13
Expired in JDK14
intxruntime25diagnostic
Number of runtime stub nodes to show in profile
src/share/vm/runtime/globals.hpp
ProfilerNumberOfStubMethodsOpenJDK6Obsoleted in JDK13
Expired in JDK14
intxruntime25diagnostic
Number of stub methods to show in profile
src/share/vm/runtime/globals.hpp
ProfilerPCTickThresholdOpenJDK6intxruntime15develop
Number of ticks in a PC buckets to be a hotspot
src/share/vm/runtime/globals.hpp
ProfilerPrintByteCodeStatisticsOpenJDK6Obsoleted in JDK13
Expired in JDK14
boolruntimefalseproduct
Print bytecode statistics when dumping profiler output
src/share/vm/runtime/globals.hpp
ProfilerRecordPCOpenJDK6Obsoleted in JDK13
Expired in JDK14
boolruntimefalseproduct
Collect ticks for each 16 byte interval of compiled code
src/share/vm/runtime/globals.hpp
PromotedPaddingOpenJDK6uintxruntime3
range(0, max_juint)
product
How much buffer to keep for promotion failure
src/share/vm/runtime/globals.hpp
PromotionFailureALotCountOpenJDK6uintxruntime1000develop
Number of promotion failures occurring at PLAB 
refill attempts (ParNew) or promotion attempts 
(other young collectors)
src/share/vm/runtime/globals.hpp
PromotionFailureALotIntervalOpenJDK6uintxruntime5develop
Total collections between promotion failures a lot
src/share/vm/runtime/globals.hpp
PromotionFailureALotOpenJDK6boolruntimefalsenotproduct
Use promotion failure handling on every youngest generation 
collection
src/share/vm/runtime/globals.hpp
ProtectionDomainVerificationOpenJDK6boolruntimetruedevelop
Verify protection domain before resolution in system dictionary
src/share/vm/runtime/globals.hpp
QueuedAllocationWarningCountOpenJDK6uintxruntime0
range(0, max_uintx)
product
Number of times an allocation that queues behind a GC 
will retry before printing a warning
src/share/vm/runtime/globals.hpp
RTMAbortRatioOpenJDK8intxppc50experimental
Lock abort ratio at which to stop use RTM lock eliding
src/cpu/ppc/vm/globals_ppc.hpp
RTMAbortRatioOpenJDK8intxx8650experimental
Lock abort ratio at which to stop use RTM lock eliding
src/cpu/x86/vm/globals_x86.hpp
RTMAbortThresholdOpenJDK8intxppc1000experimental
Calculate abort ratio after this number of aborts
src/cpu/ppc/vm/globals_ppc.hpp
RTMAbortThresholdOpenJDK8intxx861000experimental
Calculate abort ratio after this number of aborts
src/cpu/x86/vm/globals_x86.hpp
RTMLockingCalculationDelayOpenJDK8intxppc0experimental
Number of milliseconds to wait before start calculating aborts 
for RTM locking
src/cpu/ppc/vm/globals_ppc.hpp
RTMLockingCalculationDelayOpenJDK8intxx860experimental
Number of milliseconds to wait before start calculating aborts 
for RTM locking
src/cpu/x86/vm/globals_x86.hpp
RTMLockingThresholdOpenJDK8intxppc10000experimental
Lock count at which to do RTM lock eliding without 
abort ratio calculation
src/cpu/ppc/vm/globals_ppc.hpp
RTMLockingThresholdOpenJDK8intxx8610000experimental
Lock count at which to do RTM lock eliding without 
abort ratio calculation
src/cpu/x86/vm/globals_x86.hpp
RTMRetryCountOpenJDK8uintxppc5product
Number of RTM retries on lock abort or busy
src/cpu/ppc/vm/globals_ppc.hpp
RTMRetryCountOpenJDK8uintxx865
range(0, max_uintx)
product
Number of RTM retries on lock abort or busy
src/cpu/x86/vm/globals_x86.hpp
RTMSpinLoopCountOpenJDK8intxppc100experimental
Spin count for lock to become free before RTM retry
src/cpu/ppc/vm/globals_ppc.hpp
RTMSpinLoopCountOpenJDK8intxx86100experimental
Spin count for lock to become free before RTM retry
src/cpu/x86/vm/globals_x86.hpp
RTMTotalCountIncrRateOpenJDK8intxppc64experimental
Increment total RTM attempted lock count once every n times
src/cpu/ppc/vm/globals_ppc.hpp
RTMTotalCountIncrRateOpenJDK8intxx8664experimental
Increment total RTM attempted lock count once every n times
src/cpu/x86/vm/globals_x86.hpp
RangeCheckEliminationOpenJDK6boolruntimetrueproduct
Eliminate range checks
src/share/vm/runtime/globals.hpp
ReassociateInvariantsOpenJDK6boolc2trueproduct
Enable reassociation of expressions with loop invariants.
src/share/vm/opto/c2_globals.hpp
ReduceBulkZeroingOpenJDK6boolc2trueproduct
When bulk-initializing, try to avoid needless zeroing
src/share/vm/opto/c2_globals.hpp
ReduceFieldZeroingOpenJDK6boolc2trueproduct
When initializing fields, try to avoid needless zeroing
src/share/vm/opto/c2_globals.hpp
ReduceInitialCardMarksOpenJDK6boolc2trueproduct
When initializing fields, try to avoid needless card marks
src/share/vm/opto/c2_globals.hpp
ReduceSignalUsageOpenJDK6boolruntimefalseproduct
Reduce the use of OS signals in Java and/or the VM
src/share/vm/runtime/globals.hpp
RefDiscoveryPolicyOpenJDK6Obsoleted in JDK21
Expired in JDK24
intxruntime0
range(ReferenceProcessor::DiscoveryPolicyMin,
product
Select type of reference discovery policy: 
reference-based(0) or referent-based(1)
src/share/vm/runtime/globals.hpp
RegisterCostAreaRatioOpenJDK6intxaarch64c216000define_pd_global
src/cpu/aarch64/vm/c2_globals_aarch64.hpp
RegisterCostAreaRatioOpenJDK6intxc2develop_pd
Spill selection in reg allocator: scale area by (X/64K) before 
adding cost
src/share/vm/opto/c2_globals.hpp
RegisterCostAreaRatioOpenJDK6intxppcc216000define_pd_global
src/cpu/ppc/vm/c2_globals_ppc.hpp
RegisterCostAreaRatioOpenJDK6intxs390c212000define_pd_global
src/cpu/s390/vm/c2_globals_s390.hpp
RegisterCostAreaRatioOpenJDK6intxsparcc212000define_pd_global
src/cpu/sparc/vm/c2_globals_sparc.hpp
RegisterCostAreaRatioOpenJDK6intxx86c216000define_pd_global
src/cpu/x86/vm/c2_globals_x86.hpp
RegisterFinalizersAtInitOpenJDK6Deprecated in JDK22
Obsoleted in JDK23
Expired in JDK24
boolruntimetrueproduct
Register finalizable objects at end of Object. or 
after allocation
src/share/vm/runtime/globals.hpp
RegisterReferencesOpenJDK6boolruntimetruedevelop
Tell whether the VM should register soft/weak/final/phantom 
references
src/share/vm/runtime/globals.hpp
RelaxAccessControlCheckOpenJDK6boolruntimefalseproduct
Relax the access control checks in the verifier
src/share/vm/runtime/globals.hpp
RenumberLiveNodesOpenJDK8boolc2truedevelop
Renumber live nodes
src/share/vm/opto/c2_globals.hpp
ReoptimizeCallSequencesOpenJDK7boolppctrueproduct
Reoptimize code-sequences of calls at runtime.
src/cpu/ppc/vm/globals_ppc.hpp
ReoptimizeCallSequencesOpenJDK7bools390trueproduct
Reoptimize code-sequences of calls at runtime.
src/cpu/s390/vm/globals_s390.hpp
ReplayCompilesOpenJDK8boolruntimefalsedevelop
Enable replay of compilations from ReplayDataFile
src/share/vm/runtime/globals.hpp
ReplayDataFileOpenJDK8ccstrruntimeNULLproduct
File containing compilation replay information
[default: ./replay_pid%p.log] (%p replaced with pid)
src/share/vm/runtime/globals.hpp
ReplayIgnoreInitErrorsOpenJDK8boolruntimefalsedevelop
Ignore exceptions thrown during initialization for replay
src/share/vm/runtime/globals.hpp
ReplaySuppressInitializersOpenJDK8intxruntime2
range(0, 3)
develop
Control handling of class initialization during replay: 

0 - don't do anything special; 

1 - treat all class initializers as empty; 

2 - treat class initializers for application classes as empty; 

3 - allow all class initializers to run during bootstrap but 
 pretend they are empty after starting replay
src/share/vm/runtime/globals.hpp
RequireSharedSpacesOpenJDK6Deprecated in JDK18
Obsoleted in JDK19
boolruntimefalseproduct
Require shared spaces for metadata
src/share/vm/runtime/globals.hpp
ReservedCodeCacheSizeOpenJDK6intxaarch64c132*Mdefine_pd_global
src/cpu/aarch64/vm/c1_globals_aarch64.hpp
ReservedCodeCacheSizeOpenJDK6intxaarch64c248*Mdefine_pd_global
src/cpu/aarch64/vm/c2_globals_aarch64.hpp
ReservedCodeCacheSizeOpenJDK6size_tarmc132*Mdefine_pd_global
src/cpu/arm/vm/c1_globals_arm.hpp
ReservedCodeCacheSizeOpenJDK6uintxruntimeproduct_pd
Reserved code cache size (in bytes) - maximum code cache size
src/share/vm/runtime/globals.hpp
ReservedCodeCacheSizeOpenJDK6intxppcc132*Mdefine_pd_global
src/cpu/ppc/vm/c1_globals_ppc.hpp
ReservedCodeCacheSizeOpenJDK6intxppcc2256*Mdefine_pd_global
src/cpu/ppc/vm/c2_globals_ppc.hpp
ReservedCodeCacheSizeOpenJDK6intxs390c132*Mdefine_pd_global
src/cpu/s390/vm/c1_globals_s390.hpp
ReservedCodeCacheSizeOpenJDK6uintxs390c248*Mdefine_pd_global
src/cpu/s390/vm/c2_globals_s390.hpp
ReservedCodeCacheSizeOpenJDK6intxsparcc132*Mdefine_pd_global
src/cpu/sparc/vm/c1_globals_sparc.hpp
ReservedCodeCacheSizeOpenJDK6intxsparcc232*Mdefine_pd_global
src/cpu/sparc/vm/c2_globals_sparc.hpp
ReservedCodeCacheSizeOpenJDK6intxx86c132*Mdefine_pd_global
src/cpu/x86/vm/c1_globals_x86.hpp
ReservedCodeCacheSizeOpenJDK6intxx86c248*Mdefine_pd_global
src/cpu/x86/vm/c2_globals_x86.hpp
ReservedCodeCacheSizeOpenJDK6intxzeroshark32*Mdefine_pd_global
src/cpu/zero/vm/shark_globals_zero.hpp
ResizeOldPLABOpenJDK6Obsoleted in JDK14
Expired in JDK15
boolruntimetrueproduct
Dynamically resize (old gen) promotion LAB's
src/share/vm/runtime/globals.hpp
ResizePLABOpenJDK6boolruntimetrueproduct
Dynamically resize (survivor space) promotion LAB's
src/share/vm/runtime/globals.hpp
ResizeTLABOpenJDK6boolaarch64c1truedefine_pd_global
src/cpu/aarch64/vm/c1_globals_aarch64.hpp
ResizeTLABOpenJDK6boolaarch64c2truedefine_pd_global
src/cpu/aarch64/vm/c2_globals_aarch64.hpp
ResizeTLABOpenJDK6boolarmc1truedefine_pd_global
src/cpu/arm/vm/c1_globals_arm.hpp
ResizeTLABOpenJDK6boolruntimeproduct_pd
Dynamically resize TLAB size for threads
src/share/vm/runtime/globals.hpp
ResizeTLABOpenJDK6boolppcc1truedefine_pd_global
src/cpu/ppc/vm/c1_globals_ppc.hpp
ResizeTLABOpenJDK6boolppcc2truedefine_pd_global
src/cpu/ppc/vm/c2_globals_ppc.hpp
ResizeTLABOpenJDK6bools390c1truedefine_pd_global
src/cpu/s390/vm/c1_globals_s390.hpp
ResizeTLABOpenJDK6bools390c2truedefine_pd_global
src/cpu/s390/vm/c2_globals_s390.hpp
ResizeTLABOpenJDK6boolsparcc1truedefine_pd_global
src/cpu/sparc/vm/c1_globals_sparc.hpp
ResizeTLABOpenJDK6boolsparcc2truedefine_pd_global
src/cpu/sparc/vm/c2_globals_sparc.hpp
ResizeTLABOpenJDK6boolx86c1truedefine_pd_global
src/cpu/x86/vm/c1_globals_x86.hpp
ResizeTLABOpenJDK6boolx86c2truedefine_pd_global
src/cpu/x86/vm/c2_globals_x86.hpp
ResizeTLABOpenJDK6boolzerosharktruedefine_pd_global
src/cpu/zero/vm/shark_globals_zero.hpp
RestoreMXCSROnJNICallsOpenJDK6boolruntimefalseproduct
Restore MXCSR when returning from JNI calls
src/share/vm/runtime/globals.hpp
RestrictContendedOpenJDK8boolruntimetrueproduct
Restrict @Contended to trusted classes
src/share/vm/runtime/globals.hpp
RestrictReservedStackOpenJDK9boolruntimetrueproduct
Restrict @ReservedStackAccess to trusted classes
src/share/vm/runtime/globals.hpp
RewriteBytecodesOpenJDK6boolaarch64truedefine_pd_global
src/cpu/aarch64/vm/globals_aarch64.hpp
RewriteBytecodesOpenJDK6boolarmtruedefine_pd_global
src/cpu/arm/vm/globals_arm.hpp
RewriteBytecodesOpenJDK6boolruntimeproduct_pd
Allow rewriting of bytecodes (bytecodes are not immutable)
src/share/vm/runtime/globals.hpp
RewriteBytecodesOpenJDK6boolppctruedefine_pd_global
src/cpu/ppc/vm/globals_ppc.hpp
RewriteBytecodesOpenJDK6bools390truedefine_pd_global
src/cpu/s390/vm/globals_s390.hpp
RewriteBytecodesOpenJDK6boolsparctruedefine_pd_global
src/cpu/sparc/vm/globals_sparc.hpp
RewriteBytecodesOpenJDK6boolx86truedefine_pd_global
src/cpu/x86/vm/globals_x86.hpp
RewriteBytecodesOpenJDK6boolzerotruedefine_pd_global
src/cpu/zero/vm/globals_zero.hpp
RewriteFrequentPairsOpenJDK6boolaarch64truedefine_pd_global
src/cpu/aarch64/vm/globals_aarch64.hpp
RewriteFrequentPairsOpenJDK6boolarmtruedefine_pd_global
src/cpu/arm/vm/globals_arm.hpp
RewriteFrequentPairsOpenJDK6boolruntimeproduct_pd
Rewrite frequently used bytecode pairs into a single bytecode
src/share/vm/runtime/globals.hpp
RewriteFrequentPairsOpenJDK6boolppctruedefine_pd_global
src/cpu/ppc/vm/globals_ppc.hpp
RewriteFrequentPairsOpenJDK6bools390truedefine_pd_global
src/cpu/s390/vm/globals_s390.hpp
RewriteFrequentPairsOpenJDK6boolsparctruedefine_pd_global
src/cpu/sparc/vm/globals_sparc.hpp
RewriteFrequentPairsOpenJDK6boolx86truedefine_pd_global
src/cpu/x86/vm/globals_x86.hpp
RewriteFrequentPairsOpenJDK6boolzerotruedefine_pd_global
src/cpu/zero/vm/globals_zero.hpp
RoundFPResultsOpenJDK6boolaarch64c1truedefine_pd_global
src/cpu/aarch64/vm/c1_globals_aarch64.hpp
RoundFPResultsOpenJDK6boolarmc1falsedefine_pd_global
src/cpu/arm/vm/c1_globals_arm.hpp
RoundFPResultsOpenJDK6boolc1develop_pd
Indicates whether rounding is needed for floating point results
src/share/vm/c1/c1_globals.hpp
RoundFPResultsOpenJDK6boolppcc1falsedefine_pd_global
src/cpu/ppc/vm/c1_globals_ppc.hpp
RoundFPResultsOpenJDK6bools390c1falsedefine_pd_global
src/cpu/s390/vm/c1_globals_s390.hpp
RoundFPResultsOpenJDK6boolsparcc1falsedefine_pd_global
src/cpu/sparc/vm/c1_globals_sparc.hpp
RoundFPResultsOpenJDK6boolx86c1truedefine_pd_global
src/cpu/x86/vm/c1_globals_x86.hpp
SafepointALotOpenJDK6boolruntimefalsedevelop
Generate a lot of safepoints. This works with 
GuaranteedSafepointInterval
src/share/vm/runtime/globals.hpp
SafepointPollOffsetOpenJDK6intxaarch64c10define_pd_global
src/cpu/aarch64/vm/c1_globals_aarch64.hpp
SafepointSpinBeforeYieldOpenJDK6Deprecated in JDK10
Obsoleted in JDK11
Expired in JDK12
intxruntime2000
range(0, max_intx)
product
(Unstable)
src/share/vm/runtime/globals.hpp
SafepointTimeoutDelayOpenJDK6intxruntime10000product
Delay in milliseconds for option SafepointTimeout
src/share/vm/runtime/globals.hpp
SafepointTimeoutOpenJDK6boolruntimefalseproduct
Time out and warn or fail after SafepointTimeoutDelay 
milliseconds if failed to reach safepoint
src/share/vm/runtime/globals.hpp
ScavengeALotIntervalOpenJDK6intxruntime1notproduct
Interval between which scavenge will occur with +ScavengeALot
src/share/vm/runtime/globals.hpp
ScavengeALotOpenJDK6boolruntimefalsenotproduct
Force scavenge at every Nth exit from the runtime system 
(N=ScavengeALotInterval)
src/share/vm/runtime/globals.hpp
ScavengeBeforeFullGCOpenJDK6boolruntimetrueproduct
Scavenge youngest generation before each full GC.
src/share/vm/runtime/globals.hpp
ScavengeRootsInCodeOpenJDK6intxruntime2
range(0, 2)
diagnostic
0: do not allow scavengable oops in the code cache; 

1: allow scavenging from the code cache; 

2: emit as many constants as the compiler can see
src/share/vm/runtime/globals.hpp
SegmentedCodeCacheOpenJDK9boolruntimefalseproduct
Use a segmented code cache
src/share/vm/runtime/globals.hpp
SelectivePhiFunctionsOpenJDK6boolc1truedevelop
create phi functions at loop headers only when necessary
src/share/vm/c1/c1_globals.hpp
SelfDestructTimerOpenJDK6intxruntime0
range(0, max_intx)
product
Will cause VM to terminate after a given time (in minutes) 
(0 means off)
src/share/vm/runtime/globals.hpp
SerializeVMOutputOpenJDK6boolruntimetruediagnostic
Use a mutex to serialize output to tty and LogFile
src/share/vm/runtime/globals.hpp
ShareVtableStubsOpenJDK6boolaarch64truedefine_pd_global
src/cpu/aarch64/vm/globals_aarch64.hpp
ShareVtableStubsOpenJDK6boolarmtruedefine_pd_global
src/cpu/arm/vm/globals_arm.hpp
ShareVtableStubsOpenJDK6boolruntimedevelop_pd
Share vtable stubs (smaller code but worse branch prediction
src/share/vm/runtime/globals.hpp
ShareVtableStubsOpenJDK6boolppcfalsedefine_pd_global
// Improves performance markedly for mtrt and compress.
src/cpu/ppc/vm/globals_ppc.hpp
ShareVtableStubsOpenJDK6bools390falsedefine_pd_global
src/cpu/s390/vm/globals_s390.hpp
ShareVtableStubsOpenJDK6boolsparcfalsedefine_pd_global
// improves performance markedly for mtrt and compress
src/cpu/sparc/vm/globals_sparc.hpp
ShareVtableStubsOpenJDK6boolx86truedefine_pd_global
src/cpu/x86/vm/globals_x86.hpp
ShareVtableStubsOpenJDK6boolzerotruedefine_pd_global
src/cpu/zero/vm/globals_zero.hpp
SharedArchiveFileOpenJDK8ccstrruntimeNULLdiagnostic
Override the default location of the CDS archive file
src/share/vm/runtime/globals.hpp
SharedBaseAddressOpenJDK8size_truntimeLP64_ONLY(32*G)NOT_LP64(LINUX_ONLY(2*G) NOT_LINUX(0))
range(0, SIZE_MAX)
product
Address to allocate shared memory region for class data
src/share/vm/runtime/globals.hpp
SharedClassListFileOpenJDK8ccstrruntimeNULLproduct
Override the default CDS class list
src/share/vm/runtime/globals.hpp
SharedMiscCodeSizeOpenJDK6Obsoleted in JDK10size_truntimeDEFAULT_SHARED_MISC_CODE_SIZE
range(MIN_SHARED_MISC_CODE_SIZE, MAX_SHARED_MISC_CODE_SIZE)
product
Size of the shared miscellaneous code area (in bytes)
src/share/vm/runtime/globals.hpp
SharedMiscDataSizeOpenJDK6Obsoleted in JDK10size_truntimeDEFAULT_SHARED_MISC_DATA_SIZE
range(MIN_SHARED_MISC_DATA_SIZE, MAX_SHARED_MISC_DATA_SIZE)
product
Size of the shared miscellaneous data area (in bytes)
src/share/vm/runtime/globals.hpp
SharedReadOnlySizeOpenJDK6Obsoleted in JDK10size_truntimeDEFAULT_SHARED_READ_ONLY_SIZE
range(MIN_SHARED_READ_ONLY_SIZE, MAX_SHARED_READ_ONLY_SIZE)
product
Size of read-only space for metadata (in bytes)
src/share/vm/runtime/globals.hpp
SharedReadWriteSizeOpenJDK6Obsoleted in JDK10size_truntimeDEFAULT_SHARED_READ_WRITE_SIZE
range(MIN_SHARED_READ_WRITE_SIZE, MAX_SHARED_READ_WRITE_SIZE)
product
Size of read-write space for metadata (in bytes)
src/share/vm/runtime/globals.hpp
SharedSymbolTableBucketSizeOpenJDK9uintxruntime4
range(2, 246)
product
Average number of symbols per bucket in shared table
src/share/vm/runtime/globals.hpp
SharkMaxInlineSizeOpenJDK6intxshark32product
Maximum bytecode size of methods to inline when using Shark
src/share/vm/shark/shark_globals.hpp
SharkOptimizationLevelOpenJDK8ccstrsharkDefaultproduct
The optimization level passed to LLVM, possible values: None, Less, Default and Agressive
src/share/vm/shark/shark_globals.hpp
SharkPerformanceWarningsOpenJDK6boolsharkfalsediagnostic
Warn about things that could be made faster
src/share/vm/shark/shark_globals.hpp
SharkPrintAsmOfOpenJDK6ccstrsharkNULLdiagnostic
Print the asm of the specified method
src/share/vm/shark/shark_globals.hpp
SharkPrintBitcodeOfOpenJDK6ccstrsharkNULLdiagnostic
Print the LLVM bitcode of the specified method
src/share/vm/shark/shark_globals.hpp
SharkPrintTypeflowOfOpenJDK6ccstrsharkNULLdevelop
Print the typeflow of the specified method
src/share/vm/shark/shark_globals.hpp
SharkTraceBytecodesOpenJDK6boolsharkfalsedevelop
Trace bytecode compilation
src/share/vm/shark/shark_globals.hpp
SharkTraceInstallsOpenJDK6boolsharkfalsediagnostic
Trace method installation
src/share/vm/shark/shark_globals.hpp
SharkVerifyFunctionOpenJDK8ccstrsharkNULLdevelop
Runs LLVM verify over LLVM IR
src/share/vm/shark/shark_globals.hpp
ShowHiddenFramesOpenJDK7boolruntimefalsediagnostic
show method handle implementation frames (usually hidden)
src/share/vm/runtime/globals.hpp
ShowMessageBoxOnErrorOpenJDK6boolruntimefalseproduct
Keep process alive on VM fatal error
src/share/vm/runtime/globals.hpp
ShowSafepointMsgsOpenJDK6Obsoleted in JDK11
Expired in JDK12
boolruntimefalsedevelop
Show message about safepoint synchronization
src/share/vm/runtime/globals.hpp
ShrinkHeapInStepsOpenJDK9boolruntimetrueproduct
When disabled, informs the GC to shrink the java heap directly
 to the target size at the next full GC rather than requiring
 smaller steps during multiple full GCs.
src/share/vm/runtime/globals.hpp
SoftMatchFailureOpenJDK6boolc2trueInProductdevelop
If the DFA fails to match a node, print a message and bail out
src/share/vm/opto/c2_globals.hpp
SoftRefLRUPolicyMSPerMBOpenJDK6intxruntime1000
range(0, max_intx)
product
Number of milliseconds per MB of free space in the heap
src/share/vm/runtime/globals.hpp
SparcV9RegsHiBitsZeroOpenJDK6boolc2truedevelop
Assume Sparc V9 I&L registers on V8+ systems are zero-extended
src/share/vm/opto/c2_globals.hpp
SpecTrapLimitExtraEntriesOpenJDK8intxruntime3experimental
Extra method data trap entries for speculation
src/share/vm/runtime/globals.hpp
SpecialArraysEqualsOpenJDK6boolc2truediagnostic
special version of Arrays.equals(char[],char[])
src/share/vm/opto/c2_globals.hpp
SpecialEncodeISOArrayOpenJDK8boolc2truediagnostic
special version of ISO_8859_1$Encoder.encodeISOArray
src/share/vm/opto/c2_globals.hpp
SpecialStringCompareToOpenJDK6boolc2truediagnostic
special version of string compareTo
src/share/vm/opto/c2_globals.hpp
SpecialStringEqualsOpenJDK6boolc2truediagnostic
special version of string equals
src/share/vm/opto/c2_globals.hpp
SpecialStringIndexOfOpenJDK6boolc2truediagnostic
special version of string indexOf
src/share/vm/opto/c2_globals.hpp
SplitIfBlocksOpenJDK6boolc2trueproduct
Clone compares and control flow through merge points to fold 
some branches
src/share/vm/opto/c2_globals.hpp
StackPrintLimitOpenJDK6intxruntime100develop
number of stack frames to print in VM-level stack dump
src/share/vm/runtime/globals.hpp
StackRedPagesOpenJDK6intxaarch64DEFAULT_STACK_RED_PAGESdefine_pd_global
src/cpu/aarch64/vm/globals_aarch64.hpp
StackRedPagesOpenJDK6intxarmDEFAULT_STACK_RED_PAGESdefine_pd_global
src/cpu/arm/vm/globals_arm.hpp
StackRedPagesOpenJDK6intxruntimeproduct_pd
Number of red zone (unrecoverable overflows) pages of size 

4KB. If pages are bigger red zone is aligned up.
src/share/vm/runtime/globals.hpp
StackRedPagesOpenJDK6intxppcDEFAULT_STACK_RED_PAGESdefine_pd_global
src/cpu/ppc/vm/globals_ppc.hpp
StackRedPagesOpenJDK6intxs390DEFAULT_STACK_RED_PAGESdefine_pd_global
src/cpu/s390/vm/globals_s390.hpp
StackRedPagesOpenJDK6intxsparcDEFAULT_STACK_RED_PAGESdefine_pd_global
src/cpu/sparc/vm/globals_sparc.hpp
StackRedPagesOpenJDK6intxx86DEFAULT_STACK_RED_PAGESdefine_pd_global
src/cpu/x86/vm/globals_x86.hpp
StackRedPagesOpenJDK6intxzeroDEFAULT_STACK_RED_PAGESdefine_pd_global
src/cpu/zero/vm/globals_zero.hpp
StackReservedPagesOpenJDK9intxaarch64DEFAULT_STACK_RESERVED_PAGESdefine_pd_global
src/cpu/aarch64/vm/globals_aarch64.hpp
StackReservedPagesOpenJDK9intxarmDEFAULT_STACK_RESERVED_PAGESdefine_pd_global
src/cpu/arm/vm/globals_arm.hpp
StackReservedPagesOpenJDK9intxruntimeproduct_pd
Number of reserved zone (reserved to annotated methods) pages
 of size 4KB. If pages are bigger reserved zone is aligned up.
src/share/vm/runtime/globals.hpp
StackReservedPagesOpenJDK9intxppcDEFAULT_STACK_RESERVED_PAGESdefine_pd_global
src/cpu/ppc/vm/globals_ppc.hpp
StackReservedPagesOpenJDK9intxs390DEFAULT_STACK_RESERVED_PAGESdefine_pd_global
src/cpu/s390/vm/globals_s390.hpp
StackReservedPagesOpenJDK9intxsparcDEFAULT_STACK_RESERVED_PAGESdefine_pd_global
src/cpu/sparc/vm/globals_sparc.hpp
StackReservedPagesOpenJDK9intxx86DEFAULT_STACK_RESERVED_PAGESdefine_pd_global
src/cpu/x86/vm/globals_x86.hpp
StackReservedPagesOpenJDK9intxzeroDEFAULT_STACK_RESERVED_PAGESdefine_pd_global
src/cpu/zero/vm/globals_zero.hpp
StackShadowPagesOpenJDK6intxaarch64DEFAULT_STACK_SHADOW_PAGESdefine_pd_global
src/cpu/aarch64/vm/globals_aarch64.hpp
StackShadowPagesOpenJDK6intxarmDEFAULT_STACK_SHADOW_PAGESdefine_pd_global
src/cpu/arm/vm/globals_arm.hpp
StackShadowPagesOpenJDK6intxruntimeproduct_pd
Number of shadow zone (for overflow checking) pages of size 

4KB. If pages are bigger shadow zone is aligned up. 
This should exceed the depth of the VM and native call stack.
src/share/vm/runtime/globals.hpp
StackShadowPagesOpenJDK6intxppcDEFAULT_STACK_SHADOW_PAGESdefine_pd_global
src/cpu/ppc/vm/globals_ppc.hpp
StackShadowPagesOpenJDK6intxs390DEFAULT_STACK_SHADOW_PAGESdefine_pd_global
src/cpu/s390/vm/globals_s390.hpp
StackShadowPagesOpenJDK6intxsparcDEFAULT_STACK_SHADOW_PAGESdefine_pd_global
src/cpu/sparc/vm/globals_sparc.hpp
StackShadowPagesOpenJDK6intxx86DEFAULT_STACK_SHADOW_PAGESdefine_pd_global
src/cpu/x86/vm/globals_x86.hpp
StackShadowPagesOpenJDK6intxzeroDEFAULT_STACK_SHADOW_PAGESdefine_pd_global
src/cpu/zero/vm/globals_zero.hpp
StackTraceInThrowableOpenJDK6boolruntimetrueproduct
Collect backtrace in throwable when exception happens
src/share/vm/runtime/globals.hpp
StackYellowPagesOpenJDK6intxaarch64DEFAULT_STACK_YELLOW_PAGESdefine_pd_global
src/cpu/aarch64/vm/globals_aarch64.hpp
StackYellowPagesOpenJDK6intxarmDEFAULT_STACK_YELLOW_PAGESdefine_pd_global
src/cpu/arm/vm/globals_arm.hpp
StackYellowPagesOpenJDK6intxruntimeproduct_pd
Number of yellow zone (recoverable overflows) pages of size 

4KB. If pages are bigger yellow zone is aligned up.
src/share/vm/runtime/globals.hpp
StackYellowPagesOpenJDK6intxppcDEFAULT_STACK_YELLOW_PAGESdefine_pd_global
src/cpu/ppc/vm/globals_ppc.hpp
StackYellowPagesOpenJDK6intxs390DEFAULT_STACK_YELLOW_PAGESdefine_pd_global
src/cpu/s390/vm/globals_s390.hpp
StackYellowPagesOpenJDK6intxsparcDEFAULT_STACK_YELLOW_PAGESdefine_pd_global
src/cpu/sparc/vm/globals_sparc.hpp
StackYellowPagesOpenJDK6intxx86DEFAULT_STACK_YELLOW_PAGESdefine_pd_global
src/cpu/x86/vm/globals_x86.hpp
StackYellowPagesOpenJDK6intxzeroDEFAULT_STACK_YELLOW_PAGESdefine_pd_global
src/cpu/zero/vm/globals_zero.hpp
StartAggressiveSweepingAtOpenJDK9uintxruntime10
range(0, 100)
product
Start aggressive sweeping if X[%] of the code cache is free.
Segmented code cache: X[%] of the non-profiled heap.
Non-segmented code cache: X[%] of the total code cache
src/share/vm/runtime/globals.hpp
StartAttachListenerOpenJDK6boolruntimefalseproduct
Always start Attach Listener at VM startup
src/share/vm/runtime/globals.hpp
StopInterpreterAtOpenJDK6intxruntime0develop
Stop interpreter execution at specified bytecode number
src/share/vm/runtime/globals.hpp
StressArrayCopyMacroNodeOpenJDK9boolc2falsedevelop
Perform ArrayCopy load/store replacement during IGVN only
src/share/vm/opto/c2_globals.hpp
StressCodeAgingOpenJDK9boolruntimefalsediagnostic
Start with counters compiled in
src/share/vm/runtime/globals.hpp
StressCodeBuffersOpenJDK6boolruntimefalsedevelop
Exercise code buffer expansion and other rare state changes
src/share/vm/runtime/globals.hpp
StressCompiledExceptionHandlersOpenJDK7boolruntimefalsedevelop
Exercise compiled exception handlers
src/share/vm/runtime/globals.hpp
StressCriticalJNINativesOpenJDK6boolruntimefalsenotproduct
Exercise register saving code in critical natives
src/share/vm/runtime/globals.hpp
StressDerivedPointersOpenJDK6boolruntimefalsenotproduct
Force scavenge when a derived pointer is detected on stack 
after rtm call
src/share/vm/runtime/globals.hpp
StressGCMOpenJDK8boolc2falsediagnostic
Randomize instruction scheduling in GCM
src/share/vm/opto/c2_globals.hpp
StressLCMOpenJDK8boolc2falsediagnostic
Randomize instruction scheduling in LCM
src/share/vm/opto/c2_globals.hpp
StressLdcRewriteOpenJDK6boolruntimefalseproduct
Force ldc -> ldc_w rewrite during RedefineClasses
src/share/vm/runtime/globals.hpp
StressLinearScanOpenJDK6boolc1falsedevelop
scramble block order used by LinearScan (stress test)
src/share/vm/c1/c1_globals.hpp
StressLoopInvariantCodeMotionOpenJDK8boolc1falsedevelop
stress loop invariant code motion
src/share/vm/c1/c1_globals.hpp
StressRangeCheckEliminationOpenJDK8boolc1falsedevelop
stress Range Check Elimination
src/share/vm/c1/c1_globals.hpp
StressRecompilationOpenJDK6boolc2falsedevelop
Recompile each compiled method without subsuming loads 
or escape analysis.
src/share/vm/opto/c2_globals.hpp
StressReflectiveCodeOpenJDK6boolc2falsedevelop
Use inexact types at allocations, etc., to test reflection
src/share/vm/opto/c2_globals.hpp
StressRewriterOpenJDK8boolruntimefalsedevelop
Stress linktime bytecode rewriting
src/share/vm/runtime/globals.hpp
StrictSafepointChecksOpenJDK6boolruntimetrueInDebugnotproduct
Enable strict checks that safepoints cannot happen for threads 
that use NoSafepointVerifier
src/share/vm/runtime/globals.hpp
StringDeduplicationAgeThresholdOpenJDK8uintxruntime3
range(1, markOopDesc::max_age)
product
A string must reach this age (or be promoted to an old region) 
to be considered for deduplication
src/share/vm/runtime/globals.hpp
StringDeduplicationRehashALotOpenJDK8boolruntimefalsediagnostic
Force table rehash every time the table is scanned
src/share/vm/runtime/globals.hpp
StringDeduplicationResizeALotOpenJDK8boolruntimefalsediagnostic
Force table resize every time the table is scanned
src/share/vm/runtime/globals.hpp
StringTableSizeOpenJDK6uintxruntimedefaultStringTableSize
range(minimumStringTableSize, 111*defaultStringTableSize)
product
Number of buckets in the interned String table
src/share/vm/runtime/globals.hpp
SubsumeLoadsOpenJDK6boolc2truedevelop
Attempt to compile while subsuming loads into machine 
instructions.
src/share/vm/opto/c2_globals.hpp
SuperWordLoopUnrollAnalysisOpenJDK9boolaarch64c2truedefine_pd_global
src/cpu/aarch64/vm/c2_globals_aarch64.hpp
SuperWordLoopUnrollAnalysisOpenJDK9boolc2product_pd
Map number of unrolls for main loop via 
Superword Level Parallelism analysis
src/share/vm/opto/c2_globals.hpp
SuperWordLoopUnrollAnalysisOpenJDK9boolppcc2falsedefine_pd_global
src/cpu/ppc/vm/c2_globals_ppc.hpp
SuperWordLoopUnrollAnalysisOpenJDK9bools390c2falsedefine_pd_global
src/cpu/s390/vm/c2_globals_s390.hpp
SuperWordLoopUnrollAnalysisOpenJDK9boolsparcc2falsedefine_pd_global
src/cpu/sparc/vm/c2_globals_sparc.hpp
SuperWordLoopUnrollAnalysisOpenJDK9boolx86c2truedefine_pd_global
src/cpu/x86/vm/c2_globals_x86.hpp
SuperWordRTDepCheckOpenJDK6boolc2falsedevelop
Enable runtime dependency checks.
src/share/vm/opto/c2_globals.hpp
SuperWordReductionsOpenJDK9boolc2trueproduct
Enable reductions support in superword.
src/share/vm/opto/c2_globals.hpp
SuppressErrorAtOpenJDK6ccstrlistruntime
notproduct
List of assertions (file:line) to muzzle
src/share/vm/runtime/globals.hpp
SuppressFatalErrorMessageOpenJDK6boolruntimefalseproduct
Report NO fatal error message (avoid deadlock)
src/share/vm/runtime/globals.hpp
SurvivorAlignmentInBytesOpenJDK8intxruntime0experimental
Default survivor space alignment in bytes
src/share/vm/runtime/globals.hpp
SurvivorPaddingOpenJDK6uintxruntime3
range(0, max_juint)
product
How much buffer to keep for survivor overflow
src/share/vm/runtime/globals.hpp
SurvivorRatioOpenJDK6uintxruntime8
range(1, max_uintx-2)
product
Ratio of eden/survivor space size
src/share/vm/runtime/globals.hpp
SuspendRetryCountOpenJDK6Obsoleted in JDK17
Expired in JDK18
intxruntime50
range(0, max_intx)
product
Maximum retry count for an external suspend request
src/share/vm/runtime/globals.hpp
SuspendRetryDelayOpenJDK6Obsoleted in JDK17
Expired in JDK18
intxruntime5
range(0, max_intx)
product
Milliseconds to delay per retry (* current_retry_count)
src/share/vm/runtime/globals.hpp
SweeperLogEntriesOpenJDK6intxruntime1024notproduct
Number of records in the ring buffer of sweeper activity
src/share/vm/runtime/globals.hpp
SymbolTableSizeOpenJDK8uintxruntimedefaultSymbolTableSize
range(minimumSymbolTableSize, 111*defaultSymbolTableSize)
experimental
Number of buckets in the JVM internal Symbol table
src/share/vm/runtime/globals.hpp
SyncFlagsOpenJDK6Obsoleted in JDK12
Expired in JDK13
intxruntime0experimental
(Unsafe, Unstable) 
Experimental Sync flags
src/share/vm/runtime/globals.hpp
SyncKnobsOpenJDK6Obsoleted in JDK12
Expired in JDK13
ccstrruntimeNULLexperimental
(Unstable) Various monitor synchronization tunables
src/share/vm/runtime/globals.hpp
SyncVerboseOpenJDK6Obsoleted in JDK12
Expired in JDK13
intxruntime0experimental
(Unstable)
src/share/vm/runtime/globals.hpp
TLABAllocationWeightOpenJDK6uintxruntime35
range(0, 100)
product
Allocation averaging weight
src/share/vm/runtime/globals.hpp
TLABRefillWasteFractionOpenJDK6uintxruntime64
range(1, max_juint)
product
Maximum TLAB waste at a refill (internal fragmentation)
src/share/vm/runtime/globals.hpp
TLABSizeOpenJDK6size_truntime0product
Starting TLAB size (in bytes); zero means set ergonomically
src/share/vm/runtime/globals.hpp
TLABStatsOpenJDK6Deprecated in JDK12
Obsoleted in JDK23
Expired in JDK24
boolruntimetrueproduct
Provide more detailed and expensive TLAB statistics.
src/share/vm/runtime/globals.hpp
TLABWasteIncrementOpenJDK6uintxruntime4
range(0, max_jint)
product
Increment allowed waste at slow allocation
src/share/vm/runtime/globals.hpp
TLABWasteTargetPercentOpenJDK6uintxruntime1
range(1, 100)
product
Percentage of Eden that can be wasted
src/share/vm/runtime/globals.hpp
TargetPLABWastePctOpenJDK6uintxruntime10
range(1, 100)
product
Target wasted space in last buffer as percent of overall 
allocation
src/share/vm/runtime/globals.hpp
TargetSurvivorRatioOpenJDK6uintxruntime50
range(0, 100)
product
Desired percentage of survivor space used after scavenge
src/share/vm/runtime/globals.hpp
TenuredGenerationSizeIncrementOpenJDK6uintxruntime20
range(0, 100)
product
Adaptive size percentage change in tenured generation
src/share/vm/runtime/globals.hpp
TenuredGenerationSizeSupplementDecayOpenJDK6uintxruntime2
range(1, max_uintx)
product
Decay factor to TenuredGenerationSizeIncrement
src/share/vm/runtime/globals.hpp
TenuredGenerationSizeSupplementOpenJDK6uintxruntime80
range(0, 100)
product
Supplement to TenuredGenerationSizeIncrement used at startup
src/share/vm/runtime/globals.hpp
TestCrashInErrorHandlerOpenJDK9uintxruntime0notproduct
If > 0, provokes an error inside VM error handler (a secondary 
crash). see test_error_handler() in debug.cpp.
src/share/vm/runtime/globals.hpp
TestSafeFetchInErrorHandlerOpenJDK9boolruntimefalsenotproduct
If true, tests SafeFetch inside error handler.
src/share/vm/runtime/globals.hpp
ThreadPriorityPolicyOpenJDK6intxruntime0
range(0, 1)
product
0 : Normal. 
 VM chooses priorities that are appropriate for normal 
 applications. On Solaris NORM_PRIORITY and above are mapped 
 to normal native priority. Java priorities below 
 NORM_PRIORITY map to lower native priority values. On 
 Windows applications are allowed to use higher native 
 priorities. However, with ThreadPriorityPolicy=0, VM will 
 not use the highest possible native priority, 
 THREAD_PRIORITY_TIME_CRITICAL, as it may interfere with 
 system threads. On Linux thread priorities are ignored 
 because the OS does not support static priority in 
 SCHED_OTHER scheduling class which is the only choice for 
 non-root, non-realtime applications. 

1 : Aggressive. 
 Java thread priorities map over to the entire range of 
 native thread priorities. Higher Java thread priorities map 
 to higher native thread priorities. This policy should be 
 used with care, as sometimes it can cause performance 
 degradation in the application and/or the entire system. On 
 Linux this policy requires root privilege.
src/share/vm/runtime/globals.hpp
ThreadPriorityVerboseOpenJDK6boolruntimefalseproduct
Print priority changes
src/share/vm/runtime/globals.hpp
ThreadStackSizeOpenJDK6intxaixppc2048define_pd_global
// 0 => use system default
src/os_cpu/aix_ppc/vm/globals_aix_ppc.hpp
ThreadStackSizeOpenJDK6intxbsdx86320define_pd_global
src/os_cpu/bsd_x86/vm/globals_bsd_x86.hpp
ThreadStackSizeOpenJDK6intxbsdzero1536define_pd_global
src/os_cpu/bsd_zero/vm/globals_bsd_zero.hpp
ThreadStackSizeOpenJDK6intxlinuxaarch642048define_pd_global
// 0 => use system default
src/os_cpu/linux_aarch64/vm/globals_linux_aarch64.hpp
ThreadStackSizeOpenJDK6intxlinuxarm320define_pd_global
src/os_cpu/linux_arm/vm/globals_linux_arm.hpp
ThreadStackSizeOpenJDK6intxlinuxppc2048define_pd_global
// 0 => use system default
src/os_cpu/linux_ppc/vm/globals_linux_ppc.hpp
ThreadStackSizeOpenJDK6intxlinuxs3901024define_pd_global
// 0 => Use system default.
src/os_cpu/linux_s390/vm/globals_linux_s390.hpp
ThreadStackSizeOpenJDK6intxlinuxx86320define_pd_global
src/os_cpu/linux_x86/vm/globals_linux_x86.hpp
ThreadStackSizeOpenJDK6intxlinuxzero1536define_pd_global
src/os_cpu/linux_zero/vm/globals_linux_zero.hpp
ThreadStackSizeOpenJDK6intxruntimeproduct_pd
Thread Stack Size (in Kbytes)
src/share/vm/runtime/globals.hpp
ThreadStackSizeOpenJDK6intxsparc512define_pd_global
src/cpu/sparc/vm/globals_sparc.hpp
ThreadStackSizeOpenJDK6intxsolarisx86320define_pd_global
src/os_cpu/solaris_x86/vm/globals_solaris_x86.hpp
ThreadStackSizeOpenJDK6intxwindowsx860define_pd_global
// 0 => use system default
src/os_cpu/windows_x86/vm/globals_windows_x86.hpp
ThresholdToleranceOpenJDK6uintxruntime10
range(0, 100)
product
Allowed collection cost difference between generations
src/share/vm/runtime/globals.hpp
Tier0BackedgeNotifyFreqLogOpenJDK6intxruntime10
range(0, 30)
product
Interpreter (tier 0) invocation notification frequency
src/share/vm/runtime/globals.hpp
Tier0InvokeNotifyFreqLogOpenJDK6intxruntime7
range(0, 30)
product
Interpreter (tier 0) invocation notification frequency
src/share/vm/runtime/globals.hpp
Tier0ProfilingStartPercentageOpenJDK6intxruntime200
range(0, max_jint)
product
Start profiling in interpreter if the counters exceed tier 3 
thresholds by the specified percentage
src/share/vm/runtime/globals.hpp
Tier23InlineeNotifyFreqLogOpenJDK6intxruntime20
range(0, 30)
product
Inlinee invocation (tiers 2 and 3) notification frequency
src/share/vm/runtime/globals.hpp
Tier2BackEdgeThresholdOpenJDK6intxruntime0
range(0, max_jint)
product
Back edge threshold at which tier 2 compilation is invoked
src/share/vm/runtime/globals.hpp
Tier2BackEdgeThresholdOpenJDK6intxzeroshark100000define_pd_global
src/cpu/zero/vm/shark_globals_zero.hpp
Tier2BackedgeNotifyFreqLogOpenJDK6intxruntime14
range(0, 30)
product
C1 without MDO (tier 2) invocation notification frequency
src/share/vm/runtime/globals.hpp
Tier2CompileThresholdOpenJDK6intxruntime0
range(0, max_jint)
product
threshold at which tier 2 compilation is invoked
src/share/vm/runtime/globals.hpp
Tier2CompileThresholdOpenJDK6intxzeroshark1500define_pd_global
src/cpu/zero/vm/shark_globals_zero.hpp
Tier2InvokeNotifyFreqLogOpenJDK6intxruntime11
range(0, 30)
product
C1 without MDO (tier 2) invocation notification frequency
src/share/vm/runtime/globals.hpp
Tier3AOTBackEdgeThresholdOpenJDK9intxruntime120000
range(0, max_jint)
product
Back edge threshold at which tier 3 OSR compilation is invoked 
if coming from AOT
src/share/vm/runtime/globals.hpp
Tier3AOTCompileThresholdOpenJDK9intxruntime15000
range(0, max_jint)
product
Threshold at which tier 3 compilation is invoked (invocation 
minimum must be satisfied) if coming from AOT
src/share/vm/runtime/globals.hpp
Tier3AOTInvocationThresholdOpenJDK9intxruntime10000
range(0, max_jint)
product
Compile if number of method invocations crosses this 
threshold if coming from AOT
src/share/vm/runtime/globals.hpp
Tier3AOTMinInvocationThresholdOpenJDK9intxruntime1000
range(0, max_jint)
product
Minimum invocation to compile at tier 3 if coming from AOT
src/share/vm/runtime/globals.hpp
Tier3BackEdgeThresholdOpenJDK6intxruntime60000
range(0, max_jint)
product
Back edge threshold at which tier 3 OSR compilation is invoked
src/share/vm/runtime/globals.hpp
Tier3BackEdgeThresholdOpenJDK6intxzeroshark100000define_pd_global
src/cpu/zero/vm/shark_globals_zero.hpp
Tier3BackedgeNotifyFreqLogOpenJDK6intxruntime13
range(0, 30)
product
C1 with MDO profiling (tier 3) invocation notification 
frequency
src/share/vm/runtime/globals.hpp
Tier3CompileThresholdOpenJDK6intxruntime2000
range(0, max_jint)
product
Threshold at which tier 3 compilation is invoked (invocation 
minimum must be satisfied)
src/share/vm/runtime/globals.hpp
Tier3CompileThresholdOpenJDK6intxzeroshark2500define_pd_global
src/cpu/zero/vm/shark_globals_zero.hpp
Tier3DelayOffOpenJDK6intxruntime2
range(0, max_jint)
product
If C2 queue size is less than this amount per compiler thread 
allow methods compiled at tier 2 transition to tier 3
src/share/vm/runtime/globals.hpp
Tier3DelayOnOpenJDK6intxruntime5
range(0, max_jint)
product
If C2 queue size grows over this amount per compiler thread 
stop compiling at tier 3 and start compiling at tier 2
src/share/vm/runtime/globals.hpp
Tier3InvocationThresholdOpenJDK6intxruntime200
range(0, max_jint)
product
Compile if number of method invocations crosses this 
threshold
src/share/vm/runtime/globals.hpp
Tier3InvokeNotifyFreqLogOpenJDK6intxruntime10
range(0, 30)
product
C1 with MDO profiling (tier 3) invocation notification 
frequency
src/share/vm/runtime/globals.hpp
Tier3LoadFeedbackOpenJDK6intxruntime5
range(0, max_jint)
product
Tier 3 thresholds will increase twofold when C1 queue size 
reaches this amount per compiler thread
src/share/vm/runtime/globals.hpp
Tier3MinInvocationThresholdOpenJDK6intxruntime100
range(0, max_jint)
product
Minimum invocation to compile at tier 3
src/share/vm/runtime/globals.hpp
Tier4BackEdgeThresholdOpenJDK6intxruntime40000
range(0, max_jint)
product
Back edge threshold at which tier 4 OSR compilation is invoked
src/share/vm/runtime/globals.hpp
Tier4BackEdgeThresholdOpenJDK6intxzeroshark100000define_pd_global
src/cpu/zero/vm/shark_globals_zero.hpp
Tier4CompileThresholdOpenJDK6intxruntime15000
range(0, max_jint)
product
Threshold at which tier 4 compilation is invoked (invocation 
minimum must be satisfied
src/share/vm/runtime/globals.hpp
Tier4CompileThresholdOpenJDK6intxzeroshark4500define_pd_global
src/cpu/zero/vm/shark_globals_zero.hpp
Tier4InvocationThresholdOpenJDK6intxruntime5000
range(0, max_jint)
product
Compile if number of method invocations crosses this 
threshold
src/share/vm/runtime/globals.hpp
Tier4LoadFeedbackOpenJDK6intxruntime3
range(0, max_jint)
product
Tier 4 thresholds will increase twofold when C2 queue size 
reaches this amount per compiler thread
src/share/vm/runtime/globals.hpp
Tier4MinInvocationThresholdOpenJDK6intxruntime600
range(0, max_jint)
product
Minimum invocation to compile at tier 4
src/share/vm/runtime/globals.hpp
TieredCompilationOpenJDK6boolaarch64c1falsedefine_pd_global
src/cpu/aarch64/vm/c1_globals_aarch64.hpp
TieredCompilationOpenJDK6boolaarch64c2trueInTiereddefine_pd_global
src/cpu/aarch64/vm/c2_globals_aarch64.hpp
TieredCompilationOpenJDK6boolarmc1falsedefine_pd_global
src/cpu/arm/vm/c1_globals_arm.hpp
TieredCompilationOpenJDK6boolarmc2falsedefine_pd_global
src/cpu/arm/vm/c2_globals_arm.hpp
TieredCompilationOpenJDK6boolruntimeproduct_pd
Enable tiered compilation
src/share/vm/runtime/globals.hpp
TieredCompilationOpenJDK6boolppcc1falsedefine_pd_global
src/cpu/ppc/vm/c1_globals_ppc.hpp
TieredCompilationOpenJDK6boolppcc2truedefine_pd_global
src/cpu/ppc/vm/c2_globals_ppc.hpp
TieredCompilationOpenJDK6bools390c1falsedefine_pd_global
src/cpu/s390/vm/c1_globals_s390.hpp
TieredCompilationOpenJDK6bools390c2trueInTiereddefine_pd_global
src/cpu/s390/vm/c2_globals_s390.hpp
TieredCompilationOpenJDK6boolsparcc1falsedefine_pd_global
src/cpu/sparc/vm/c1_globals_sparc.hpp
TieredCompilationOpenJDK6boolsparcc2trueInTiereddefine_pd_global
src/cpu/sparc/vm/c2_globals_sparc.hpp
TieredCompilationOpenJDK6boolx86c1falsedefine_pd_global
src/cpu/x86/vm/c1_globals_x86.hpp
TieredCompilationOpenJDK6boolx86c2trueInTiereddefine_pd_global
src/cpu/x86/vm/c2_globals_x86.hpp
TieredCompilationOpenJDK6boolzerosharkfalsedefine_pd_global
src/cpu/zero/vm/shark_globals_zero.hpp
TieredCompileTaskTimeoutOpenJDK6intxruntime50
range(0, max_intx)
product
Kill compile task if method was not used within 
given timeout in milliseconds
src/share/vm/runtime/globals.hpp
TieredRateUpdateMaxTimeOpenJDK6intxruntime25
range(0, max_intx)
product
Maximum rate sampling interval (in milliseconds)
src/share/vm/runtime/globals.hpp
TieredRateUpdateMinTimeOpenJDK6intxruntime1
range(0, max_intx)
product
Minimum rate sampling interval (in milliseconds)
src/share/vm/runtime/globals.hpp
TieredStopAtLevelOpenJDK6intxruntime4
range(0, 4)
product
Stop at given compilation level
src/share/vm/runtime/globals.hpp
TimeCompilationPolicyOpenJDK6boolruntimefalsedevelop
Time the compilation policy
src/share/vm/runtime/globals.hpp
TimeEachLinearScanOpenJDK6boolc1falsedevelop
print detailed timing of each LinearScan run
src/share/vm/c1/c1_globals.hpp
TimeLinearScanOpenJDK6boolc1falseproduct
detailed timing of LinearScan phases
src/share/vm/c1/c1_globals.hpp
TimeLivenessAnalysisOpenJDK6boolruntimefalsedevelop
Time computation of bytecode liveness analysis
src/share/vm/runtime/globals.hpp
TimeOopMap2OpenJDK6boolruntimefalsedevelop
Time calls to GenerateOopMap::compute_map() individually
src/share/vm/runtime/globals.hpp
TimeOopMapOpenJDK6boolruntimefalsedevelop
Time calls to GenerateOopMap::compute_map() in sum
src/share/vm/runtime/globals.hpp
TraceBytecodesAtOpenJDK6intxruntime0develop
Trace bytecodes starting with specified bytecode number
src/share/vm/runtime/globals.hpp
TraceBytecodesOpenJDK6boolruntimefalsedevelop
Trace bytecode execution
src/share/vm/runtime/globals.hpp
TraceCISCSpillOpenJDK6boolc2falsenotproduct
Trace allocators use of cisc spillable instructions
src/share/vm/opto/c2_globals.hpp
TraceCallFixupOpenJDK6boolruntimefalsedevelop
Trace all call fixups
src/share/vm/runtime/globals.hpp
TraceCodeBlobStacksOpenJDK6boolruntimefalsenotproduct
Trace stack-walk of codeblobs
src/share/vm/runtime/globals.hpp
TraceCompilationPolicyOpenJDK6boolruntimefalsedevelop
Trace compilation policy
src/share/vm/runtime/globals.hpp
TraceCompiledICOpenJDK6boolruntimefalsedevelop
Trace changes of compiled IC
src/share/vm/runtime/globals.hpp
TraceCreateZombiesOpenJDK6boolruntimefalsedevelop
trace creation of zombie nmethods
src/share/vm/runtime/globals.hpp
TraceDeoptimizationOpenJDK6boolruntimefalsedevelop
Trace deoptimization
src/share/vm/runtime/globals.hpp
TraceDependenciesOpenJDK6boolruntimefalsedevelop
Trace dependencies
src/share/vm/runtime/globals.hpp
TraceDerivedPointersOpenJDK6boolruntimefalsedevelop
Trace traversal of derived pointers on stack
src/share/vm/runtime/globals.hpp
TraceFPURegisterUsageOpenJDK6boolc1falsedevelop
Trace usage of FPU registers at start of blocks (intel only)
src/share/vm/c1/c1_globals.hpp
TraceFPUStackOpenJDK6boolc1falsedevelop
Trace emulation of the FPU stack (intel only)
src/share/vm/c1/c1_globals.hpp
TraceFinalizerRegistrationOpenJDK6boolruntimefalsedevelop
Trace registration of final references
src/share/vm/runtime/globals.hpp
TraceFrequencyInliningOpenJDK6boolruntimefalsedevelop
Trace frequency based inlining
src/share/vm/runtime/globals.hpp
TraceGCTaskManagerOpenJDK6boolruntimefalsedevelop
Trace actions of the GC task manager
src/share/vm/runtime/globals.hpp
TraceGCTaskQueueOpenJDK6boolruntimefalsedevelop
Trace actions of the GC task queues
src/share/vm/runtime/globals.hpp
TraceICBufferOpenJDK6boolruntimefalsedevelop
Trace usage of IC buffer
src/share/vm/runtime/globals.hpp
TraceICsOpenJDK6boolruntimefalsedevelop
Trace inline cache changes
src/share/vm/runtime/globals.hpp
TraceInlineCacheClearingOpenJDK6boolruntimefalsedevelop
Trace clearing of inline caches in nmethods
src/share/vm/runtime/globals.hpp
TraceInvocationCounterOverflowOpenJDK6boolruntimefalsenotproduct
Trace method invocation counter overflow
src/share/vm/runtime/globals.hpp
TraceInvokeDynamicOpenJDK6Obsoleted in JDK16
Expired in JDK17
boolruntimefalsedevelop
trace internal invoke dynamic operations
src/share/vm/runtime/globals.hpp
TraceIterativeGVNOpenJDK6boolc2falsedevelop
Print progress during Iterative Global Value Numbering
src/share/vm/opto/c2_globals.hpp
TraceJVMTIObjectTaggingOpenJDK6Obsoleted in JDK16
Expired in JDK17
boolruntimefalsediagnostic
Trace JVMTI object tagging calls
src/share/vm/runtime/globals.hpp
TraceJVMTIOpenJDK6ccstrruntimeNULLproduct
Trace flags for JVMTI functions and events
src/share/vm/runtime/globals.hpp
TraceJavaAssertionsOpenJDK6boolruntimefalsedevelop
Trace java language assertions
src/share/vm/runtime/globals.hpp
TraceLinearScanLevelOpenJDK6intxc10
range(0, 4)
develop
Debug levels for the linear scan allocator
src/share/vm/c1/c1_globals.hpp
TraceLivenessGenOpenJDK6boolruntimefalsedevelop
Trace the generation of liveness analysis information
src/share/vm/runtime/globals.hpp
TraceLivenessQueryOpenJDK6boolruntimefalsenotproduct
Trace queries of liveness analysis information
src/share/vm/runtime/globals.hpp
TraceLongCompilesOpenJDK6boolruntimefalsedevelop
Print out every time compilation is longer than 
a given threshold
src/share/vm/runtime/globals.hpp
TraceLoopLimitCheckOpenJDK6boolc2falsedevelop
Trace generation of loop limits checks
src/share/vm/opto/c2_globals.hpp
TraceLoopOptsOpenJDK6boolc2falsedevelop
Trace executed loop optimizations
src/share/vm/opto/c2_globals.hpp
TraceLoopPredicateOpenJDK6boolc2falsedevelop
Trace generation of loop predicates
src/share/vm/opto/c2_globals.hpp
TraceLoopUnswitchingOpenJDK6boolc2falsenotproduct
Trace loop unswitching
src/share/vm/opto/c2_globals.hpp
TraceMethodHandlesOpenJDK6Obsoleted in JDK16
Expired in JDK17
boolruntimefalsedevelop
trace internal method handle operations
src/share/vm/runtime/globals.hpp
TraceMethodReplacementOpenJDK6boolruntimefalsedevelop
Print when methods are replaced do to recompilation
src/share/vm/runtime/globals.hpp
TraceNMethodInstallsOpenJDK6Deprecated in JDK13
Obsoleted in JDK14
Expired in JDK15
boolruntimefalsediagnostic
Trace nmethod installation
src/share/vm/runtime/globals.hpp
TraceNewOopMapGenerationDetailedOpenJDK6boolruntimefalsedevelop
Trace OopMapGeneration: print detailed cell states
src/share/vm/runtime/globals.hpp
TraceNewOopMapGenerationOpenJDK6boolruntimefalsedevelop
Trace OopMapGeneration
src/share/vm/runtime/globals.hpp
TraceNewVectorsOpenJDK7boolc2falsenotproduct
Trace creation of Vector nodes
src/share/vm/opto/c2_globals.hpp
TraceOldGenTimeOpenJDK9boolruntimefalseproduct
Trace accumulated time for old collection
src/share/vm/runtime/globals.hpp
TraceOnStackReplacementOpenJDK6boolruntimefalsenotproduct
Trace on stack replacement
src/share/vm/runtime/globals.hpp
TraceOopMapGenerationOpenJDK6boolruntimefalsedevelop
Show OopMapGeneration
src/share/vm/runtime/globals.hpp
TraceOopMapRewritesOpenJDK6boolruntimefalsedevelop
Trace rewriting of method oops during oop map generation
src/share/vm/runtime/globals.hpp
TraceOptimizeFillOpenJDK6boolc2falsedevelop
print detailed information about fill conversion
src/share/vm/opto/c2_globals.hpp
TraceOptoOutputOpenJDK6boolc2falsenotproduct
Trace pipelining information
src/share/vm/opto/c2_globals.hpp
TraceOptoParseOpenJDK6boolc2falsedevelop
Trace bytecode parse and control-flow merge
src/share/vm/opto/c2_globals.hpp
TraceOptoPipeliningOpenJDK6boolc2falsenotproduct
Trace pipelining information
src/share/vm/opto/c2_globals.hpp
TraceParallelOldGCDensePrefixOpenJDK6boolruntimefalsedevelop
Trace dense prefix computation for ParallelOldGC
src/share/vm/runtime/globals.hpp
TraceParallelOldGCMarkingPhaseOpenJDK6boolruntimefalsedevelop
Trace marking phase in ParallelOldGC
src/share/vm/runtime/globals.hpp
TracePartialPeelingOpenJDK6boolc2falsenotproduct
Trace partial peeling (loop rotation) information
src/share/vm/opto/c2_globals.hpp
TracePatchingOpenJDK6boolc1falsedevelop
Trace patching of field access on uninitialized classes
src/share/vm/c1/c1_globals.hpp
TracePcPatchingOpenJDK6boolruntimefalsedevelop
Trace usage of frame::patch_pc
src/share/vm/runtime/globals.hpp
TracePhaseCCPOpenJDK6boolc2falsenotproduct
Print progress during Conditional Constant Propagation
src/share/vm/opto/c2_globals.hpp
TracePostallocExpandOpenJDK8boolc2falsedevelop
Trace expanding nodes after
 register allocation.
src/share/vm/opto/c2_globals.hpp
TracePredicateFailedTrapsOpenJDK8boolc1falsedevelop
trace runtime traps caused by predicate failure
src/share/vm/c1/c1_globals.hpp
TraceProfileInterpreterOpenJDK7boolruntimefalsedevelop
Trace profiling at the bytecode level during interpretation. 
This outputs the profiling information collected to improve 
jit compilation.
src/share/vm/runtime/globals.hpp
TraceProfileTripCountOpenJDK6boolc2falsenotproduct
Trace profile loop trip count information
src/share/vm/opto/c2_globals.hpp
TraceRangeCheckEliminationOpenJDK8boolc1falsedevelop
Trace Range Check Elimination
src/share/vm/c1/c1_globals.hpp
TraceRangeLimitCheckOpenJDK6boolc2falsedevelop
Trace additional overflow checks in RCE
src/share/vm/opto/c2_globals.hpp
TraceRelocatorOpenJDK6boolruntimefalsedevelop
Trace the bytecode relocator
src/share/vm/runtime/globals.hpp
TraceScavengeOpenJDK6Obsoleted in JDK11
Expired in JDK12
boolruntimefalsenotproduct
Trace scavenge
src/share/vm/runtime/globals.hpp
TraceSpillingOpenJDK6boolc2falsediagnostic
Trace spilling
src/share/vm/opto/c2_globals.hpp
TraceSuperWordLoopUnrollAnalysisOpenJDK9boolc2falsenotproduct
Trace what Superword Level Parallelism analysis applies
src/share/vm/opto/c2_globals.hpp
TraceSuperWordOpenJDK6boolc2falsenotproduct
Trace superword transforms
src/share/vm/opto/c2_globals.hpp
TraceSuspendWaitFailuresOpenJDK6Obsoleted in JDK17
Expired in JDK18
boolruntimefalseproduct
Trace external suspend wait failures
src/share/vm/runtime/globals.hpp
TraceTrapsOpenJDK7boolaarch64falseproduct
Trace all traps the signal handler
src/cpu/aarch64/vm/globals_aarch64.hpp
TraceTrapsOpenJDK7boolppcfalseproduct
Trace all traps the signal handler
handles.
src/cpu/ppc/vm/globals_ppc.hpp
TraceTrapsOpenJDK7bools390falseproduct
Trace all traps the signal handler
handles.
src/cpu/s390/vm/globals_s390.hpp
TraceTypeProfileOpenJDK6boolc2falsediagnostic
Trace type profile
src/share/vm/opto/c2_globals.hpp
TraceUncollectedSpeculationsOpenJDK9booljvmcifalsedevelop
Print message when a failed speculation was not collected
src/share/vm/jvmci/jvmci_globals.hpp
TraceYoungGenTimeOpenJDK9boolruntimefalseproduct
Trace accumulated time for young collection
src/share/vm/runtime/globals.hpp
TrackedInitializationLimitOpenJDK6intxc250
range(0, 65535)
product
When initializing fields, track up to this many words
src/share/vm/opto/c2_globals.hpp
TransmitErrorReportOpenJDK6Obsoleted in JDK12
Expired in JDK13
boolruntimefalseproduct
Enable error report transmission on erroneous termination
src/share/vm/runtime/globals.hpp
TrapBasedICMissChecksOpenJDK7boolppctrueproduct
Raise and handle SIGTRAP if inline cache miss detected.
src/cpu/ppc/vm/globals_ppc.hpp
TrapBasedNotEntrantChecksOpenJDK7boolppctrueproduct
Raise and handle SIGTRAP if calling not entrant or zombie
 method.
src/cpu/ppc/vm/globals_ppc.hpp
TrapBasedNullChecksOpenJDK7boolaarch64falsedefine_pd_global
src/cpu/aarch64/vm/globals_aarch64.hpp
TrapBasedNullChecksOpenJDK7boolarmfalsedefine_pd_global
// Not needed
src/cpu/arm/vm/globals_arm.hpp
TrapBasedNullChecksOpenJDK7boolruntimeproduct_pd
Generate code for null checks that uses a cmp and trap 
instruction raising SIGTRAP. This is only used if an access to
null (+offset) will not raise a SIGSEGV, i.e.,
ImplicitNullChecks don't work (PPC64).
src/share/vm/runtime/globals.hpp
TrapBasedNullChecksOpenJDK7boolppctruedefine_pd_global
src/cpu/ppc/vm/globals_ppc.hpp
TrapBasedNullChecksOpenJDK7bools390truedefine_pd_global
src/cpu/s390/vm/globals_s390.hpp
TrapBasedNullChecksOpenJDK7boolsparcfalsedefine_pd_global
// Not needed on sparc.
src/cpu/sparc/vm/globals_sparc.hpp
TrapBasedNullChecksOpenJDK7boolx86falsedefine_pd_global
// Not needed on x86.
src/cpu/x86/vm/globals_x86.hpp
TrapBasedNullChecksOpenJDK7boolzerofalsedefine_pd_global
src/cpu/zero/vm/globals_zero.hpp
TrapBasedRangeChecksOpenJDK7boolaarch64c2falsedefine_pd_global
// Not needed.
src/cpu/aarch64/vm/c2_globals_aarch64.hpp
TrapBasedRangeChecksOpenJDK7boolc2product_pd
Generate code for range checks that uses a cmp and trap 
instruction raising SIGTRAP. Used on PPC64.
src/share/vm/opto/c2_globals.hpp
TrapBasedRangeChecksOpenJDK7boolppcc2truedefine_pd_global
src/cpu/ppc/vm/c2_globals_ppc.hpp
TrapBasedRangeChecksOpenJDK7bools390c2falsedefine_pd_global
// Not needed on z/Architecture.
src/cpu/s390/vm/c2_globals_s390.hpp
TrapBasedRangeChecksOpenJDK7boolsparcc2falsedefine_pd_global
// Not needed on sparc.
src/cpu/sparc/vm/c2_globals_sparc.hpp
TrapBasedRangeChecksOpenJDK7boolx86c2falsedefine_pd_global
// Not needed on x86.
src/cpu/x86/vm/c2_globals_x86.hpp
TrustFinalNonStaticFieldsOpenJDK6boolruntimefalseexperimental
trust final non-static declarations for constant folding
src/share/vm/runtime/globals.hpp
TwoOperandLIRFormOpenJDK6boolaarch64c1falsedefine_pd_global
src/cpu/aarch64/vm/c1_globals_aarch64.hpp
TwoOperandLIRFormOpenJDK6boolarmc1falsedefine_pd_global
src/cpu/arm/vm/c1_globals_arm.hpp
TwoOperandLIRFormOpenJDK6boolc1develop_pd
true if LIR requires src1 and dst to match in binary LIR ops
src/share/vm/c1/c1_globals.hpp
TwoOperandLIRFormOpenJDK6boolppcc1falsedefine_pd_global
src/cpu/ppc/vm/c1_globals_ppc.hpp
TwoOperandLIRFormOpenJDK6bools390c1truedefine_pd_global
src/cpu/s390/vm/c1_globals_s390.hpp
TwoOperandLIRFormOpenJDK6boolsparcc1falsedefine_pd_global
src/cpu/sparc/vm/c1_globals_sparc.hpp
TwoOperandLIRFormOpenJDK6boolx86c1truedefine_pd_global
src/cpu/x86/vm/c1_globals_x86.hpp
TypeProfileArgsLimitOpenJDK8intxruntime2
range(0, 16)
product
max number of call arguments to consider for type profiling
src/share/vm/runtime/globals.hpp
TypeProfileCastsOpenJDK6boolruntimetruedevelop
treat casts like calls for purposes of type profiling
src/share/vm/runtime/globals.hpp
TypeProfileLevelOpenJDK8uintxaarch64111define_pd_global
src/cpu/aarch64/vm/globals_aarch64.hpp
TypeProfileLevelOpenJDK8uintxarm0define_pd_global
src/cpu/arm/vm/globals_arm.hpp
TypeProfileLevelOpenJDK8uintxruntimeproduct_pd
=XYZ, with Z: Type profiling of arguments at call; 
Y: Type profiling of return value at call; 
X: Type profiling of parameters to methods; 
X, Y and Z in 0=off ; 1=jsr292 only; 2=all methods
src/share/vm/runtime/globals.hpp
TypeProfileLevelOpenJDK8uintxppc111define_pd_global
src/cpu/ppc/vm/globals_ppc.hpp
TypeProfileLevelOpenJDK8uintxs390111define_pd_global
src/cpu/s390/vm/globals_s390.hpp
TypeProfileLevelOpenJDK8uintxsparc111define_pd_global
src/cpu/sparc/vm/globals_sparc.hpp
TypeProfileLevelOpenJDK8uintxx86111define_pd_global
src/cpu/x86/vm/globals_x86.hpp
TypeProfileLevelOpenJDK8uintxzero0define_pd_global
src/cpu/zero/vm/globals_zero.hpp
TypeProfileMajorReceiverPercentOpenJDK6intxc290
range(0, 100)
product
% of major receiver type to all profiled receivers
src/share/vm/opto/c2_globals.hpp
TypeProfileParmsLimitOpenJDK8intxruntime2
range(-1, 64)
product
max number of incoming parameters to consider for type profiling
, -1 for all
src/share/vm/runtime/globals.hpp
TypeProfileWidthOpenJDK6intxruntime2
range(0, 8)
product
Number of receiver types to record in call/cast profile
src/share/vm/runtime/globals.hpp
UncommonNullCastOpenJDK6boolaarch64truedefine_pd_global
// Uncommon-trap NULLs past to check cast
src/cpu/aarch64/vm/globals_aarch64.hpp
UncommonNullCastOpenJDK6boolarmtruedefine_pd_global
// Uncommon-trap NULLs past to check cast
src/cpu/arm/vm/globals_arm.hpp
UncommonNullCastOpenJDK6boolruntimedevelop_pd
track occurrences of null in casts; adjust compiler tactics
src/share/vm/runtime/globals.hpp
UncommonNullCastOpenJDK6boolppctruedefine_pd_global
// Uncommon-trap NULLs passed to check cast.
src/cpu/ppc/vm/globals_ppc.hpp
UncommonNullCastOpenJDK6bools390truedefine_pd_global
// Uncommon-trap NULLs passed to check cast.
src/cpu/s390/vm/globals_s390.hpp
UncommonNullCastOpenJDK6boolsparctruedefine_pd_global
// Uncommon-trap NULLs passed to check cast
src/cpu/sparc/vm/globals_sparc.hpp
UncommonNullCastOpenJDK6boolx86truedefine_pd_global
// Uncommon-trap NULLs passed to check cast
src/cpu/x86/vm/globals_x86.hpp
UncommonNullCastOpenJDK6boolzerotruedefine_pd_global
src/cpu/zero/vm/globals_zero.hpp
UnguardOnExecutionViolationOpenJDK6intxruntime0
range(0, 2)
product
Unguard page and retry on no-execute fault (Win32 only) 

0=off, 1=conservative, 2=aggressive
src/share/vm/runtime/globals.hpp
UnlinkSymbolsALotOpenJDK6Deprecated in JDK11
Obsoleted in JDK12
Expired in JDK13
boolruntimefalseproduct
Unlink unreferenced symbols from the symbol table at safepoints
src/share/vm/runtime/globals.hpp
UnlockDiagnosticVMOptionsOpenJDK6boolruntimetrueInDebugdiagnostic
Enable normal processing of flags relating to field diagnostics
src/share/vm/runtime/globals.hpp
UnlockExperimentalVMOptionsOpenJDK6boolruntimefalseexperimental
Enable normal processing of flags relating to experimental 
features
src/share/vm/runtime/globals.hpp
UnrollLimitForProfileCheckOpenJDK6intxc21
range(0, max_intx)
develop
Don't use profile_trip_cnt() to restrict unrolling until 
unrolling would push the number of unrolled iterations above 
UnrollLimitForProfileCheck. A higher value allows more 
unrolling. Zero acts as a very large value.
src/share/vm/opto/c2_globals.hpp
UnsyncloadClassOpenJDK6Deprecated in JDK10
Obsoleted in JDK11
Expired in JDK12
boolruntimefalsediagnostic
Unstable: VM calls loadClass unsynchronized. Custom 
class loader must call VM synchronized for findClass 
and defineClass.
src/share/vm/runtime/globals.hpp
Use24BitFPModeOpenJDK6boolc2truedevelop
Set 24-bit FPU mode on a per-compile basis
src/share/vm/opto/c2_globals.hpp
Use24BitFPOpenJDK6boolc2truedevelop
use FP instructions that produce 24-bit precise results
src/share/vm/opto/c2_globals.hpp
Use64KPagesThresholdOpenJDK9uintxaix0develop
4K/64K page allocation threshold.
src/os/aix/vm/globals_aix.hpp
Use64KPagesOpenJDK9boolaixtrueproduct
Use 64K pages if available.
src/os/aix/vm/globals_aix.hpp
UseAESCTRIntrinsicsOpenJDK9boolruntimefalsediagnostic
Use intrinsics for the paralleled version of AES/CTR crypto
src/share/vm/runtime/globals.hpp
UseAESIntrinsicsOpenJDK7boolruntimefalsediagnostic
Use intrinsics for AES versions of crypto
src/share/vm/runtime/globals.hpp
UseAESOpenJDK7boolruntimefalseproduct
Control whether AES instructions are used when available
src/share/vm/runtime/globals.hpp
UseAOTStrictLoadingOpenJDK9boolruntimefalsediagnostic
Exit the VM if any of the AOT libraries has invalid config
src/share/vm/runtime/globals.hpp
UseAOTOpenJDK9boolruntimeAOT_ONLY(true) NOT_AOT(false)product
Use AOT compiled files
src/share/vm/runtime/globals.hpp
UseAVXOpenJDK6intxx862
range(0, 99)
product
Highest supported AVX instructions set on x86/x64
src/cpu/x86/vm/globals_x86.hpp
UseAdaptiveGCBoundaryOpenJDK6Obsoleted in JDK15
Expired in JDK16
boolruntimefalseproduct
Allow young-old boundary to move
src/share/vm/runtime/globals.hpp
UseAdaptiveGenerationSizePolicyAtMajorCollectionOpenJDK6boolruntimetrueproduct
Use adaptive young-old sizing policies at major collections
src/share/vm/runtime/globals.hpp
UseAdaptiveGenerationSizePolicyAtMinorCollectionOpenJDK6boolruntimetrueproduct
Use adaptive young-old sizing policies at minor collections
src/share/vm/runtime/globals.hpp
UseAdaptiveNUMAChunkSizingOpenJDK6boolruntimetrueproduct
Enable adaptive chunk sizing for NUMA
src/share/vm/runtime/globals.hpp
UseAdaptiveSizeDecayMajorGCCostOpenJDK6boolruntimetrueproduct
Adaptive size decays the major cost for long major intervals
src/share/vm/runtime/globals.hpp
UseAdaptiveSizePolicyFootprintGoalOpenJDK6boolruntimetrueproduct
Use adaptive minimum footprint as a goal
src/share/vm/runtime/globals.hpp
UseAdaptiveSizePolicyWithSystemGCOpenJDK6boolruntimefalseproduct
Include statistics from System.gc() for adaptive size policy
src/share/vm/runtime/globals.hpp
UseAdaptiveSizePolicyOpenJDK6boolruntimetrueproduct
Use adaptive generation sizing policies
src/share/vm/runtime/globals.hpp
UseAddressNopOpenJDK6boolx86falseproduct
Use '0F 1F [addr]' NOP instructions on x86 cpus
src/cpu/x86/vm/globals_x86.hpp
UseAdler32IntrinsicsOpenJDK9boolruntimefalsediagnostic
use intrinsics for java.util.zip.Adler32
src/share/vm/runtime/globals.hpp
UseAutoGCSelectPolicyOpenJDK6boolruntimefalseproduct
Use automatic collection selection policy
src/share/vm/runtime/globals.hpp
UseBMI1InstructionsOpenJDK8boolx86falseproduct
Use BMI1 instructions
src/cpu/x86/vm/globals_x86.hpp
UseBMI2InstructionsOpenJDK8boolx86falseproduct
Use BMI2 instructions
src/cpu/x86/vm/globals_x86.hpp
UseBarriersForVolatileOpenJDK9Obsoleted in JDK15
Expired in JDK16
boolaarch64falseproduct
Use memory barriers to implement volatile accesses
src/cpu/aarch64/vm/globals_aarch64.hpp
UseBiasedLockingOpenJDK6Deprecated in JDK15
Obsoleted in JDK18
Expired in JDK19
boolruntimetrueproduct
Enable biased locking in JVM
src/share/vm/runtime/globals.hpp
UseBimorphicInliningOpenJDK6boolc2trueproduct
Profiling based inlining for two receivers
src/share/vm/opto/c2_globals.hpp
UseBlockCopyOpenJDK6boolsparcfalseproduct
Use special cpu instructions for block copy
src/cpu/sparc/vm/globals_sparc.hpp
UseBlockZeroingOpenJDK6boolaarch64trueproduct
Use DC ZVA for block zeroing
src/cpu/aarch64/vm/globals_aarch64.hpp
UseBlockZeroingOpenJDK6boolsparcfalseproduct
Use special cpu instructions for block zeroing
src/cpu/sparc/vm/globals_sparc.hpp
UseBsdPosixThreadCPUClocksOpenJDK6Obsoleted in JDK16
Expired in JDK17
boolbsdtrueproduct
enable fast Bsd Posix clocks where available
src/os/bsd/vm/globals_bsd.hpp
UseByteReverseInstructionOpenJDK9bools390trueproduct
Use byte reverse instruction.
src/cpu/s390/vm/globals_s390.hpp
UseC1OptimizationsOpenJDK6boolc1truedevelop
Turn on C1 optimizations
src/share/vm/c1/c1_globals.hpp
UseCASForSwapOpenJDK6boolsparcfalsedevelop
Do not use swap instructions, but only CAS (in a loop) on SPARC
src/cpu/sparc/vm/globals_sparc.hpp
UseCBCondOpenJDK6boolsparcfalseproduct
Use compare and branch instruction on SPARC
src/cpu/sparc/vm/globals_sparc.hpp
UseCGroupMemoryLimitForHeapOpenJDK7Deprecated in JDK10
Expired in JDK11
boolruntimefalseexperimental
Use CGroup memory limit as physical memory limit for heap 
sizing
src/share/vm/runtime/globals.hpp
UseCHAOpenJDK6boolruntimetruedevelop
Enable CHA
src/share/vm/runtime/globals.hpp
UseCISCSpillOpenJDK6boolaarch64c2truedefine_pd_global
src/cpu/aarch64/vm/c2_globals_aarch64.hpp
UseCISCSpillOpenJDK6boolc2develop_pd
Use ADLC supplied cisc instructions during allocation
src/share/vm/opto/c2_globals.hpp
UseCISCSpillOpenJDK6boolppcc2falsedefine_pd_global
src/cpu/ppc/vm/c2_globals_ppc.hpp
UseCISCSpillOpenJDK6bools390c2truedefine_pd_global
src/cpu/s390/vm/c2_globals_s390.hpp
UseCISCSpillOpenJDK6boolsparcc2falsedefine_pd_global
src/cpu/sparc/vm/c2_globals_sparc.hpp
UseCISCSpillOpenJDK6boolx86c2truedefine_pd_global
src/cpu/x86/vm/c2_globals_x86.hpp
UseCLMULOpenJDK8boolx86falseproduct
Control whether CLMUL instructions can be used on x86/x64
src/cpu/x86/vm/globals_x86.hpp
UseCMSBestFitOpenJDK6Obsoleted in JDK14
Expired in JDK15
boolruntimetrueproduct
Use CMS best fit allocation strategy
src/share/vm/runtime/globals.hpp
UseCMSInitiatingOccupancyOnlyOpenJDK6Obsoleted in JDK14
Expired in JDK15
boolruntimefalseproduct
Only use occupancy as a criterion for starting a CMS collection
src/share/vm/runtime/globals.hpp
UseCMoveUnconditionallyOpenJDK9boolc2falseproduct
Use CMove (scalar and vector) ignoring profitability test.
src/share/vm/opto/c2_globals.hpp
UseCRC32CIntrinsicsOpenJDK9boolruntimefalsediagnostic
use intrinsics for java.util.zip.CRC32C
src/share/vm/runtime/globals.hpp
UseCRC32IntrinsicsOpenJDK8boolruntimefalsediagnostic
use intrinsics for java.util.zip.CRC32
src/share/vm/runtime/globals.hpp
UseCRC32OpenJDK9boolaarch64falseproduct
Use CRC32 instructions for CRC32 computation
src/cpu/aarch64/vm/globals_aarch64.hpp
UseCodeAgingOpenJDK9Obsoleted in JDK20
Expired in JDK21
boolruntimetrueproduct
Insert counter to detect warm methods
src/share/vm/runtime/globals.hpp
UseCodeCacheFlushingOpenJDK6boolruntimetrueproduct
Remove cold/old nmethods from the code cache
src/share/vm/runtime/globals.hpp
UseCompilerOpenJDK6boolruntimetrueproduct
Use Just-In-Time compilation
src/share/vm/runtime/globals.hpp
UseCompressedClassPointersOpenJDK8boolruntimefalselp64_product
Use 32-bit class pointers in 64-bit VM. 
lp64_product means flag is always constant in 32 bit VM
src/share/vm/runtime/globals.hpp
UseCompressedOopsOpenJDK6boolruntimefalselp64_product
Use 32-bit object references in 64-bit VM. 
lp64_product means flag is always constant in 32 bit VM
src/share/vm/runtime/globals.hpp
UseConcMarkSweepGCOpenJDK6Obsoleted in JDK14
Expired in JDK15
boolruntimefalseproduct
Use Concurrent Mark-Sweep GC in the old generation
src/share/vm/runtime/globals.hpp
UseCondCardMarkOpenJDK6boolruntimefalseproduct
Check for already marked card before updating card table
src/share/vm/runtime/globals.hpp
UseCountLeadingZerosInstructionOpenJDK6boolx86falseproduct
Use count leading zeros instruction
src/cpu/x86/vm/globals_x86.hpp
UseCountLeadingZerosInstructionsPPC64OpenJDK7boolppctrueproduct
Use count leading zeros instructions.
src/cpu/ppc/vm/globals_ppc.hpp
UseCountTrailingZerosInstructionOpenJDK8boolx86falseproduct
Use count trailing zeros instruction
src/cpu/x86/vm/globals_x86.hpp
UseCountedLoopSafepointsOpenJDK7boolc2falseproduct
Force counted loops to keep a safepoint
src/share/vm/opto/c2_globals.hpp
UseCounterDecayOpenJDK6Obsoleted in JDK22
Expired in JDK23
boolruntimetrueproduct
Adjust recompilation counters
src/share/vm/runtime/globals.hpp
UseCpuAllocPathOpenJDK9boollinuxfalsediagnostic
Use CPU_ALLOC code path in os::active_processor_count
src/os/linux/vm/globals_linux.hpp
UseCriticalCMSThreadPriorityOpenJDK6boolruntimefalseexperimental
ConcurrentMarkSweep thread runs at critical scheduling priority
src/share/vm/runtime/globals.hpp
UseCriticalCompilerThreadPriorityOpenJDK6boolruntimefalseexperimental
Compiler thread(s) run at critical scheduling priority
src/share/vm/runtime/globals.hpp
UseCriticalJavaThreadPriorityOpenJDK6boolruntimefalseexperimental
Java thread priority 10 maps to critical scheduling priority
src/share/vm/runtime/globals.hpp
UseDetachedThreadsOpenJDK6boolruntimetruedevelop
Use detached threads that are recycled upon termination 
(for Solaris only)
src/share/vm/runtime/globals.hpp
UseDivModOpenJDK6boolc2trueproduct
Use combined DivMod instruction if available
src/share/vm/opto/c2_globals.hpp
UseDynamicNumberOfGCThreadsOpenJDK6boolruntimefalseproduct
Dynamically choose the number of parallel threads 
parallel gc will use
src/share/vm/runtime/globals.hpp
UseExactTypesOpenJDK6boolc2truedevelop
Use exact types to eliminate array store checks and v-calls
src/share/vm/opto/c2_globals.hpp
UseExplicitCommitOpenJDK9boolaixfalseproduct
Explicit commit for virtual memory.
src/os/aix/vm/globals_aix.hpp
UseExtendedFileIOOpenJDK6boolsolaristrueproduct
Enable workaround for limitations of stdio FILE structure
src/os/solaris/vm/globals_solaris.hpp
UseExtendedLoadAndReserveInstructionsPPC64OpenJDK7boolppcfalseproduct
Use extended versions of load-and-reserve instructions.
src/cpu/ppc/vm/globals_ppc.hpp
UseFMAOpenJDK9boolruntimefalseproduct
Control whether FMA instructions are used when available
src/share/vm/runtime/globals.hpp
UseFPUForSpillingOpenJDK6boolc2falseproduct
Spill integer registers to FPU instead of stack when possible
src/share/vm/opto/c2_globals.hpp
UseFakeTimersOpenJDK6boolruntimefalsedevelop
Tell whether the VM should use system time or a fake timer
src/share/vm/runtime/globals.hpp
UseFastAccessorMethodsOpenJDK6boolzerotrueproduct
Use fast method entry code for accessor methods
src/cpu/zero/vm/globals_zero.hpp
UseFastEmptyMethodsOpenJDK6boolzerotrueproduct
Use fast method entry code for empty methods
src/cpu/zero/vm/globals_zero.hpp
UseFastJNIAccessorsOpenJDK6boolruntimetrueproduct
Use optimized versions of GetField
src/share/vm/runtime/globals.hpp
UseFastLockingOpenJDK6boolc1truedevelop
Use fast inlined locking code
src/share/vm/c1/c1_globals.hpp
UseFastNewInstanceOpenJDK6boolc1truedevelop
Use fast inlined instance allocation
src/share/vm/c1/c1_globals.hpp
UseFastNewObjectArrayOpenJDK6boolc1truedevelop
Use fast inlined object array allocation
src/share/vm/c1/c1_globals.hpp
UseFastNewTypeArrayOpenJDK6boolc1truedevelop
Use fast inlined type array allocation
src/share/vm/c1/c1_globals.hpp
UseFastSignatureHandlersOpenJDK6boolruntimetruedevelop
Use fast signature handlers for native calls
src/share/vm/runtime/globals.hpp
UseFastStosbOpenJDK7boolx86falseproduct
Use fast-string operation for zeroing: rep stosb
src/cpu/x86/vm/globals_x86.hpp
UseG1GCOpenJDK6boolruntimefalseproduct
Use the Garbage-First garbage collector
src/share/vm/runtime/globals.hpp
UseGCOverheadLimitOpenJDK6boolruntimetrueproduct
Use policy to limit of proportion of time spent in GC 
before an OutOfMemory error is thrown
src/share/vm/runtime/globals.hpp
UseGCTaskAffinityOpenJDK6Obsoleted in JDK14
Expired in JDK16
boolruntimefalseproduct
Use worker affinity when asking for GCTasks
src/share/vm/runtime/globals.hpp
UseGHASHIntrinsicsOpenJDK9boolruntimefalsediagnostic
Use intrinsics for GHASH versions of crypto
src/share/vm/runtime/globals.hpp
UseGlobalValueNumberingOpenJDK6boolc1truedevelop
Use Global Value Numbering (separate phase)
src/share/vm/c1/c1_globals.hpp
UseHeavyMonitorsOpenJDK6Deprecated in JDK18
Obsoleted in JDK19
Expired in JDK20
boolruntimefalseproduct
use heavyweight instead of lightweight Java monitors
src/share/vm/runtime/globals.hpp
UseHugeTLBFSOpenJDK6Obsoleted in JDK22
Expired in JDK23
boolbsdfalseproduct
Use MAP_HUGETLB for large pages
src/os/bsd/vm/globals_bsd.hpp
UseHugeTLBFSOpenJDK6Obsoleted in JDK22
Expired in JDK23
boollinuxfalseproduct
Use MAP_HUGETLB for large pages
src/os/linux/vm/globals_linux.hpp
UseImplicitStableValuesOpenJDK8Obsoleted in JDK13
Expired in JDK14
boolc2truediagnostic
Mark well-known stable fields as such (e.g. String.value)
src/share/vm/opto/c2_globals.hpp
UseIncDecOpenJDK6boolx86truediagnostic
Use INC, DEC instructions on x86
src/cpu/x86/vm/globals_x86.hpp
UseInlineCachesOpenJDK6boolruntimetrueproduct
Use Inline Caches for virtual calls
src/share/vm/runtime/globals.hpp
UseInlineDepthForSpeculativeTypesOpenJDK8boolc2truediagnostic
Carry inline depth of profile point with speculative type 
and give priority to profiling from lower inline depth
src/share/vm/opto/c2_globals.hpp
UseInterpreterOpenJDK6boolruntimetrueproduct
Use interpreter for non-compiled methods
src/share/vm/runtime/globals.hpp
UseJVMCICompilerOpenJDK9booljvmcifalseexperimental
Use JVMCI as the default compiler
src/share/vm/jvmci/jvmci_globals.hpp
UseJumpTablesOpenJDK6boolc2trueproduct
Use JumpTables instead of a binary search tree for switches
src/share/vm/opto/c2_globals.hpp
UseLSEOpenJDK9boolaarch64falseproduct
Use LSE instructions
src/cpu/aarch64/vm/globals_aarch64.hpp
UseLWPSynchronizationOpenJDK6Obsoleted in JDK15
Expired in JDK16
boolruntimetrueproduct
Use LWP-based instead of libthread-based synchronization 
(SPARC only)
src/share/vm/runtime/globals.hpp
UseLargePagesInMetaspaceOpenJDK8Deprecated in JDK15
Obsoleted in JDK16
Expired in JDK17
boolruntimefalseproduct
Use large page memory in metaspace. 
Only used if UseLargePages is enabled.
src/share/vm/runtime/globals.hpp
UseLargePagesIndividualAllocationOpenJDK6boolaixfalsedefine_pd_global
src/os/aix/vm/globals_aix.hpp
UseLargePagesIndividualAllocationOpenJDK6boolbsdfalsedefine_pd_global
src/os/bsd/vm/globals_bsd.hpp
UseLargePagesIndividualAllocationOpenJDK6boollinuxfalsedefine_pd_global
src/os/linux/vm/globals_linux.hpp
UseLargePagesIndividualAllocationOpenJDK6boolruntimeproduct_pd
Allocate large pages individually for better affinity
src/share/vm/runtime/globals.hpp
UseLargePagesIndividualAllocationOpenJDK6boolsolarisfalsedefine_pd_global
src/os/solaris/vm/globals_solaris.hpp
UseLargePagesIndividualAllocationOpenJDK6boolwindowstruedefine_pd_global
src/os/windows/vm/globals_windows.hpp
UseLargePagesOpenJDK6boolaixfalsedefine_pd_global
src/os/aix/vm/globals_aix.hpp
UseLargePagesOpenJDK6boolbsdfalsedefine_pd_global
src/os/bsd/vm/globals_bsd.hpp
UseLargePagesOpenJDK6boollinuxfalsedefine_pd_global
src/os/linux/vm/globals_linux.hpp
UseLargePagesOpenJDK6boolruntimeproduct_pd
Use large page memory
src/share/vm/runtime/globals.hpp
UseLargePagesOpenJDK6boolsolaristruedefine_pd_global
src/os/solaris/vm/globals_solaris.hpp
UseLargePagesOpenJDK6boolwindowsfalsedefine_pd_global
src/os/windows/vm/globals_windows.hpp
UseLibmIntrinsicOpenJDK9boolx86truediagnostic
Use Libm Intrinsics
src/cpu/x86/vm/globals_x86.hpp
UseLinuxPosixThreadCPUClocksOpenJDK6boollinuxtrueproduct
enable fast Linux Posix clocks where available
src/os/linux/vm/globals_linux.hpp
UseLoadInstructionsForStackBangingPPC64OpenJDK7boolppcfalseproduct
Use load instructions for stack banging.
src/cpu/ppc/vm/globals_ppc.hpp
UseLocalValueNumberingOpenJDK6boolc1truedevelop
Use Local Value Numbering (embedded in GraphBuilder)
src/share/vm/c1/c1_globals.hpp
UseLockedTracingOpenJDK7Obsoleted in JDK11
Expired in JDK12
boolruntimefalseproduct
Use locked-tracing when doing event-based tracing
src/share/vm/runtime/globals.hpp
UseLoopCounterOpenJDK6boolruntimetrueproduct
Increment invocation counter on backward branch
src/share/vm/runtime/globals.hpp
UseLoopInvariantCodeMotionOpenJDK8boolc1trueproduct
Simple loop invariant code motion for short loops during GVN
src/share/vm/c1/c1_globals.hpp
UseLoopPredicateOpenJDK6boolc2trueproduct
Generate a predicate to select fast/slow loop versions
src/share/vm/opto/c2_globals.hpp
UseLoopSafepointsOpenJDK6boolruntimetruedevelop
Generate Safepoint nodes in every loop
src/share/vm/runtime/globals.hpp
UseMallocOnlyOpenJDK6boolruntimefalsedevelop
Use only malloc/free for allocation (no resource area/arena)
src/share/vm/runtime/globals.hpp
UseMathExactIntrinsicsOpenJDK8boolc2truediagnostic
Enables intrinsification of various java.lang.Math functions
src/share/vm/opto/c2_globals.hpp
UseMaximumCompactionOnSystemGCOpenJDK6boolruntimetrueproduct
Use maximum compaction in the Parallel Old garbage collector 
for a system GC
src/share/vm/runtime/globals.hpp
UseMembarOpenJDK6Deprecated in JDK10
Obsoleted in JDK12
boolaarch64truedefine_pd_global
src/cpu/aarch64/vm/globals_aarch64.hpp
UseMembarOpenJDK6Deprecated in JDK10
Obsoleted in JDK12
boolarmtruedefine_pd_global
src/cpu/arm/vm/globals_arm.hpp
UseMembarOpenJDK6Deprecated in JDK10
Obsoleted in JDK12
boolruntimeproduct_pd
(Unstable) Issues membars on thread state transitions
src/share/vm/runtime/globals.hpp
UseMembarOpenJDK6Deprecated in JDK10
Obsoleted in JDK12
boolppcfalsedefine_pd_global
src/cpu/ppc/vm/globals_ppc.hpp
UseMembarOpenJDK6Deprecated in JDK10
Obsoleted in JDK12
bools390falsedefine_pd_global
src/cpu/s390/vm/globals_s390.hpp
UseMembarOpenJDK6Deprecated in JDK10
Obsoleted in JDK12
boolsparcfalsedefine_pd_global
src/cpu/sparc/vm/globals_sparc.hpp
UseMembarOpenJDK6Deprecated in JDK10
Obsoleted in JDK12
boolx86falsedefine_pd_global
src/cpu/x86/vm/globals_x86.hpp
UseMembarOpenJDK6Deprecated in JDK10
Obsoleted in JDK12
boolzerotruedefine_pd_global
src/cpu/zero/vm/globals_zero.hpp
UseMontgomeryMultiplyIntrinsicOpenJDK8boolc2falsediagnostic
Enables intrinsification of BigInteger.montgomeryMultiply()
src/share/vm/opto/c2_globals.hpp
UseMontgomerySquareIntrinsicOpenJDK8boolc2falsediagnostic
Enables intrinsification of BigInteger.montgomerySquare()
src/share/vm/opto/c2_globals.hpp
UseMulAddIntrinsicOpenJDK8boolc2falsediagnostic
Enables intrinsification of BigInteger.mulAdd()
src/share/vm/opto/c2_globals.hpp
UseMultiplyToLenIntrinsicOpenJDK8boolc2falsediagnostic
Enables intrinsification of BigInteger.multiplyToLen()
src/share/vm/opto/c2_globals.hpp
UseNUMAInterleavingOpenJDK6boolruntimefalseproduct
Interleave memory across NUMA nodes if available
src/share/vm/runtime/globals.hpp
UseNUMAOpenJDK6boolruntimefalseproduct
Use NUMA if available
src/share/vm/runtime/globals.hpp
UseNeonOpenJDK9boolaarch64falseproduct
Use Neon for CRC32 computation
src/cpu/aarch64/vm/globals_aarch64.hpp
UseNewCode2OpenJDK6boolruntimefalsediagnostic
Testing Only: Use the new version while testing
src/share/vm/runtime/globals.hpp
UseNewCode3OpenJDK6boolruntimefalsediagnostic
Testing Only: Use the new version while testing
src/share/vm/runtime/globals.hpp
UseNewCodeOpenJDK6boolruntimefalsediagnostic
Testing Only: Use the new version while testing
src/share/vm/runtime/globals.hpp
UseNewLongLShiftOpenJDK6boolx86falseproduct
Use optimized bitwise shift left
src/cpu/x86/vm/globals_x86.hpp
UseNiagaraInstrsOpenJDK6boolsparcfalseproduct
Use Niagara-efficient instruction subset
src/cpu/sparc/vm/globals_sparc.hpp
UseOSErrorReportingOpenJDK6boolaixfalsedefine_pd_global
src/os/aix/vm/globals_aix.hpp
UseOSErrorReportingOpenJDK6boolbsdfalsedefine_pd_global
src/os/bsd/vm/globals_bsd.hpp
UseOSErrorReportingOpenJDK6boollinuxfalsedefine_pd_global
src/os/linux/vm/globals_linux.hpp
UseOSErrorReportingOpenJDK6boolruntimeproduct_pd
Let VM fatal error propagate to the OS (ie. WER on Windows)
src/share/vm/runtime/globals.hpp
UseOSErrorReportingOpenJDK6boolsolarisfalsedefine_pd_global
src/os/solaris/vm/globals_solaris.hpp
UseOSErrorReportingOpenJDK6boolwindowsfalsedefine_pd_global
// for now.
src/os/windows/vm/globals_windows.hpp
UseOnStackReplacementOpenJDK6boolaarch64c1truedefine_pd_global
src/cpu/aarch64/vm/c1_globals_aarch64.hpp
UseOnStackReplacementOpenJDK6boolaarch64c2truedefine_pd_global
src/cpu/aarch64/vm/c2_globals_aarch64.hpp
UseOnStackReplacementOpenJDK6boolarmc1truedefine_pd_global
src/cpu/arm/vm/c1_globals_arm.hpp
UseOnStackReplacementOpenJDK6boolarmc2truedefine_pd_global
src/cpu/arm/vm/c2_globals_arm.hpp
UseOnStackReplacementOpenJDK6boolruntimeproduct_pd
Use on stack replacement, calls runtime if invoc. counter 
overflows in loop
src/share/vm/runtime/globals.hpp
UseOnStackReplacementOpenJDK6boolppcc1truedefine_pd_global
src/cpu/ppc/vm/c1_globals_ppc.hpp
UseOnStackReplacementOpenJDK6boolppcc2truedefine_pd_global
src/cpu/ppc/vm/c2_globals_ppc.hpp
UseOnStackReplacementOpenJDK6bools390c1truedefine_pd_global
src/cpu/s390/vm/c1_globals_s390.hpp
UseOnStackReplacementOpenJDK6bools390c2truedefine_pd_global
src/cpu/s390/vm/c2_globals_s390.hpp
UseOnStackReplacementOpenJDK6boolsparcc1truedefine_pd_global
src/cpu/sparc/vm/c1_globals_sparc.hpp
UseOnStackReplacementOpenJDK6boolsparcc2truedefine_pd_global
src/cpu/sparc/vm/c2_globals_sparc.hpp
UseOnStackReplacementOpenJDK6boolx86c1truedefine_pd_global
src/cpu/x86/vm/c1_globals_x86.hpp
UseOnStackReplacementOpenJDK6boolx86c2truedefine_pd_global
src/cpu/x86/vm/c2_globals_x86.hpp
UseOnStackReplacementOpenJDK6boolzerosharktruedefine_pd_global
src/cpu/zero/vm/shark_globals_zero.hpp
UseOnlyInlinedBimorphicOpenJDK6boolc2trueproduct
Don't use BimorphicInlining if can't inline a second method
src/share/vm/opto/c2_globals.hpp
UseOprofileOpenJDK6Obsoleted in JDK16
Expired in JDK17
boolbsdfalseproduct
enable support for Oprofile profiler
src/os/bsd/vm/globals_bsd.hpp
UseOprofileOpenJDK6Obsoleted in JDK16
Expired in JDK17
boollinuxfalseproduct
enable support for Oprofile profiler
src/os/linux/vm/globals_linux.hpp
UseOptoBiasInliningOpenJDK6Deprecated in JDK15
Obsoleted in JDK18
Expired in JDK19
boolc2trueproduct
Generate biased locking code in C2 ideal graph
src/share/vm/opto/c2_globals.hpp
UsePSAdaptiveSurvivorSizePolicyOpenJDK6boolruntimetrueproduct
Use adaptive survivor sizing policies
src/share/vm/runtime/globals.hpp
UseParNewGCOpenJDK6boolruntimefalseproduct
Use parallel threads in the new generation
src/share/vm/runtime/globals.hpp
UseParallelGCOpenJDK6boolruntimefalseproduct
Use the Parallel Scavenge garbage collector
src/share/vm/runtime/globals.hpp
UseParallelOldGCOpenJDK6Deprecated in JDK14
Obsoleted in JDK15
Expired in JDK16
boolruntimefalseproduct
Use the Parallel Old garbage collector
src/share/vm/runtime/globals.hpp
UsePerfDataOpenJDK6boolruntimetrueproduct
Flag to disable jvmstat instrumentation for performance testing 
and problem isolation purposes
src/share/vm/runtime/globals.hpp
UsePopCountInstructionOpenJDK6boolruntimefalseproduct
Use population count instruction
src/share/vm/runtime/globals.hpp
UsePower6SchedulerPPC64OpenJDK7boolppcfalseproduct
Use Power6 Scheduler.
src/cpu/ppc/vm/globals_ppc.hpp
UsePrivilegedStackOpenJDK6boolruntimetruedevelop
Enable the security JVM functions
src/share/vm/runtime/globals.hpp
UsePthreadsOpenJDK6boolruntimefalsedevelop
Use pthread-based instead of libthread-based synchronization 
(SPARC only)
src/share/vm/runtime/globals.hpp
UseRDPCForConstantTableBaseOpenJDK6Obsoleted in JDK16
Expired in JDK17
boolc2falseproduct
Use Sparc RDPC instruction for the constant table base.
src/share/vm/opto/c2_globals.hpp
UseRTMDeoptOpenJDK8boolppcfalseproduct
Perform deopt and recompilation based on RTM abort ratio
src/cpu/ppc/vm/globals_ppc.hpp
UseRTMDeoptOpenJDK8boolx86falseproduct
Perform deopt and recompilation based on RTM abort ratio
src/cpu/x86/vm/globals_x86.hpp
UseRTMForStackLocksOpenJDK8boolppcfalseexperimental
Enable RTM lock eliding for stack locks in compiled code
src/cpu/ppc/vm/globals_ppc.hpp
UseRTMForStackLocksOpenJDK8boolx86falseexperimental
Enable RTM lock eliding for stack locks in compiled code
src/cpu/x86/vm/globals_x86.hpp
UseRTMLockingOpenJDK8boolppcfalseproduct
Enable RTM lock eliding for inflated locks in compiled code
src/cpu/ppc/vm/globals_ppc.hpp
UseRTMLockingOpenJDK8boolx86falseproduct
Enable RTM lock eliding for inflated locks in compiled code
src/cpu/x86/vm/globals_x86.hpp
UseRTMXendForLockBusyOpenJDK8boolppctrueexperimental
Use RTM Xend instead of Xabort when lock busy
src/cpu/ppc/vm/globals_ppc.hpp
UseRTMXendForLockBusyOpenJDK8boolx86trueexperimental
Use RTM Xend instead of Xabort when lock busy
src/cpu/x86/vm/globals_x86.hpp
UseRelocIndexOpenJDK6boolruntimefalsedevelop
Use an index to speed random access to relocations
src/share/vm/runtime/globals.hpp
UseRotateAndMaskInstructionsPPC64OpenJDK7boolppctrueproduct
Use rotate and mask instructions.
src/cpu/ppc/vm/globals_ppc.hpp
UseSHA1IntrinsicsOpenJDK8boolruntimefalsediagnostic
Use intrinsics for SHA-1 crypto hash function. 
Requires that UseSHA is enabled.
src/share/vm/runtime/globals.hpp
UseSHA256IntrinsicsOpenJDK8boolruntimefalsediagnostic
Use intrinsics for SHA-224 and SHA-256 crypto hash functions. 
Requires that UseSHA is enabled.
src/share/vm/runtime/globals.hpp
UseSHA512IntrinsicsOpenJDK8boolruntimefalsediagnostic
Use intrinsics for SHA-384 and SHA-512 crypto hash functions. 
Requires that UseSHA is enabled.
src/share/vm/runtime/globals.hpp
UseSHAOpenJDK8boolruntimefalseproduct
Control whether SHA instructions are used when available
src/share/vm/runtime/globals.hpp
UseSHMOpenJDK6Obsoleted in JDK22
Expired in JDK23
boolbsdfalseproduct
Use SYSV shared memory for large pages
src/os/bsd/vm/globals_bsd.hpp
UseSHMOpenJDK6Obsoleted in JDK22
Expired in JDK23
boollinuxfalseproduct
Use SYSV shared memory for large pages
src/os/linux/vm/globals_linux.hpp
UseSIGTRAPOpenJDK7boolppctrueproduct
Allow trap instructions that make use of SIGTRAP. Use this to 
switch off all optimizations requiring SIGTRAP.
src/cpu/ppc/vm/globals_ppc.hpp
UseSIMDForMemoryOpsOpenJDK9boolaarch64falseproduct
Use SIMD instructions in generated memory move code
src/cpu/aarch64/vm/globals_aarch64.hpp
UseSSE42IntrinsicsOpenJDK6boolx86falseproduct
SSE4.2 versions of intrinsics
src/cpu/x86/vm/globals_x86.hpp
UseSSEOpenJDK6Obsoleted in JDK15
Expired in JDK16
intxruntime99
range(0, 99)
product
Highest supported SSE instructions set on x86/x64
src/share/vm/runtime/globals.hpp
UseSemaphoreGCThreadsSynchronizationOpenJDK9Obsoleted in JDK16
Expired in JDK17
boolruntimetruediagnostic
Use semaphore synchronization for the GC Threads, 
instead of synchronization based on mutexes
src/share/vm/runtime/globals.hpp
UseSerialGCOpenJDK6boolruntimefalseproduct
Use the Serial garbage collector
src/share/vm/runtime/globals.hpp
UseSharedSpacesOpenJDK6Deprecated in JDK18
Obsoleted in JDK19
boolruntimetrueproduct
Use shared spaces for metadata
src/share/vm/runtime/globals.hpp
UseSignalChainingOpenJDK6boolruntimetrueproduct
Use signal-chaining to invoke signal handlers installed 
by the application (Solaris & Linux only)
src/share/vm/runtime/globals.hpp
UseSimulatorCacheOpenJDK9boolaarch64falseproduct
tell sim to cache memory updates until exclusive op occurs
src/cpu/aarch64/vm/globals_aarch64.hpp
UseSlowPathOpenJDK6boolc1falsedevelop
For debugging: test slow cases by always using them
src/share/vm/c1/c1_globals.hpp
UseSquareToLenIntrinsicOpenJDK8boolc2falsediagnostic
Enables intrinsification of BigInteger.squareToLen()
src/share/vm/opto/c2_globals.hpp
UseStackBangingOpenJDK6boolruntimetruedevelop
use stack banging for stack overflow checks (required for 
proper StackOverflow handling; disable only to measure cost 
of stackbanging)
src/share/vm/runtime/globals.hpp
UseStaticBranchPredictionForUncommonPathsPPC64OpenJDK7boolppcfalseproduct
Use static branch prediction hints for uncommon paths.
src/cpu/ppc/vm/globals_ppc.hpp
UseStaticBranchPredictionInCompareAndSwapPPC64OpenJDK7boolppctrueproduct
Use static branch prediction hints in CAS operations.
src/cpu/ppc/vm/globals_ppc.hpp
UseStoreImmI16OpenJDK6boolx86trueproduct
Use store immediate 16-bits value instruction on x86
src/cpu/x86/vm/globals_x86.hpp
UseStrictFPOpenJDK6boolruntimetruedevelop
use strict fp if modifier strictfp is set
src/share/vm/runtime/globals.hpp
UseStringDeduplicationOpenJDK8boolruntimefalseproduct
Use string deduplication
src/share/vm/runtime/globals.hpp
UseSuperWordOpenJDK6boolc2trueproduct
Transform scalar operations into superword operations
src/share/vm/opto/c2_globals.hpp
UseTLABOpenJDK6boolaarch64c1truedefine_pd_global
src/cpu/aarch64/vm/c1_globals_aarch64.hpp
UseTLABOpenJDK6boolaarch64c2truedefine_pd_global
src/cpu/aarch64/vm/c2_globals_aarch64.hpp
UseTLABOpenJDK6boolarmc1truedefine_pd_global
src/cpu/arm/vm/c1_globals_arm.hpp
UseTLABOpenJDK6boolruntimeproduct_pd
Use thread-local object allocation
src/share/vm/runtime/globals.hpp
UseTLABOpenJDK6boolppcc1truedefine_pd_global
src/cpu/ppc/vm/c1_globals_ppc.hpp
UseTLABOpenJDK6boolppcc2truedefine_pd_global
src/cpu/ppc/vm/c2_globals_ppc.hpp
UseTLABOpenJDK6bools390c1truedefine_pd_global
src/cpu/s390/vm/c1_globals_s390.hpp
UseTLABOpenJDK6bools390c2truedefine_pd_global
src/cpu/s390/vm/c2_globals_s390.hpp
UseTLABOpenJDK6boolsparcc1truedefine_pd_global
src/cpu/sparc/vm/c1_globals_sparc.hpp
UseTLABOpenJDK6boolsparcc2truedefine_pd_global
src/cpu/sparc/vm/c2_globals_sparc.hpp
UseTLABOpenJDK6boolx86c1truedefine_pd_global
src/cpu/x86/vm/c1_globals_x86.hpp
UseTLABOpenJDK6boolx86c2truedefine_pd_global
src/cpu/x86/vm/c2_globals_x86.hpp
UseTLABOpenJDK6boolzerosharktruedefine_pd_global
src/cpu/zero/vm/shark_globals_zero.hpp
UseTableRangesOpenJDK6boolc1truedevelop
Faster versions of lookup table using ranges
src/share/vm/c1/c1_globals.hpp
UseThreadPrioritiesOpenJDK6boolruntimeproduct_pd
Use native thread priorities
src/share/vm/runtime/globals.hpp
UseThreadPrioritiesOpenJDK6boolsolarisfalsedefine_pd_global
src/os/solaris/vm/globals_solaris.hpp
UseTransparentHugePagesOpenJDK7boollinuxfalseproduct
Use MADV_HUGEPAGE for large pages
src/os/linux/vm/globals_linux.hpp
UseTypeProfileOpenJDK6boolaarch64c1falsedefine_pd_global
src/cpu/aarch64/vm/c1_globals_aarch64.hpp
UseTypeProfileOpenJDK6boolarmc1falsedefine_pd_global
src/cpu/arm/vm/c1_globals_arm.hpp
UseTypeProfileOpenJDK6boolruntimetrueproduct
Check interpreter profile for historically monomorphic calls
src/share/vm/runtime/globals.hpp
UseTypeProfileOpenJDK6boolppcc1falsedefine_pd_global
src/cpu/ppc/vm/c1_globals_ppc.hpp
UseTypeProfileOpenJDK6bools390c1falsedefine_pd_global
src/cpu/s390/vm/c1_globals_s390.hpp
UseTypeProfileOpenJDK6boolsparcc1falsedefine_pd_global
src/cpu/sparc/vm/c1_globals_sparc.hpp
UseTypeProfileOpenJDK6boolx86c1falsedefine_pd_global
src/cpu/x86/vm/c1_globals_x86.hpp
UseTypeSpeculationOpenJDK8boolc2trueproduct
Speculatively propagate types from profiles
src/share/vm/opto/c2_globals.hpp
UseUTCFileTimestampOpenJDK6Obsoleted in JDK11
Expired in JDK12
boolwindowstrueproduct
Adjust the timestamp returned from stat() to be UTC
src/os/windows/vm/globals_windows.hpp
UseUnalignedAccessesOpenJDK9boolruntimefalsediagnostic
Use unaligned memory accesses in Unsafe
src/share/vm/runtime/globals.hpp
UseUnalignedLoadStoresOpenJDK6boolx86falseproduct
Use SSE2 MOVDQU instruction for Arraycopy
src/cpu/x86/vm/globals_x86.hpp
UseUniqueSubclassesOpenJDK6boolc2truedevelop
Narrow an abstract reference to the unique concrete subclass
src/share/vm/opto/c2_globals.hpp
UseV8InstrsOnlyOpenJDK6boolsparcfalsedevelop
Use SPARC-V8 Compliant instruction subset
src/cpu/sparc/vm/globals_sparc.hpp
UseVISOpenJDK6intxsparc99
range(0, 99)
product
Highest supported VIS instructions set on Sparc
src/cpu/sparc/vm/globals_sparc.hpp
UseVectorizedMismatchIntrinsicOpenJDK9boolruntimefalsediagnostic
Enables intrinsification of ArraysSupport.vectorizedMismatch()
src/share/vm/runtime/globals.hpp
UseXMMForArrayCopyOpenJDK6boolruntimefalseproduct
Use SSE2 MOVQ instruction for Arraycopy
src/share/vm/runtime/globals.hpp
UseXmmI2DOpenJDK6boolx86falseproduct
Use SSE2 CVTDQ2PD instruction to convert Integer to Double
src/cpu/x86/vm/globals_x86.hpp
UseXmmI2FOpenJDK6boolx86falseproduct
Use SSE2 CVTDQ2PS instruction to convert Integer to Float
src/cpu/x86/vm/globals_x86.hpp
UseXmmLoadAndClearUpperOpenJDK6boolx86trueproduct
Load low part of XMM register and clear upper part
src/cpu/x86/vm/globals_x86.hpp
UseXmmRegToRegMoveAllOpenJDK6boolx86falseproduct
Copy all XMM register bits when moving value between registers
src/cpu/x86/vm/globals_x86.hpp
VMThreadHintNoPreemptOpenJDK6Deprecated in JDK11
Obsoleted in JDK12
Expired in JDK13
boolruntimefalseproduct
(Solaris only) Give VM thread an extra quanta
src/share/vm/runtime/globals.hpp
VMThreadPriorityOpenJDK6intxruntime-1
range(-1, 127)
product
The native priority at which the VM thread should run 
(-1 means no change)
src/share/vm/runtime/globals.hpp
VMThreadStackSizeOpenJDK6intxaixppc2048define_pd_global
src/os_cpu/aix_ppc/vm/globals_aix_ppc.hpp
VMThreadStackSizeOpenJDK6intxbsdx86512define_pd_global
src/os_cpu/bsd_x86/vm/globals_bsd_x86.hpp
VMThreadStackSizeOpenJDK6intxbsdzero512define_pd_global
src/os_cpu/bsd_zero/vm/globals_bsd_zero.hpp
VMThreadStackSizeOpenJDK6intxlinuxaarch642048define_pd_global
src/os_cpu/linux_aarch64/vm/globals_linux_aarch64.hpp
VMThreadStackSizeOpenJDK6intxlinuxarm512define_pd_global
src/os_cpu/linux_arm/vm/globals_linux_arm.hpp
VMThreadStackSizeOpenJDK6intxlinuxppc2048define_pd_global
src/os_cpu/linux_ppc/vm/globals_linux_ppc.hpp
VMThreadStackSizeOpenJDK6intxlinuxs3901024define_pd_global
src/os_cpu/linux_s390/vm/globals_linux_s390.hpp
VMThreadStackSizeOpenJDK6intxlinuxx86512define_pd_global
src/os_cpu/linux_x86/vm/globals_linux_x86.hpp
VMThreadStackSizeOpenJDK6intxlinuxzero512define_pd_global
src/os_cpu/linux_zero/vm/globals_linux_zero.hpp
VMThreadStackSizeOpenJDK6intxruntimeproduct_pd
Non-Java Thread Stack Size (in Kbytes)
src/share/vm/runtime/globals.hpp
VMThreadStackSizeOpenJDK6intxsparc512define_pd_global
src/cpu/sparc/vm/globals_sparc.hpp
VMThreadStackSizeOpenJDK6intxsolarisx86512define_pd_global
src/os_cpu/solaris_x86/vm/globals_solaris_x86.hpp
VMThreadStackSizeOpenJDK6intxwindowsx860define_pd_global
// 0 => use system default
src/os_cpu/windows_x86/vm/globals_windows_x86.hpp
ValueMapInitialSizeOpenJDK6intxc111
range(1, NOT_LP64(1*K) LP64_ONLY(32*K))
product
Initial size of a value map
src/share/vm/c1/c1_globals.hpp
ValueMapMaxLoopSizeOpenJDK6intxc18
range(0, 128)
product
maximum size of a loop optimized by global value numbering
src/share/vm/c1/c1_globals.hpp
ValueSearchLimitOpenJDK6intxc21000
range(0, max_jint)
product
Recursion limit in PhaseMacroExpand::value_from_mem_phi
src/share/vm/opto/c2_globals.hpp
VerboseInternalVMTestsOpenJDK7boolruntimefalsenotproduct
Turn on logging for internal VM tests.
src/share/vm/runtime/globals.hpp
VerboseOpenJDK6boolruntimefalsedevelop
Print additional debugging information from other modes
src/share/vm/runtime/globals.hpp
VerifyActivationFrameSizeOpenJDK6boolruntimefalsedevelop
Verify that activation frame didn't become smaller than its 
minimal size
src/share/vm/runtime/globals.hpp
VerifyAdapterCallsOpenJDK7boolruntimetrueInDebugdiagnostic
Verify that i2c/c2i adapters are called properly
src/share/vm/runtime/globals.hpp
VerifyAdapterSharingOpenJDK6boolruntimefalsedevelop
Verify that the code for shared adapters is the equivalent
src/share/vm/runtime/globals.hpp
VerifyAfterGCOpenJDK6boolruntimefalsediagnostic
Verify memory system after GC
src/share/vm/runtime/globals.hpp
VerifyAliasesOpenJDK6boolc2falsedevelop
perform extra checks on the results of alias analysis
src/share/vm/opto/c2_globals.hpp
VerifyBeforeExitOpenJDK6boolruntimetrueInDebugdiagnostic
Verify system before exiting
src/share/vm/runtime/globals.hpp
VerifyBeforeGCOpenJDK6boolruntimefalsediagnostic
Verify memory system before GC
src/share/vm/runtime/globals.hpp
VerifyBeforeIterationOpenJDK6boolruntimefalsediagnostic
Verify memory system before JVMTI iteration
src/share/vm/runtime/globals.hpp
VerifyBlockOffsetArrayOpenJDK6boolruntimefalsedevelop
Do (expensive) block offset array verification
src/share/vm/runtime/globals.hpp
VerifyCodeCacheOpenJDK9boolruntimefalsenotproduct
Verify code cache on memory allocation/deallocation
src/share/vm/runtime/globals.hpp
VerifyCompiledCodeOpenJDK6boolruntimefalsedevelop
Include miscellaneous runtime verifications in nmethod code; 
default off because it disturbs nmethod size heuristics
src/share/vm/runtime/globals.hpp
VerifyConnectionGraphOpenJDK7boolc2truenotproduct
Verify Connection Graph construction in Escape Analysis
src/share/vm/opto/c2_globals.hpp
VerifyDUIteratorsOpenJDK6boolc2truenotproduct
Verify the safety of all iterations of Bi-directional Edges
src/share/vm/opto/c2_globals.hpp
VerifyDataPointerOpenJDK6boolruntimetrueInDebugdevelop
Verify the method data pointer during interpreter profiling
src/share/vm/runtime/globals.hpp
VerifyDependenciesOpenJDK6boolruntimetrueInDebugdevelop
Exercise and verify the compilation dependency mechanism
src/share/vm/runtime/globals.hpp
VerifyDuringGCOpenJDK6boolruntimefalsediagnostic
Verify memory system during GC (between phases)
src/share/vm/runtime/globals.hpp
VerifyDuringStartupOpenJDK7boolruntimefalsediagnostic
Verify memory system before executing any Java code 
during VM initialization
src/share/vm/runtime/globals.hpp
VerifyFPUOpenJDK6boolruntimefalsedevelop
Verify FPU state (check for NaN's, etc.)
src/share/vm/runtime/globals.hpp
VerifyGCLevelOpenJDK6intxruntime0
range(0, 1)
diagnostic
Generation level at which to start +VerifyBefore/AfterGC
src/share/vm/runtime/globals.hpp
VerifyGCStartAtOpenJDK6uintxruntime0
range(0, max_uintx)
diagnostic
GC invoke count where +VerifyBefore/AfterGC kicks in
src/share/vm/runtime/globals.hpp
VerifyGraphEdgesOpenJDK6boolc2falsenotproduct
Verify Bi-directional Edges
src/share/vm/opto/c2_globals.hpp
VerifyHashTableKeysOpenJDK6boolc2truenotproduct
Verify the immutability of keys in the VN hash tables
src/share/vm/opto/c2_globals.hpp
VerifyIdealNodeCountOpenJDK7boolc2falsenotproduct
Verify that tracked dead ideal node count is accurate
src/share/vm/opto/c2_globals.hpp
VerifyInterpreterStackTopOpenJDK9boolarmfalsedevelop
Verify interpreter stack top at every stack expansion (AArch64 only)
src/cpu/arm/vm/globals_arm.hpp
VerifyIterativeGVNOpenJDK6boolc2falsedevelop
Verify Def-Use modifications during sparse Iterative Global 
Value Numbering
src/share/vm/opto/c2_globals.hpp
VerifyJNIEnvThreadOpenJDK6boolruntimefalsenotproduct
Verify JNIEnv.thread == Thread::current() when entering VM 
from JNI
src/share/vm/runtime/globals.hpp
VerifyJNIFieldsOpenJDK6boolruntimetrueInDebugdevelop
Verify jfieldIDs for instance fields
src/share/vm/runtime/globals.hpp
VerifyLastFrameOpenJDK6boolruntimefalsenotproduct
Verify oops on last frame on entry to VM
src/share/vm/runtime/globals.hpp
VerifyLoopOptimizationsOpenJDK6boolc2falsenotproduct
verify major loop optimizations
src/share/vm/opto/c2_globals.hpp
VerifyMergedCPBytecodesOpenJDK6Obsoleted in JDK16
Expired in JDK17
boolruntimetrueproduct
Verify bytecodes after RedefineClasses constant pool merging
src/share/vm/runtime/globals.hpp
VerifyMethodHandlesOpenJDK6boolruntimetrueInDebugdiagnostic
perform extra checks when constructing method handles
src/share/vm/runtime/globals.hpp
VerifyObjectStartArrayOpenJDK6boolruntimetruediagnostic
Verify GC object start array if verify before/after
src/share/vm/runtime/globals.hpp
VerifyOopsOpenJDK6boolruntimefalsedevelop
Do plausibility checks for oops
src/share/vm/runtime/globals.hpp
VerifyOptoOopOffsetsOpenJDK6boolc2falsenotproduct
Check types of base addresses in field references
src/share/vm/opto/c2_globals.hpp
VerifyOptoOpenJDK6boolc2falsenotproduct
Apply more time consuming verification during compilation
src/share/vm/opto/c2_globals.hpp
VerifyRegisterAllocatorOpenJDK6boolc2falsenotproduct
Verify Register Allocator
src/share/vm/opto/c2_globals.hpp
VerifyRememberedSetsOpenJDK6boolruntimefalsediagnostic
Verify GC remembered sets
src/share/vm/runtime/globals.hpp
VerifySharedSpacesOpenJDK8boolruntimefalseproduct
Verify shared spaces (false for default archive, true for 
archive specified by -XX:SharedArchiveFile)
src/share/vm/runtime/globals.hpp
VerifyStackAtCallsOpenJDK6boolruntimefalsedevelop
Verify that the stack pointer is unchanged after calls
src/share/vm/runtime/globals.hpp
VerifyStackOpenJDK6boolruntimefalsedevelop
Verify stack of each thread when it is entering a runtime call
src/share/vm/runtime/globals.hpp
VerifyStringTableAtExitOpenJDK8boolruntimefalsediagnostic
verify StringTable contents at exit
src/share/vm/runtime/globals.hpp
VerifySubSetOpenJDK8ccstrlistruntime
diagnostic
Memory sub-systems to verify when Verify*GC flag(s) 
are enabled. One or more sub-systems can be specified 
in a comma separated string. Sub-systems are: 
threads, heap, symbol_table, string_table, codecache, 
dictionary, classloader_data_graph, metaspace, jni_handles, 
codecache_oops
src/share/vm/runtime/globals.hpp
VerifyThreadOpenJDK6boolruntimefalsedevelop
Watch the thread register for corruption (SPARC only)
src/share/vm/runtime/globals.hpp
WalkStackALotOpenJDK6boolruntimefalsenotproduct
Trace stack (no print) at every exit from the runtime system
src/share/vm/runtime/globals.hpp
WarmCallMaxSizeOpenJDK6intxc2999999
range(0, max_intx)
develop
size of the largest inlinable method
src/share/vm/opto/c2_globals.hpp
WarmCallMaxWorkOpenJDK6intxc2999999
range(0, max_intx)
develop
execution time of the largest inlinable method
src/share/vm/opto/c2_globals.hpp
WarmCallMinCountOpenJDK6intxc2-1
range(-1, max_intx)
develop
number of calls (per method invocation) to enable inlining
src/share/vm/opto/c2_globals.hpp
WarmCallMinProfitOpenJDK6intxc2-1
range(-1, max_intx)
develop
number of calls (per method invocation) to enable inlining
src/share/vm/opto/c2_globals.hpp
WarnOnStalledSpinLockOpenJDK6uintxruntime0notproduct
Print warnings for stalled SpinLocks
src/share/vm/runtime/globals.hpp
WhiteBoxAPIOpenJDK7boolruntimefalsediagnostic
Enable internal testing APIs
src/share/vm/runtime/globals.hpp
WizardModeOpenJDK6boolruntimefalsedevelop
Print much more debugging information
src/share/vm/runtime/globals.hpp
WorkStealingHardSpinsOpenJDK6uintxruntime4096experimental
Number of iterations in a spin loop between checks on 
time out of hard spin
src/share/vm/runtime/globals.hpp
WorkStealingSleepMillisOpenJDK6uintxruntime1experimental
Sleep time when sleep is used for yields
src/share/vm/runtime/globals.hpp
WorkStealingSpinToYieldRatioOpenJDK6uintxruntime10experimental
Ratio of hard spins to calls to yield
src/share/vm/runtime/globals.hpp
WorkStealingYieldsBeforeSleepOpenJDK6uintxruntime5000experimental
Number of yields before a sleep is done during work stealing
src/share/vm/runtime/globals.hpp
YoungGenerationSizeIncrementOpenJDK6uintxruntime20
range(0, 100)
product
Adaptive size percentage change in young generation
src/share/vm/runtime/globals.hpp
YoungGenerationSizeSupplementDecayOpenJDK6uintxruntime8
range(1, max_uintx)
product
Decay factor to YoungedGenerationSizeSupplement
src/share/vm/runtime/globals.hpp
YoungGenerationSizeSupplementOpenJDK6uintxruntime80
range(0, 100)
product
Supplement to YoungedGenerationSizeIncrement used at startup
src/share/vm/runtime/globals.hpp
YoungPLABSizeOpenJDK6size_truntime4096product
Size of young gen promotion LAB's (in HeapWords)
src/share/vm/runtime/globals.hpp
ZapEmptyStackFieldsOpenJDK9bools390falsedevelop
Write 0x0101... to empty stack
 fields. Use this to ease stack debugging.
src/cpu/s390/vm/globals_s390.hpp
ZapFillerObjectsOpenJDK6boolruntimetrueInDebugdevelop
Zap filler objects with 0xDEAFBABE
src/share/vm/runtime/globals.hpp
ZapHighNonSignificantBitsOpenJDK9boolarmfalsedevelop
Zap high non-significant bits of values (AArch64 only)
src/cpu/arm/vm/globals_arm.hpp
ZapJNIHandleAreaOpenJDK6boolruntimetrueInDebugdevelop
Zap freed JNI handle space with 0xFEFEFEFE
src/share/vm/runtime/globals.hpp
ZapMemoryOpenJDK7boolppcfalseproduct
Write 0x0101... to empty memory.
 Use this to ease debugging.
src/cpu/ppc/vm/globals_ppc.hpp
ZapResourceAreaOpenJDK6boolruntimetrueInDebugdevelop
Zap freed resource/arena space with 0xABABABAB
src/share/vm/runtime/globals.hpp
ZapStackSegmentsOpenJDK6boolruntimetrueInDebugnotproduct
Zap allocated/freed stack segments with 0xFADFADED
src/share/vm/runtime/globals.hpp
ZapUnusedHeapAreaOpenJDK6boolruntimetrueInDebugdevelop
Zap unused heap space with 0xBAADBABE
src/share/vm/runtime/globals.hpp
ZapVMHandleAreaOpenJDK6boolruntimetrueInDebugnotproduct
Zap freed VM handle space with 0xBCBCBCBC
src/share/vm/runtime/globals.hpp
ZeroTLABOpenJDK6boolruntimefalseproduct
Zero out the newly created TLAB
src/share/vm/runtime/globals.hpp
ZombieALotIntervalOpenJDK6intxruntime5notproduct
Number of exits until ZombieALot kicks in
src/share/vm/runtime/globals.hpp
ZombieALotOpenJDK6boolruntimefalsenotproduct
Create zombies (non-entrant) at exit from the runtime system
src/share/vm/runtime/globals.hpp
batchOpenJDK6
disable background compilation
Xusage.txt
bootclasspath/aOpenJDK6<dirs/jars>
append to end of bootstrap class path
Xusage.txt
bootclasspath/pOpenJDK6<dirs/jars>
prepend in front of bootstrap class path
Xusage.txt
bootclasspathOpenJDK6<dirs/jars>
set search path for bootstrap classes and resources
Xusage.txt
check:jniOpenJDK6
perform additional checks for JNI functions
Xusage.txt
futureOpenJDK6
enable strictest checks, anticipating future default
Xusage.txt
hashCodeOpenJDK6intxruntime5experimental
(Unstable) select hashCode generation algorithm
src/share/vm/runtime/globals.hpp
intOpenJDK6
interpreted mode execution only
Xusage.txt
logOpenJDK9<opts>
control JVM logging, use -Xlog:help for details
Xusage.txt
mixedOpenJDK6
mixed mode execution (default)
Xusage.txt
msOpenJDK6<size>
set initial Java heap size
Xusage.txt
mxOpenJDK6<size>
set maximum Java heap size
Xusage.txt
noclassgcOpenJDK6
disable class garbage collection
Xusage.txt
profOpenJDK6
output cpu profiling data (deprecated)
Xusage.txt
rsOpenJDK6
reduce use of OS signals by Java/VM (see documentation)
Xusage.txt
share:autoOpenJDK6
use shared class data if possible (default)
Xusage.txt
share:offOpenJDK6
do not attempt to use shared class data
Xusage.txt
share:onOpenJDK6
require using shared class data, otherwise fail.

The -X options are non-standard and subject to change without notice.
Xusage.txt
ssOpenJDK6<size>
set java thread stack size
Xusage.txt