VM Options Explorer - SapMachine

Hey Reader! If these notes float your boat you'll find more great JVM info in this book I co-wrote! Optimizing Java: Practical techniques for improving JVM application performance
NameSinceDeprecatedTypeOSCPUComponentDefaultAvailabilityDescriptionDefined in
SinceDeprecatedTypeOSCPUComponentAvailability
AOTLibraryccstrlistruntimeNULLproductEXPERIMENTALshare/runtime/globals.hpp
AVX3Thresholdintx864096
range(0, max_jint)
productDIAGNOSTICcpu/x86/globals_x86.hpp
AbortVMOnCompilationFailureboolruntimefalseproductDIAGNOSTICshare/runtime/globals.hpp
AbortVMOnExceptionMessageccstrruntimeNULLproductDIAGNOSTICshare/runtime/globals.hpp
AbortVMOnExceptionccstrruntimeNULLproductDIAGNOSTICshare/runtime/globals.hpp
AbortVMOnSafepointTimeoutboolruntimefalseproductDIAGNOSTICshare/runtime/globals.hpp
AbortVMOnVMOperationTimeoutDelayintxruntime1000
range(0, max_intx)
productDIAGNOSTICshare/runtime/globals.hpp
AbortVMOnVMOperationTimeoutboolruntimefalseproductDIAGNOSTICshare/runtime/globals.hpp
ActiveProcessorCountintgc-1productSpecify the CPU count the VM should use and report as activeshare/gc/shared/gc_globals.hpp
AdaptiveSizeDecrementScaleFactoruintxgc4
range(1, max_uintx)
productAdaptive size scale down factor for shrinkingshare/gc/shared/gc_globals.hpp
AdaptiveSizeMajorGCDecayTimeScaleuintxgc10
range(0, max_uintx)
productTime scale over which major costs decayshare/gc/shared/gc_globals.hpp
AdaptiveSizePolicyCollectionCostMarginuintxgc50
range(0, 100)
productIf collection costs are within margin, reduce both by full deltashare/gc/shared/gc_globals.hpp
AdaptiveSizePolicyInitializingStepsuintxgc20
range(0, max_uintx)
productNumber of steps where heuristics is used before data is usedshare/gc/shared/gc_globals.hpp
AdaptiveSizePolicyOutputIntervaluintxgc0
range(0, max_uintx)
productCollection interval for printing information; zero means nevershare/gc/shared/gc_globals.hpp
AdaptiveSizePolicyReadyThresholduintxgc5developNumber of collections before the adaptive sizing is startedshare/gc/shared/gc_globals.hpp
AdaptiveSizePolicyWeightuintxgc10
range(0, 100)
productWeight given to exponential resizing, between 0 and 100share/gc/shared/gc_globals.hpp
AdaptiveSizeThroughPutPolicyuintxgc0
range(0, 1)
productPolicy for changing generation size for throughput goalsshare/gc/shared/gc_globals.hpp
AdaptiveTimeWeightuintxgc25
range(0, 100)
productWeight given to time in adaptive policy, between 0 and 100share/gc/shared/gc_globals.hpp
AdjustStackSizeForTLSboollinuxfalseproductIncrease the thread stack size to include space for glibc static thread-local storage (TLS) if trueos/linux/globals_linux.hpp
AggressiveHeapboolgcfalseproductOptimize heap options for long-running memory intensive appsshare/gc/shared/gc_globals.hpp
AggressiveUnboxingboolc2trueproductDIAGNOSTICshare/opto/c2_globals.hpp
AliasLevelintxc23
range(0, 3)
product0 for no aliasing, 1 for oop/field/static/array split,
2 for class split, 3 for unique instances
share/opto/c2_globals.hpp
AlignVectorboolc2trueproductPerform vector store/load alignment in loopshare/opto/c2_globals.hpp
AllocateHeapAtccstrruntimeNULLproductPath to the directoy where a temporary file will be created to use as the backing store for Java Heap.share/runtime/globals.hpp
AllocateInstancePrefetchLinesintxruntime1
range(1, 64)
productNumber of lines to prefetch ahead of instance allocation pointershare/runtime/globals.hpp
AllocateOldGenAtccstrruntimeNULLproductEXPERIMENTALshare/runtime/globals.hpp
AllocatePrefetchDistanceintxruntime-1productDistance to prefetch ahead of allocation pointer. -1: use system-specific value (automatically determinedshare/runtime/globals.hpp
AllocatePrefetchInstrintxruntime0productSelect instruction to prefetch ahead of allocation pointershare/runtime/globals.hpp
AllocatePrefetchLinesintxruntime3
range(1, 64)
productNumber of lines to prefetch ahead of array allocation pointershare/runtime/globals.hpp
AllocatePrefetchStepSizeintxruntime16
range(1, 512)
productStep size in bytes of sequential prefetch instructionsshare/runtime/globals.hpp
AllocatePrefetchStyleintxruntime1
range(0, 3)
product0 = 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
share/runtime/globals.hpp
AllowArchivingWithJavaAgentboolruntimefalseproductDIAGNOSTICshare/runtime/globals.hpp
AllowExtshmboolaixfalseproductAllow VM to run with EXTSHM=ON.os/aix/globals_aix.hpp
AllowParallelDefineClassboolruntimefalseproductAllow parallel defineClass requests for class loaders registering as parallel capableshare/runtime/globals.hpp
AllowRedefinitionToAddDeleteMethodsDeprecated in JDK13boolruntimefalseproduct(Deprecated) Allow redefinition to add and delete private static or final methods for compatibility with old releasesshare/runtime/globals.hpp
AllowUserSignalHandlersboolruntimefalseproductDo not complain if the application installs signal handlers (Unix only)share/runtime/globals.hpp
AllowVectorizeOnDemandboolc2trueproductGlobally supress vectorization set in VectorizeMethodshare/opto/c2_globals.hpp
AlwaysActAsServerClassMachineboolgcfalseproductAlways act like a server-class machineshare/gc/shared/gc_globals.hpp
AlwaysAtomicAccessesboolruntimefalseproductEXPERIMENTALshare/runtime/globals.hpp
AlwaysCompileLoopMethodsboolruntimefalseproductWhen using recompilation, never interpret methods containing loopsshare/runtime/globals.hpp
AlwaysIncrementalInlineboolc2falsedevelopdo all inlining incrementallyshare/opto/c2_globals.hpp
AlwaysLockClassLoaderboolruntimefalseproductRequire the VM to acquire the class loader lock before calling loadClass() even for class loaders registering as parallel capableshare/runtime/globals.hpp
AlwaysPreTouchboolgcfalseproductForce all freshly committed pages to be pre-touchedshare/gc/shared/gc_globals.hpp
AlwaysRestoreFPUboolruntimefalseproductRestore the FPU control word after every JNI call (expensive)share/runtime/globals.hpp
AlwaysSafeConstructorsboolruntimefalseproductEXPERIMENTALshare/runtime/globals.hpp
AlwaysTenureboolgcfalseproductAlways tenure objects in eden (ParallelGC only)share/gc/shared/gc_globals.hpp
ArchiveClassesAtExitccstrruntimeNULLproductThe path and name of the dynamic archive fileshare/runtime/globals.hpp
ArchiveRelocationModeintxruntime0
range(0, 2)
productDIAGNOSTICshare/runtime/globals.hpp
ArrayAllocatorMallocLimitsize_truntime(size_t)-1productEXPERIMENTALshare/runtime/globals.hpp
ArrayCopyLoadStoreMaxElemintxc28
range(0, max_intx)
productMaximum number of arraycopy elements inlined as a sequence ofloads/storesshare/opto/c2_globals.hpp
AssertOnSuspendWaitFailureboolruntimefalseproductAssert/Guarantee on external suspend wait failureshare/runtime/globals.hpp
AssertRangeCheckEliminationboolc1falsedevelopAssert Range Check Eliminationshare/c1/c1_globals.hpp
AsyncDeflationIntervalintxruntime250
range(0, max_jint)
productDIAGNOSTICshare/runtime/globals.hpp
AutoBoxCacheMaxintxc2128
range(0, max_jint)
productSets max value cached by the java.lang.Integer autobox cacheshare/opto/c2_globals.hpp
AvoidUnalignedAccessesboolaarch64falseproductAvoid generating unaligned memory accessescpu/aarch64/globals_aarch64.hpp
BCEATraceLevelintxruntime0
range(0, 3)
productHow much tracing to do of bytecode escape analysis estimates (0-3)share/runtime/globals.hpp
BackgroundCompilationboolaarch64truedefine_pd_globalcpu/aarch64/c1_globals_aarch64.hpp
BackgroundCompilationboolarmtruedefine_pd_globalcpu/arm/c2_globals_arm.hpp
BackgroundCompilationboolcompilerfalsedefine_pd_globalshare/compiler/compiler_globals.hpp
BackgroundCompilationboolruntimeproduct_pdA thread requesting compilation is not blocked during compilationshare/runtime/globals.hpp
BackgroundCompilationboolppctruedefine_pd_globalcpu/ppc/c1_globals_ppc.hpp
BackgroundCompilationbools390truedefine_pd_globalcpu/s390/c2_globals_s390.hpp
BackgroundCompilationboolx86truedefine_pd_globalcpu/x86/c1_globals_x86.hpp
BailoutAfterHIRboolc1falsedevelopbailout of compilation after building of HIRshare/c1/c1_globals.hpp
BailoutAfterLIRboolc1falsedevelopbailout of compilation after building of LIRshare/c1/c1_globals.hpp
BailoutOnExceptionHandlersboolc1falsedevelopbailout of compilation for methods with exception handlersshare/c1/c1_globals.hpp
BailoutToInterpreterForThrowsboolc2falsedevelopCompiled methods which throws/catches exceptions will be deopt and intp.share/opto/c2_globals.hpp
BaseFootPrintEstimatesize_tgc256*M
range(0, max_uintx)
productEstimate of footprint other than Java Heapshare/gc/shared/gc_globals.hpp
BciProfileWidthintxruntime2developNumber of return bci's to record in ret profileshare/runtime/globals.hpp
BiasedLockingBulkRebiasThresholdDeprecated in JDK15
Obsoleted in JDK16
Expired in JDK17
intxruntime20
range(0, max_intx)
product(Deprecated) Threshold of number of revocations per type to try to rebias all objects in the heap of that typeshare/runtime/globals.hpp
BiasedLockingBulkRevokeThresholdDeprecated in JDK15
Obsoleted in JDK16
Expired in JDK17
intxruntime40
range(0, max_intx)
product(Deprecated) Threshold of number of revocations per type to permanently revoke biases of all objects in the heap of that typeshare/runtime/globals.hpp
BiasedLockingDecayTimeDeprecated in JDK15
Obsoleted in JDK16
Expired in JDK17
intxruntime25000
range(500, max_intx)
product(Deprecated) Decay time (in milliseconds) to re-enable bulk rebiasing of a type after previous bulk rebiasshare/runtime/globals.hpp
BiasedLockingStartupDelayDeprecated in JDK15
Obsoleted in JDK16
Expired in JDK17
intxruntime0
range(0, (intx)(max_jint-(max_jint%PeriodicTask::interval_gran)))
product(Deprecated) Number of milliseconds to wait before enabling biased lockingshare/runtime/globals.hpp
BinarySwitchThresholdintxruntime5developMinimal number of lookupswitch entries for rewriting to binary switchshare/runtime/globals.hpp
BlockLayoutByFrequencyboolc2trueproductUse edge frequencies to drive block orderingshare/opto/c2_globals.hpp
BlockLayoutMinDiamondPercentageintxc220
range(0, 100)
productMiniumum %% of a successor (predecessor) for which block layout a will allow a fork (join) in a single chainshare/opto/c2_globals.hpp
BlockLayoutRotateLoopsboolc2trueproductAllow back branches to be fall throughs in the block layoutshare/opto/c2_globals.hpp
BlockZeroingLowLimitintxaarch64256
range(1, max_jint)
productMinimum size in bytes when block zeroing will be usedcpu/aarch64/globals_aarch64.hpp
BootstrapJVMCIbooljvmcifalseproductEXPERIMENTALshare/jvmci/jvmci_globals.hpp
BreakAtNodeintxc20notproductBreak at construction of this Node (either _idx or _debug_idx)share/opto/c2_globals.hpp
BreakAtWarningboolruntimefalsedevelopExecute breakpoint upon encountering VM warningshare/runtime/globals.hpp
BytecodeVerificationLocalboolruntimefalseproductDIAGNOSTICshare/runtime/globals.hpp
BytecodeVerificationRemoteboolruntimetrueproductDIAGNOSTICshare/runtime/globals.hpp
C1Breakpointboolc1falsedevelopSets a breakpoint at entry of each compiled methodshare/c1/c1_globals.hpp
C1InlineStackLimitintxc110
range(0, max_jint)
productinlining only allowed for methods which don't exceed this number of expression stack and local slotsshare/c1/c1_globals.hpp
C1MaxInlineLevelintxc19
range(0, max_jint)
productThe maximum number of nested calls that are inlined by C1share/c1/c1_globals.hpp
C1MaxInlineSizeintxc135
range(0, max_jint)
productThe maximum bytecode size of a method to be inlined by C1share/c1/c1_globals.hpp
C1MaxRecursiveInlineLevelintxc11
range(0, max_jint)
productmaximum number of nested recursive calls that are inlined by C1share/c1/c1_globals.hpp
C1MaxTrivialSizeintxc16
range(0, max_jint)
productThe maximum bytecode size of a trivial method to be inlined by C1share/c1/c1_globals.hpp
C1OptimizeVirtualCallProfilingboolc1trueproductUse CHA and exact type results at call sites when updating MDOsshare/c1/c1_globals.hpp
C1ProfileBranchesboolc1trueproductProfile branches when generating code for updating MDOsshare/c1/c1_globals.hpp
C1ProfileCallsboolc1trueproductProfile calls when generating code for updating MDOsshare/c1/c1_globals.hpp
C1ProfileCheckcastsboolc1trueproductProfile checkcasts when generating code for updating MDOsshare/c1/c1_globals.hpp
C1ProfileInlinedCallsboolc1trueproductProfile inlined calls when generating code for updating MDOsshare/c1/c1_globals.hpp
C1ProfileVirtualCallsboolc1trueproductProfile virtual calls when generating code for updating MDOsshare/c1/c1_globals.hpp
C1UpdateMethodDataboolc1trueInTieredproductUpdate MethodData*s in Tier1-generated codeshare/c1/c1_globals.hpp
CIBreakAtOSRintxruntime-1developThe id of osr compilation to break atshare/runtime/globals.hpp
CIBreakAtintxruntime-1developThe id of compilation to break atshare/runtime/globals.hpp
CICompileNativesboolruntimetruedevelopcompile native methods if supported by the compilershare/runtime/globals.hpp
CICompileOSRboolaarch64truedefine_pd_globalcpu/aarch64/c1_globals_aarch64.hpp
CICompileOSRboolarmtruedefine_pd_globalcpu/arm/c2_globals_arm.hpp
CICompileOSRboolcompilerfalsedefine_pd_globalshare/compiler/compiler_globals.hpp
CICompileOSRboolruntimedevelop_pdcompile on stack replacement methods if supported by the compilershare/runtime/globals.hpp
CICompileOSRboolppctruedefine_pd_globalcpu/ppc/c1_globals_ppc.hpp
CICompileOSRbools390truedefine_pd_globalcpu/s390/c2_globals_s390.hpp
CICompileOSRboolx86truedefine_pd_globalcpu/x86/c1_globals_x86.hpp
CICompilerCountPerCPUboolruntimefalseproduct1 compiler thread for log(N CPUs)share/runtime/globals.hpp
CICompilerCountintxruntimeCI_COMPILER_COUNT
range(0, max_jint)
productNumber of compiler threads to runshare/runtime/globals.hpp
CICountOSRboolruntimefalsedevelopuse a separate counter when assigning ids to osr compilationsshare/runtime/globals.hpp
CICrashAtintxruntime-1notproductid of compilation to trigger assert in compiler thread for the purpose of testing, e.g. generation of replay datashare/runtime/globals.hpp
CIObjectFactoryVerifyboolruntimefalsenotproductenable potentially expensive verification in ciObjectFactoryshare/runtime/globals.hpp
CIPrintCompileQueueboolruntimefalseproductDIAGNOSTICshare/runtime/globals.hpp
CIPrintCompilerNameboolruntimefalsedevelopwhen CIPrint is active, print the name of the active compilershare/runtime/globals.hpp
CIPrintMethodCodesboolruntimefalsedevelopprint method bytecodes of the compiled codeshare/runtime/globals.hpp
CIPrintRequestsboolruntimefalsedevelopdisplay every request for compilationshare/runtime/globals.hpp
CIPrintTypeFlowboolruntimefalsedevelopprint the results of ciTypeFlow analysisshare/runtime/globals.hpp
CIStartOSRintxruntime0developThe id of the first osr compilation to permit (CICountOSR must be on)share/runtime/globals.hpp
CIStartintxruntime0developThe id of the first compilation to permitshare/runtime/globals.hpp
CIStopOSRintxruntimemax_jintdevelopThe id of the last osr compilation to permit (CICountOSR must be on)share/runtime/globals.hpp
CIStopintxruntimemax_jintdevelopThe id of the last compilation to permitshare/runtime/globals.hpp
CITimeEachboolruntimefalsedevelopdisplay timing information after each successful compilationshare/runtime/globals.hpp
CITimeVerboseboolruntimefalsedevelopbe more verbose in compilation timingsshare/runtime/globals.hpp
CITimeboolruntimefalseproductcollect timing information for compilationshare/runtime/globals.hpp
CITraceTypeFlowboolruntimefalsedevelopdetailed per-bytecode tracing of ciTypeFlow analysisshare/runtime/globals.hpp
CSEArrayLengthboolaarch64falsedefine_pd_globalcpu/aarch64/c1_globals_aarch64.hpp
CSEArrayLengthboolarmtruedefine_pd_globalcpu/arm/c1_globals_arm.hpp
CSEArrayLengthboolc1develop_pdCreate separate nodes for length in array accessesshare/c1/c1_globals.hpp
CSEArrayLengthboolppctruedefine_pd_globalcpu/ppc/c1_globals_ppc.hpp
CSEArrayLengthbools390truedefine_pd_globalcpu/s390/c1_globals_s390.hpp
CSEArrayLengthboolx86falsedefine_pd_globalcpu/x86/c1_globals_x86.hpp
CalculateClassFingerprintboolruntimefalseproductCalculate class fingerprintshare/runtime/globals.hpp
CanonicalizeNodesboolc1truedevelopCanonicalize graph nodesshare/c1/c1_globals.hpp
CheckCompressedOopsboolruntimetruenotproductGenerate checks in encoding/decoding code in debug VMshare/runtime/globals.hpp
CheckIntrinsicsboolruntimetrueproductDIAGNOSTICshare/runtime/globals.hpp
CheckJNICallsboolruntimefalseproductVerify all arguments to JNI callsshare/runtime/globals.hpp
CheckMemoryInitializationboolruntimefalsenotproductCheck memory initializationshare/runtime/globals.hpp
CheckUnhandledOopsboolruntimefalsedevelopCheck for unhandled oops in VM codeshare/runtime/globals.hpp
CheckZapUnusedHeapAreaboolruntimefalsedevelopCheck zapping of unused heap spaceshare/runtime/globals.hpp
ClassUnloadingWithConcurrentMarkboolruntimetrueproductDo unloading of classes with a concurrent marking cycleshare/runtime/globals.hpp
ClassUnloadingboolruntimetrueproductDo unloading of classesshare/runtime/globals.hpp
CleanChunkPoolAsyncboolruntimetruedevelopClean the chunk pool asynchronouslyshare/runtime/globals.hpp
ClipInliningboolruntimetrueproductClip inlining if aggregate method exceeds DesiredMethodLimitshare/runtime/globals.hpp
CodeCacheExpansionSizeintxaarch6432*Kdefine_pd_globalcpu/aarch64/c1_globals_aarch64.hpp
CodeCacheExpansionSizesize_tarm32*Kdefine_pd_globalcpu/arm/c2_globals_arm.hpp
CodeCacheExpansionSizeuintxcompiler32*Kdefine_pd_globalshare/compiler/compiler_globals.hpp
CodeCacheExpansionSizeuintxruntimeproduct_pdCode cache expansion size (in bytes)share/runtime/globals.hpp
CodeCacheExpansionSizeuintxppc32*Kdefine_pd_globalcpu/ppc/c1_globals_ppc.hpp
CodeCacheExpansionSizeuintxs39064*Kdefine_pd_globalcpu/s390/c2_globals_s390.hpp
CodeCacheExpansionSizeuintxx8632*Kdefine_pd_globalcpu/x86/c1_globals_x86.hpp
CodeCacheMinBlockLengthuintxaarch641define_pd_globalcpu/aarch64/c1_globals_aarch64.hpp
CodeCacheMinBlockLengthuintxarm6define_pd_globalcpu/arm/c2_globals_arm.hpp
CodeCacheMinBlockLengthuintxcompiler1define_pd_globalshare/compiler/compiler_globals.hpp
CodeCacheMinBlockLengthuintxruntimeproduct_pdDIAGNOSTICshare/runtime/globals.hpp
CodeCacheMinBlockLengthuintxppc1define_pd_globalcpu/ppc/c1_globals_ppc.hpp
CodeCacheMinBlockLengthuintxs3904define_pd_globalcpu/s390/c2_globals_s390.hpp
CodeCacheMinBlockLengthuintxx861define_pd_globalcpu/x86/c1_globals_x86.hpp
CodeCacheMinimumUseSpaceuintxaarch64400*Kdefine_pd_globalcpu/aarch64/c1_globals_aarch64.hpp
CodeCacheMinimumUseSpacesize_tarm400*Kdefine_pd_globalcpu/arm/c2_globals_arm.hpp
CodeCacheMinimumUseSpaceuintxcompiler200*Kdefine_pd_globalshare/compiler/compiler_globals.hpp
CodeCacheMinimumUseSpaceuintxruntimedevelop_pdMinimum code cache size (in bytes) required to start VM.share/runtime/globals.hpp
CodeCacheMinimumUseSpaceuintxppc400*Kdefine_pd_globalcpu/ppc/c1_globals_ppc.hpp
CodeCacheMinimumUseSpaceuintxs390400*Kdefine_pd_globalcpu/s390/c2_globals_s390.hpp
CodeCacheMinimumUseSpaceuintxx86400*Kdefine_pd_globalcpu/x86/c1_globals_x86.hpp
CodeCacheSegmentSizeuintxaarch6464 TIERED_ONLY(+64)define_pd_global// Tiered compilation has large code-entry alignment.cpu/aarch64/globals_aarch64.hpp
CodeCacheSegmentSizeuintxarm64 TIERED_ONLY(+64)define_pd_global// Tiered compilation has large code-entry alignment.cpu/arm/globals_arm.hpp
CodeCacheSegmentSizeuintxruntimedevelop_pdCode cache segment size (in bytes) - smallest unit of allocationshare/runtime/globals.hpp
CodeCacheSegmentSizeuintxppc128define_pd_globalcpu/ppc/globals_ppc.hpp
CodeCacheSegmentSizeuintxs390256define_pd_globalcpu/s390/globals_s390.hpp
CodeCacheSegmentSizeuintxx8664 TIERED_ONLY(+64)define_pd_global// Tiered compilation has large code-entry alignment.cpu/x86/globals_x86.hpp
CodeCacheSegmentSizeuintxzero64 TIERED_ONLY(+64)define_pd_global// Tiered compilation has large code-entry alignment.cpu/zero/globals_zero.hpp
CodeEntryAlignmentintxaarch6464define_pd_globalcpu/aarch64/globals_aarch64.hpp
CodeEntryAlignmentintxarm16define_pd_globalcpu/arm/globals_arm.hpp
CodeEntryAlignmentintxruntimedevelop_pdCode entry alignment for generated code (in bytes)share/runtime/globals.hpp
CodeEntryAlignmentintxppc128define_pd_globalcpu/ppc/globals_ppc.hpp
CodeEntryAlignmentintxs39064define_pd_globalcpu/s390/globals_s390.hpp
CodeEntryAlignmentintxx8616define_pd_globalcpu/x86/globals_x86.hpp
CodeEntryAlignmentintxzero32define_pd_globalcpu/zero/globals_zero.hpp
CollectIndexSetStatisticsboolruntimefalsenotproductCollect information about IndexSetsshare/runtime/globals.hpp
CommentedAssemblyboolc1trueInDebugdevelopShow extra info in PrintNMethods outputshare/c1/c1_globals.hpp
CompactStringsboolaarch64truedefine_pd_globalcpu/aarch64/globals_aarch64.hpp
CompactStringsboolarmfalsedefine_pd_globalcpu/arm/globals_arm.hpp
CompactStringsboolruntimeproduct_pdEnable Strings to use single byte chars in backing storeshare/runtime/globals.hpp
CompactStringsboolppctruedefine_pd_globalcpu/ppc/globals_ppc.hpp
CompactStringsbools390truedefine_pd_globalcpu/s390/globals_s390.hpp
CompactStringsboolx86truedefine_pd_globalcpu/x86/globals_x86.hpp
CompactStringsboolzerofalsedefine_pd_globalcpu/zero/globals_zero.hpp
CompilationModeccstrruntimedefaultproductCompilation modes: default: normal tiered compilation; quick-only: C1-only mode; high-only: C2/JVMCI-only mode; high-only-quick-internal: C2/JVMCI-only mode, with JVMCI compiler compiled with C1.share/runtime/globals.hpp
CompileCommandFileccstrruntimeNULLproductRead compiler commands from this file [.hotspot_compiler]share/runtime/globals.hpp
CompileCommandccstrlistruntimePrepend to .hotspot_compiler; e.g. log,java/lang/String.productshare/runtime/globals.hpp
CompileOnlyccstrlistruntimeList of methods (pkg/class.name) to restrict compilation toproductshare/runtime/globals.hpp
CompileThresholdScalingdoubleruntime1.0
range(0.0, DBL_MAX)
productFactor 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.share/runtime/globals.hpp
CompileThresholdintxaarch641500define_pd_globalcpu/aarch64/c1_globals_aarch64.hpp
CompileThresholdintxarm10000define_pd_globalcpu/arm/c2_globals_arm.hpp
CompileThresholdintxcompiler0define_pd_globalshare/compiler/compiler_globals.hpp
CompileThresholdintxruntimeproduct_pdnumber of interpreted method invocations before (re-)compilingshare/runtime/globals.hpp
CompileThresholdintxppc1000define_pd_globalcpu/ppc/c1_globals_ppc.hpp
CompileThresholdintxs39010000define_pd_globalcpu/s390/c2_globals_s390.hpp
CompileThresholdintxx861500define_pd_globalcpu/x86/c1_globals_x86.hpp
CompilerDirectivesFileccstrruntimeNULLproductDIAGNOSTICshare/runtime/globals.hpp
CompilerDirectivesIgnoreCompileCommandsboolruntimefalseproductDIAGNOSTICshare/runtime/globals.hpp
CompilerDirectivesLimitintruntime50productDIAGNOSTICshare/runtime/globals.hpp
CompilerDirectivesPrintboolruntimefalseproductDIAGNOSTICshare/runtime/globals.hpp
CompilerThreadPriorityintxruntime-1
range(min_jint, max_jint)
productThe native priority at which compiler threads should run (-1 means no change)share/runtime/globals.hpp
CompilerThreadStackSizeintxaixppc4096define_pd_globalos_cpu/aix_ppc/globals_aix_ppc.hpp
CompilerThreadStackSizeintxbsdx86512define_pd_globalos_cpu/bsd_x86/globals_bsd_x86.hpp
CompilerThreadStackSizeintxbsdzero0define_pd_globalos_cpu/bsd_zero/globals_bsd_zero.hpp
CompilerThreadStackSizeintxlinuxaarch642048define_pd_globalos_cpu/linux_aarch64/globals_linux_aarch64.hpp
CompilerThreadStackSizeintxlinuxarm512define_pd_globalos_cpu/linux_arm/globals_linux_arm.hpp
CompilerThreadStackSizeintxlinuxppc4096define_pd_globalos_cpu/linux_ppc/globals_linux_ppc.hpp
CompilerThreadStackSizeintxlinuxs3902048define_pd_globalos_cpu/linux_s390/globals_linux_s390.hpp
CompilerThreadStackSizeintxlinuxx86512define_pd_globalos_cpu/linux_x86/globals_linux_x86.hpp
CompilerThreadStackSizeintxlinuxzero0define_pd_globalos_cpu/linux_zero/globals_linux_zero.hpp
CompilerThreadStackSizeintxruntimeproduct_pdCompiler Thread Stack Size (in Kbytes)share/runtime/globals.hpp
CompilerThreadStackSizeintxwindowsaarch640define_pd_globalos_cpu/windows_aarch64/globals_windows_aarch64.hpp
CompilerThreadStackSizeintxwindowsx860define_pd_globalos_cpu/windows_x86/globals_windows_x86.hpp
CompressedClassSpaceSizesize_truntime1*G
range(1*M, 3*G)
productMaximum size of class area in Metaspace when compressed class pointers are usedshare/runtime/globals.hpp
ComputeExactFPURegisterUsageboolc1truedevelopCompute additional live set for fpu registers to simplify fpu stack merge (Intel only)share/c1/c1_globals.hpp
ConcGCThreadsuintgc0productNumber of threads concurrent gc will useshare/gc/shared/gc_globals.hpp
ConcGCYieldTimeoutintxgc0
range(0, max_intx)
developIf non-zero, assert that GC threads yield within this number of millisecondsshare/gc/shared/gc_globals.hpp
ConditionalMoveLimitintxaarch643define_pd_globalcpu/aarch64/c2_globals_aarch64.hpp
ConditionalMoveLimitintxarm4define_pd_globalcpu/arm/c2_globals_arm.hpp
ConditionalMoveLimitintxc2product_pdLimit of ops to make speculative when using CMOVEshare/opto/c2_globals.hpp
ConditionalMoveLimitintxppc3define_pd_globalcpu/ppc/c2_globals_ppc.hpp
ConditionalMoveLimitintxs3904define_pd_globalcpu/s390/c2_globals_s390.hpp
ConditionalMoveLimitintxx863define_pd_globalcpu/x86/c2_globals_x86.hpp
ContendedPaddingWidthintxruntime128
range(0, 8192)
productHow many bytes to pad the fields/classes marked @Contended withshare/runtime/globals.hpp
ControlIntrinsicccstrlistruntimeDIAGNOSTICproductControl intrinsics using a list of +/- (internal) names, separated by commasshare/runtime/globals.hpp
ConvertCmpD2CmpFboolc2truedevelopConvert cmpD to cmpF when one input is constant in float rangeshare/opto/c2_globals.hpp
ConvertFloat2IntClippingboolc2truedevelopConvert float2int clipping idiom to integer clippingshare/opto/c2_globals.hpp
CountBytecodesboolruntimefalsedevelopCount number of bytecodes executedshare/runtime/globals.hpp
CountCompiledCallsboolruntimefalsedevelopCount method invocationsshare/runtime/globals.hpp
CountJNICallsboolruntimefalsedevelopCount jni method invocationsshare/runtime/globals.hpp
CountJVMCallsboolruntimefalsenotproductCount jvm method invocationsshare/runtime/globals.hpp
CountLinearScanboolc1falsedevelopcollect statistic counters during LinearScanshare/c1/c1_globals.hpp
CountRemovableExceptionsboolruntimefalsenotproductCount exceptions that could be replaced by branches due to inliningshare/runtime/globals.hpp
CountRuntimeCallsboolruntimefalsenotproductCount VM runtime callsshare/runtime/globals.hpp
CounterDecayMinIntervalLengthintxruntime500developThe minimum interval (in milliseconds) between invocation of CounterDecayshare/runtime/globals.hpp
CounterHalfLifeTimeintxruntime30developHalf-life time of invocation counters (in seconds)share/runtime/globals.hpp
CrashGCForDumpingJavaThreadboolruntimefalsenotproductManually make GC thread crash then dump java stack trace; Test onlyshare/runtime/globals.hpp
CrashOnOutOfMemoryErrorboolruntimefalseproductJVM aborts, producing an error log and core/mini dump, on the first occurrence of an out-of-memory errorshare/runtime/globals.hpp
CreateCoredumpOnCrashboolruntimetrueproductCreate core/mini dump on VM fatal errorshare/runtime/globals.hpp
CriticalJNINativesboolruntimetrueproductCheck for critical JNI entry pointsshare/runtime/globals.hpp
DSCR_DPFD_PPC64uint64_tppc8productPower8 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 touchcpu/ppc/globals_ppc.hpp
DSCR_PPC64uint64_tppc(uint64_t)-1productPower8 or later: Specify encoded value for Data Stream Control Registercpu/ppc/globals_ppc.hpp
DSCR_URG_PPC64uint64_tppc8productPower8 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 touchcpu/ppc/globals_ppc.hpp
DTraceAllocProbesboolruntimefalseproductEnable dtrace probes for object allocationshare/runtime/globals.hpp
DTraceMethodProbesboolruntimefalseproductEnable dtrace probes for method-entry and method-exitshare/runtime/globals.hpp
DTraceMonitorProbesboolruntimefalseproductEnable dtrace probes for monitor eventsshare/runtime/globals.hpp
DebugDeoptimizationboolruntimefalsedevelopTracing various information while debugging deoptimizationshare/runtime/globals.hpp
DebugInlinedCallsboolc2trueproductDIAGNOSTICshare/opto/c2_globals.hpp
DebugNonSafepointsboolruntimetrueInDebugproductDIAGNOSTICshare/runtime/globals.hpp
DebugVtablesboolruntimefalsedevelopadd debugging code to vtable dispatchshare/runtime/globals.hpp
DeferInitialCardMarkboolgcfalseproductDIAGNOSTICshare/gc/shared/gc_globals.hpp
DeoptC1boolc1truedevelopUse deoptimization in C1share/c1/c1_globals.hpp
DeoptimizeALotIntervalintxruntime5notproductNumber of exits until DeoptimizeALot kicks inshare/runtime/globals.hpp
DeoptimizeALotboolruntimefalsedevelopDeoptimize at every exit from the runtime systemshare/runtime/globals.hpp
DeoptimizeNMethodBarriersALotboolruntimefalseproductDIAGNOSTICshare/runtime/globals.hpp
DeoptimizeOnlyAtccstrlistruntimeA comma separated list of bcis to deoptimize atnotproductshare/runtime/globals.hpp
DeoptimizeRandomboolruntimefalsedevelopDeoptimize random frames on random exit from the runtime systemshare/runtime/globals.hpp
DesiredMethodLimitintxruntime8000developThe desired maximum method size (in bytecodes) after inliningshare/runtime/globals.hpp
DiagnoseSyncOnPrimitiveWrappersintxruntime0
range(0, 2)
productDIAGNOSTICshare/runtime/globals.hpp
DisableAttachMechanismboolruntimefalseproductDisable mechanism that allows tools to attach to this VMshare/runtime/globals.hpp
DisableExplicitGCboolgcfalseproductIgnore calls to System.gc()share/gc/shared/gc_globals.hpp
DisableIntrinsicccstrlistruntimeDIAGNOSTICproductdo not expand intrinsics whose (internal) names appear hereshare/runtime/globals.hpp
DisablePrimordialThreadGuardPagesboolruntimefalseproductEXPERIMENTALshare/runtime/globals.hpp
DisableStartThreadboolruntimefalsedevelopDisable starting of additional Java threads (for debugging only)share/runtime/globals.hpp
DisplayVMOutputToStderrboolruntimefalseproductIf DisplayVMOutput is true, display all VM output to stderrshare/runtime/globals.hpp
DisplayVMOutputToStdoutboolruntimefalseproductIf DisplayVMOutput is true, display all VM output to stdoutshare/runtime/globals.hpp
DisplayVMOutputboolruntimetrueproductDIAGNOSTICshare/runtime/globals.hpp
DoCEEboolc1truedevelopDo Conditional Expression Elimination to simplify CFGshare/c1/c1_globals.hpp
DoEscapeAnalysisboolc2trueproductPerform escape analysisshare/opto/c2_globals.hpp
DoReserveCopyInSuperWordboolc2trueproductCreate reserve copy of graph in SuperWord.share/opto/c2_globals.hpp
DominatorSearchLimitintxc21000
range(0, max_jint)
productDIAGNOSTICshare/opto/c2_globals.hpp
DontCompileHugeMethodsboolruntimetrueproductDo not compile methods > HugeMethodLimitshare/runtime/globals.hpp
DontYieldALotIntervalintxruntime10developInterval between which yields will be dropped (milliseconds)share/runtime/globals.hpp
DontYieldALotboolaixppcfalsedefine_pd_globalos_cpu/aix_ppc/globals_aix_ppc.hpp
DontYieldALotboolbsdx86falsedefine_pd_globalos_cpu/bsd_x86/globals_bsd_x86.hpp
DontYieldALotboolbsdzerofalsedefine_pd_globalos_cpu/bsd_zero/globals_bsd_zero.hpp
DontYieldALotboollinuxaarch64falsedefine_pd_globalos_cpu/linux_aarch64/globals_linux_aarch64.hpp
DontYieldALotboollinuxarmfalsedefine_pd_globalos_cpu/linux_arm/globals_linux_arm.hpp
DontYieldALotboollinuxppcfalsedefine_pd_globalos_cpu/linux_ppc/globals_linux_ppc.hpp
DontYieldALotboollinuxs390falsedefine_pd_globalos_cpu/linux_s390/globals_linux_s390.hpp
DontYieldALotboollinuxx86falsedefine_pd_globalos_cpu/linux_x86/globals_linux_x86.hpp
DontYieldALotboollinuxzerofalsedefine_pd_globalos_cpu/linux_zero/globals_linux_zero.hpp
DontYieldALotboolruntimeproduct_pdThrow away obvious excess yield callsshare/runtime/globals.hpp
DontYieldALotboolwindowsaarch64falsedefine_pd_globalos_cpu/windows_aarch64/globals_windows_aarch64.hpp
DontYieldALotboolwindowsx86falsedefine_pd_globalos_cpu/windows_x86/globals_windows_x86.hpp
DumpLoadedClassListccstrruntimeNULLproductDump the names all loaded classes, that could be stored into the CDS archive, in the specified fileshare/runtime/globals.hpp
DumpPrivateMappingsInCoreboollinuxtrueproductDIAGNOSTICos/linux/globals_linux.hpp
DumpReplayDataOnErrorboolruntimetrueproductRecord replay data for crashing compiler threadsshare/runtime/globals.hpp
DumpSharedMappingsInCoreboollinuxtrueproductDIAGNOSTICos/linux/globals_linux.hpp
DumpSharedSpacesboolruntimefalseproductSpecial 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 runsshare/runtime/globals.hpp
DumpVitalsAtExitboolruntimefalseproductDIAGNOSTICshare/runtime/globals.hpp
DynamicDumpSharedSpacesboolruntimefalseproductDynamic archiveshare/runtime/globals.hpp
DynamicallyResizeSystemDictionariesboolruntimetrueproductDIAGNOSTICshare/runtime/globals.hpp
EagerInitializationboolruntimefalsedevelopEagerly initialize classes if possibleshare/runtime/globals.hpp
EagerJVMCIbooljvmcifalseproductEXPERIMENTALshare/jvmci/jvmci_globals.hpp
EagerXrunInitboolruntimefalseproductEagerly initialize -Xrun libraries; allows startup profiling, but not all -Xrun libraries may support the state of the VM at this timeshare/runtime/globals.hpp
EliminateAllocationArraySizeLimitintxc264
range(0, max_jint)
productArray size (number of elements) limit for scalar replacementshare/opto/c2_globals.hpp
EliminateAllocationsboolc2trueproductUse escape analysis to eliminate allocationsshare/opto/c2_globals.hpp
EliminateAutoBoxboolc2trueproductControl optimizations for autobox eliminationshare/opto/c2_globals.hpp
EliminateBlocksboolc1truedevelopEliminate unneccessary basic blocksshare/c1/c1_globals.hpp
EliminateFieldAccessboolc1truedevelopOptimize field loads and storesshare/c1/c1_globals.hpp
EliminateLocksboolc2trueproductCoarsen locks when possibleshare/opto/c2_globals.hpp
EliminateNestedLocksboolc2trueproductEliminate nested locks of the same object when possibleshare/opto/c2_globals.hpp
EliminateNullChecksboolc1truedevelopEliminate unneccessary null checksshare/c1/c1_globals.hpp
EnableContendedboolruntimetrueproductEnable @Contended annotation supportshare/runtime/globals.hpp
EnableDynamicAgentLoadingboolruntimetrueproductAllow tools to load agents with the attach mechanismshare/runtime/globals.hpp
EnableJVMCIProductbooljvmcifalseproductEXPERIMENTALshare/jvmci/jvmci_globals.hpp
EnableJVMCIbooljvmcifalseproductEXPERIMENTALshare/jvmci/jvmci_globals.hpp
EnableThreadSMRExtraValidityChecksboolruntimetrueproductDIAGNOSTICshare/runtime/globals.hpp
EnableThreadSMRStatisticsboolruntimetrueInDebugproductDIAGNOSTICshare/runtime/globals.hpp
EnableVitalsboolruntimetrueproductDIAGNOSTICshare/runtime/globals.hpp
EpsilonElasticTLABDecayboolgctrueproductEXPERIMENTALshare/gc/epsilon/epsilon_globals.hpp
EpsilonElasticTLABboolgctrueproductEXPERIMENTALshare/gc/epsilon/epsilon_globals.hpp
EpsilonMaxTLABSizesize_tgc4 * M
range(1, max_intx)
productEXPERIMENTALshare/gc/epsilon/epsilon_globals.hpp
EpsilonMinHeapExpandsize_tgc128 * M
range(1, max_intx)
productEXPERIMENTALshare/gc/epsilon/epsilon_globals.hpp
EpsilonPrintHeapStepssize_tgc20
range(0, max_intx)
productEXPERIMENTALshare/gc/epsilon/epsilon_globals.hpp
EpsilonTLABDecayTimesize_tgc1000
range(1, max_intx)
productEXPERIMENTALshare/gc/epsilon/epsilon_globals.hpp
EpsilonTLABElasticitydoublegc1.1
range(1.0, DBL_MAX)
productEXPERIMENTALshare/gc/epsilon/epsilon_globals.hpp
EpsilonUpdateCountersStepsize_tgc1 * M
range(1, max_intx)
productEXPERIMENTALshare/gc/epsilon/epsilon_globals.hpp
ErgoHeapSizeLimitsize_tgc0
range(0, max_uintx)
productMaximum ergonomically set heap size (in bytes); zero means use MaxRAM * MaxRAMPercentage / 100share/gc/shared/gc_globals.hpp
ErrorFileToStderrboolruntimefalseproductIf true, error data is printed to stderr instead of a fileshare/runtime/globals.hpp
ErrorFileToStdoutboolruntimefalseproductIf true, error data is printed to stdout instead of a fileshare/runtime/globals.hpp
ErrorFileccstrruntimeNULLproductIf an error occurs, save the error data to this file [default: ./hs_err_pid%p.log] (%p replaced with pid)share/runtime/globals.hpp
ErrorHandlerTestuintxruntime0notproductIf > 0, provokes an error after VM initialization; the value determines which error to provoke. See test_error_handler() in vmError.cpp.share/runtime/globals.hpp
ErrorLogTimeoutuint64_truntime2 * 60
range(0, (uint64_t)max_jlong/1000)
productTimeout, in seconds, to limit the time spent on writing an error log in case of a crash.share/runtime/globals.hpp
EscapeAnalysisTimeoutdoublec220. DEBUG_ONLY(+40.)
range(0, DBL_MAX)
productAbort EA when it reaches time limit (in sec)share/opto/c2_globals.hpp
EstimateArgEscapeboolruntimetrueproductAnalyze bytecodes to estimate escape state of argumentsshare/runtime/globals.hpp
ExecutingUnitTestsboolgcfalseproductWhether the JVM is running unit tests or notshare/gc/shared/gc_globals.hpp
ExitEscapeAnalysisOnTimeoutboolc2truedevelopExit or throw assert in EA when it reaches time limitshare/opto/c2_globals.hpp
ExitOnFullCodeCacheboolruntimefalsenotproductExit the VM if we fill the code cacheshare/runtime/globals.hpp
ExitOnOutOfMemoryErrorboolruntimefalseproductJVM exits on the first occurrence of an out-of-memory errorshare/runtime/globals.hpp
ExitVMOnVerifyErrorboolruntimefalsenotproductstandard exit from VM if bytecode verify error (only in debug mode)share/runtime/globals.hpp
ExpandLoadingBaseDecode_NNbools390trueproductDIAGNOSTICcpu/s390/globals_s390.hpp
ExpandLoadingBaseDecodebools390trueproductDIAGNOSTICcpu/s390/globals_s390.hpp
ExpandLoadingBaseEncode_NNbools390trueproductDIAGNOSTICcpu/s390/globals_s390.hpp
ExpandLoadingBaseEncodebools390trueproductDIAGNOSTICcpu/s390/globals_s390.hpp
ExpandSubTypeCheckAtParseTimeboolc2falseproductDIAGNOSTICshare/opto/c2_globals.hpp
ExplicitGCInvokesConcurrentboolgcfalseproductA System.gc() request invokes a concurrent collection; (effective only when using concurrent collectors)share/gc/shared/gc_globals.hpp
ExtendedDTraceProbesboolruntimefalseproductEnable performance-impacting dtrace probesshare/runtime/globals.hpp
ExtensiveErrorReportsboolruntimePRODUCT_ONLY(true) NOT_PRODUCT(true)productError reports are more extensive.share/runtime/globals.hpp
ExtraSharedClassListFileccstrruntimeNULLproductExtra classlist for building the CDS archive fileshare/runtime/globals.hpp
FLOATPRESSUREintxaarch6432define_pd_globalcpu/aarch64/c2_globals_aarch64.hpp
FLOATPRESSUREintxarm30define_pd_globalcpu/arm/c2_globals_arm.hpp
FLOATPRESSUREintxc2develop_pdNumber of float LRG's that constitute high register pressureshare/opto/c2_globals.hpp
FLOATPRESSUREintxppc28define_pd_globalcpu/ppc/c2_globals_ppc.hpp
FLOATPRESSUREintxs39015define_pd_globalcpu/s390/c2_globals_s390.hpp
FLOATPRESSUREintxx866define_pd_globalcpu/x86/c2_globals_x86.hpp
FLSVerifyDictionaryboolruntimefalsedevelopDo lots of (expensive) FLS dictionary verificationshare/runtime/globals.hpp
FastAllocateSizeLimitintxruntime128*Kdevelop/* Note: This value is zero mod 1<<13 for a cheap sparc set. */Inline allocations larger than this in doublewords must go slowshare/runtime/globals.hpp
FilterSpuriousWakeupsboolruntimetrueproductWhen true prevents OS-level spurious, or premature, wakeups from Object.wait (Ignored for Windows)share/runtime/globals.hpp
FlightRecorderOptionsccstrruntimeNULLproductFlight Recorder optionsshare/runtime/globals.hpp
FlightRecorderDeprecated in JDK13boolruntimefalseproduct(Deprecated) Enable Flight Recordershare/runtime/globals.hpp
FoldStableValuesboolruntimetrueproductDIAGNOSTICshare/runtime/globals.hpp
ForceFloatExceptionsboolruntimetrueInDebugdevelopForce exceptions on FP stack under/overflowshare/runtime/globals.hpp
ForceTimeHighResolutionboolruntimefalseproductUsing high time resolution (for Win32 only)share/runtime/globals.hpp
ForceUnreachableboolruntimefalseproductDIAGNOSTICshare/runtime/globals.hpp
FreqCountInvocationsintxc21
range(1, max_intx)
developScaling factor for branch frequencies (deprecated)share/opto/c2_globals.hpp
FreqInlineSizeintxaarch64325define_pd_globalcpu/aarch64/c2_globals_aarch64.hpp
FreqInlineSizeintxarm175define_pd_globalcpu/arm/c2_globals_arm.hpp
FreqInlineSizeintxc2product_pdThe maximum bytecode size of a frequent method to be inlinedshare/opto/c2_globals.hpp
FreqInlineSizeintxppc175define_pd_globalcpu/ppc/c2_globals_ppc.hpp
FreqInlineSizeintxs390175define_pd_globalcpu/s390/c2_globals_s390.hpp
FreqInlineSizeintxx86325define_pd_globalcpu/x86/c2_globals_x86.hpp
FullGCALotDummiesintxgc32*KnotproductDummy object allocated with +FullGCALot, forcing all objects to moveshare/gc/shared/gc_globals.hpp
FullGCALotIntervalintxgc1notproductInterval between which full gc will occur with +FullGCALotshare/gc/shared/gc_globals.hpp
FullGCALotStartintxgc0notproductFor which invocation to start FullGCAlotshare/gc/shared/gc_globals.hpp
FullGCALotboolgcfalsedevelopForce full gc at every Nth exit from the runtime system (N=FullGCALotInterval)share/gc/shared/gc_globals.hpp
G1AdaptiveIHOPNumInitialSamplessize_tgc3
range(1, max_intx)
productEXPERIMENTALshare/gc/g1/g1_globals.hpp
G1ConcMarkStepDurationMillisdoublegc10.0
range(1.0, DBL_MAX)
productTarget duration of individual concurrent marking steps in milliseconds.share/gc/g1/g1_globals.hpp
G1ConcRSHotCardLimituintxgc4
range(0, max_jubyte)
productThe threshold that defines (>=) a hot card.share/gc/g1/g1_globals.hpp
G1ConcRSLogCacheSizesize_tgc10
range(0, 27)
productLog base 2 of the length of conc RS hot-card cache.share/gc/g1/g1_globals.hpp
G1ConcRefinementGreenZonesize_tgc0
range(0, max_intx)
productThe number of update buffers that are left in the queue by the concurrent processing threads. Will be selected ergonomically by default.share/gc/g1/g1_globals.hpp
G1ConcRefinementRedZonesize_tgc0
range(0, max_intx)
productMaximum number of enqueued update buffers before mutator threads start processing new ones instead of enqueueing them. Will be selected ergonomically by default.share/gc/g1/g1_globals.hpp
G1ConcRefinementServiceIntervalMillisuintxgc300
range(0, max_jint)
productThe G1 service thread wakes up every specified number of milliseconds to do miscellaneous work.share/gc/g1/g1_globals.hpp
G1ConcRefinementThreadsuintgc0
range(0, (max_jint-1)/wordSize)
productThe number of parallel rem set update threads. Will be set ergonomically by default.share/gc/g1/g1_globals.hpp
G1ConcRefinementThresholdStepsize_tgc2
range(1, SIZE_MAX)
productEach 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.share/gc/g1/g1_globals.hpp
G1ConcRefinementYellowZonesize_tgc0
range(0, max_intx)
productNumber of enqueued update buffers that will trigger concurrent processing. Will be selected ergonomically by default.share/gc/g1/g1_globals.hpp
G1ConfidencePercentuintxgc50
range(0, 100)
productConfidence level for MMU/pause predictionsshare/gc/g1/g1_globals.hpp
G1DummyRegionsPerGCuintxgc0developThe 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.share/gc/g1/g1_globals.hpp
G1EagerReclaimHumongousObjectsWithStaleRefsboolgctrueproductEXPERIMENTALshare/gc/g1/g1_globals.hpp
G1EagerReclaimHumongousObjectsboolgctrueproductEXPERIMENTALshare/gc/g1/g1_globals.hpp
G1EvacuationFailureALotCountuintxgc1000developNumber of successful evacuations between evacuation failures occurring at object copyingshare/gc/g1/g1_globals.hpp
G1EvacuationFailureALotDuringConcMarkboolgctruedevelopForce use of evacuation failure handling during evacuation pauses when marking is in progressshare/gc/g1/g1_globals.hpp
G1EvacuationFailureALotDuringConcurrentStartboolgctruedevelopForce use of evacuation failure handling during concurrent start evacuation pausesshare/gc/g1/g1_globals.hpp
G1EvacuationFailureALotDuringMixedGCboolgctruedevelopForce use of evacuation failure handling during mixed evacuation pausesshare/gc/g1/g1_globals.hpp
G1EvacuationFailureALotDuringYoungGCboolgctruedevelopForce use of evacuation failure handling during young evacuation pausesshare/gc/g1/g1_globals.hpp
G1EvacuationFailureALotIntervaluintxgc5developTotal collections between forced triggering of evacuation failuresshare/gc/g1/g1_globals.hpp
G1EvacuationFailureALotboolgcfalsenotproductForce use of evacuation failure handling during certain evacuation pausesshare/gc/g1/g1_globals.hpp
G1ExitOnExpansionFailureboolgcfalsedevelopRaise a fatal VM exit out of memory failure in the event that heap expansion fails due to running out of swap.share/gc/g1/g1_globals.hpp
G1ExpandByPercentOfAvailableintxgc20
range(0, 100)
productEXPERIMENTALshare/gc/g1/g1_globals.hpp
G1HeapRegionSizesize_tgc0
range(0, 32*M)
productSize of the G1 regions.share/gc/g1/g1_globals.hpp
G1HeapWastePercentuintxgc5
range(0, 100)
productAmount of space, expressed as a percentage of the heap size, that G1 is willing not to collect to avoid expensive GCs.share/gc/g1/g1_globals.hpp
G1LastPLABAverageOccupancydoublegc50.0
range(0.001, 100.0)
productEXPERIMENTALshare/gc/g1/g1_globals.hpp
G1MaxNewSizePercentuintxgc60
range(0, 100)
productEXPERIMENTALshare/gc/g1/g1_globals.hpp
G1MaxVerifyFailuresintxgc-1
range(-1, max_jint)
developThe maximum number of verification failures to print. -1 means print all.share/gc/g1/g1_globals.hpp
G1MixedGCCountTargetuintxgc8
range(0, max_uintx)
productThe target number of mixed GCs after a marking cycle.share/gc/g1/g1_globals.hpp
G1MixedGCLiveThresholdPercentuintxgc85
range(0, 100)
productEXPERIMENTALshare/gc/g1/g1_globals.hpp
G1NewSizePercentuintxgc5
range(0, 100)
productEXPERIMENTALshare/gc/g1/g1_globals.hpp
G1OldCSetRegionThresholdPercentuintxgc10
range(0, 100)
productEXPERIMENTALshare/gc/g1/g1_globals.hpp
G1PeriodicGCIntervaluintxgc0productMANAGEABLEshare/gc/g1/g1_globals.hpp
G1PeriodicGCInvokesConcurrentboolgctrueproductDetermines the kind of periodic GC. Set to true to have G1 perform a concurrent GC as periodic GC, otherwise use a STW Full GC.share/gc/g1/g1_globals.hpp
G1PeriodicGCSystemLoadThresholddoublegc0.0
range(0.0, (double)max_uintx)
productMANAGEABLEshare/gc/g1/g1_globals.hpp
G1RSetRegionEntriesBaseintxgc256
range(1, max_jint/wordSize)
developMax number of regions in a fine-grain table per MB.share/gc/g1/g1_globals.hpp
G1RSetRegionEntriesintxgc0
range(0, max_jint/wordSize)
productMax number of regions for which we keep bitmaps.Will be set ergonomically by defaultshare/gc/g1/g1_globals.hpp
G1RSetSparseRegionEntriesBaseintxgc4
range(1, max_jint/wordSize)
developMax number of entries per region in a sparse table per MB.share/gc/g1/g1_globals.hpp
G1RSetSparseRegionEntriesintxgc0
range(0, max_jint/wordSize)
productMax number of entries per region in a sparse table.Will be set ergonomically by default.share/gc/g1/g1_globals.hpp
G1RSetUpdatingPauseTimePercentintxgc10
range(0, 100)
productA target percentage of time that is allowed to be spend on process RS update buffers during the collection pause.share/gc/g1/g1_globals.hpp
G1RebuildRemSetChunkSizesize_tgc256 * K
range(4 * K, 32 * M)
productEXPERIMENTALshare/gc/g1/g1_globals.hpp
G1RefProcDrainIntervaluintgc1000
range(1, INT_MAX)
productThe number of discovered reference objects to process before draining concurrent marking work queues.share/gc/g1/g1_globals.hpp
G1ReservePercentuintxgc10
range(0, 50)
productIt determines the minimum reserve we should have in the heap to minimize the probability of promotion failure.share/gc/g1/g1_globals.hpp
G1SATBBufferEnqueueingThresholdPercentuintxgc60
range(0, 100)
productBefore 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.share/gc/g1/g1_globals.hpp
G1SATBBufferSizesize_tgc1*K
range(1, max_uintx)
productNumber of entries in an SATB log buffer.share/gc/g1/g1_globals.hpp
G1SATBProcessCompletedThresholdintxgc20
range(0, max_jint)
developNumber of completed buffers that triggers log processing.share/gc/g1/g1_globals.hpp
G1SummarizeRSetStatsPeriodintxgc0
range(0, max_intx)
productDIAGNOSTICshare/gc/g1/g1_globals.hpp
G1UpdateBufferSizesize_tgc256
range(1, NOT_LP64(32*M) LP64_ONLY(1*G))
productSize of an update buffershare/gc/g1/g1_globals.hpp
G1UseAdaptiveConcRefinementboolgctrueproductSelect green, yellow and red zones adaptively to meet the the pause requirements.share/gc/g1/g1_globals.hpp
G1UseAdaptiveIHOPboolgctrueproductAdaptively adjust the initiating heap occupancy from the initial value of InitiatingHeapOccupancyPercent. The policy attempts to start marking in time based on application behavior.share/gc/g1/g1_globals.hpp
G1UseReferencePrecleaningboolgctrueproductEXPERIMENTALshare/gc/g1/g1_globals.hpp
G1VerifyBitmapsboolgcfalsedevelopVerifies the consistency of the marking bitmapsshare/gc/g1/g1_globals.hpp
G1VerifyCTCleanupboolgcfalsedevelopVerify card table cleanup.share/gc/g1/g1_globals.hpp
G1VerifyHeapRegionCodeRootsboolgcfalseproductDIAGNOSTICshare/gc/g1/g1_globals.hpp
G1VerifyRSetsDuringFullGCboolgcfalseproductDIAGNOSTICshare/gc/g1/g1_globals.hpp
G1YoungExpansionBufferPercentuintxgc10
range(0, 100)
productEXPERIMENTALshare/gc/g1/g1_globals.hpp
GCALotAtAllSafepointsboolgcfalsenotproductEnforce ScavengeALot/GCALot at all potential safepointsshare/gc/shared/gc_globals.hpp
GCDrainStackTargetSizeuintxgc64
range(0, max_juint)
productNumber of entries we will try to leave on the stack during parallel gcshare/gc/shared/gc_globals.hpp
GCExpandToAllocateDelayMillisuintxgc0developDelay between expansion and allocation (in milliseconds)share/gc/shared/gc_globals.hpp
GCHeapFreeLimituintxgc2
range(0, 100)
productMinimum percentage of free space after a full GC before an OutOfMemoryError is thrown (used with GCTimeLimit)share/gc/shared/gc_globals.hpp
GCLockerEdenExpansionPercentuintxgc5
range(0, 100)
productHow much the GC can expand the eden by while the GC locker is active (as a percentage)share/gc/shared/gc_globals.hpp
GCLockerRetryAllocationCountuintxgc2
range(0, max_uintx)
productDIAGNOSTICshare/gc/shared/gc_globals.hpp
GCOverheadLimitThresholduintxgc5
range(1, max_uintx)
developNumber of consecutive collections before gc time limit firesshare/gc/shared/gc_globals.hpp
GCParallelVerificationEnabledboolgctrueproductDIAGNOSTICshare/gc/shared/gc_globals.hpp
GCPauseIntervalMillisuintxgc0productTime slice for MMU specificationshare/gc/shared/gc_globals.hpp
GCTimeLimituintxgc98
range(0, 100)
productLimit of the proportion of time spent in GC before an OutOfMemoryError is thrown (used with GCHeapFreeLimit)share/gc/shared/gc_globals.hpp
GCTimeRatiouintxgc99
range(0, max_juint)
productAdaptive size policy application time to GC time ratioshare/gc/shared/gc_globals.hpp
GCWorkerDelayMillisuintxgc0developDelay in scheduling GC workers (in milliseconds)share/gc/parallel/parallel_globals.hpp
GenerateArrayStoreCheckboolc1truedevelopGenerates code for array store checksshare/c1/c1_globals.hpp
GenerateRangeChecksboolruntimetruedevelopGenerate range checks for array accessesshare/runtime/globals.hpp
GenerateSynchronizationCodeboolruntimetruedevelopgenerate locking/unlocking code for synchronized methods and monitorsshare/runtime/globals.hpp
GuaranteedSafepointIntervalintxruntime1000
range(0, max_jint)
productDIAGNOSTICshare/runtime/globals.hpp
HandshakeALotboolruntimefalseproductDIAGNOSTICshare/runtime/globals.hpp
HandshakeTimeoutuintruntime0productDIAGNOSTICshare/runtime/globals.hpp
HeapBaseMinAddresssize_taixppc2*Gdefine_pd_globalos_cpu/aix_ppc/globals_aix_ppc.hpp
HeapBaseMinAddresssize_tbsdx862*Gdefine_pd_globalos_cpu/bsd_x86/globals_bsd_x86.hpp
HeapBaseMinAddresssize_tbsdzero2*Gdefine_pd_globalos_cpu/bsd_zero/globals_bsd_zero.hpp
HeapBaseMinAddressuintxlinuxaarch642*Gdefine_pd_globalos_cpu/linux_aarch64/globals_linux_aarch64.hpp
HeapBaseMinAddresssize_tlinuxarm2*Gdefine_pd_globalos_cpu/linux_arm/globals_linux_arm.hpp
HeapBaseMinAddresssize_tlinuxppc2*Gdefine_pd_globalos_cpu/linux_ppc/globals_linux_ppc.hpp
HeapBaseMinAddresssize_tlinuxs3902*Gdefine_pd_globalos_cpu/linux_s390/globals_linux_s390.hpp
HeapBaseMinAddresssize_tlinuxx862*Gdefine_pd_globalos_cpu/linux_x86/globals_linux_x86.hpp
HeapBaseMinAddresssize_tlinuxzero2*Gdefine_pd_globalos_cpu/linux_zero/globals_linux_zero.hpp
HeapBaseMinAddresssize_tgcproduct_pdOS specific low limit for heap base addressshare/gc/shared/gc_globals.hpp
HeapBaseMinAddressuintxwindowsaarch642*Gdefine_pd_globalos_cpu/windows_aarch64/globals_windows_aarch64.hpp
HeapBaseMinAddresssize_twindowsx862*Gdefine_pd_globalos_cpu/windows_x86/globals_windows_x86.hpp
HeapDumpAfterFullGCboolruntimefalseproductMANAGEABLEshare/runtime/globals.hpp
HeapDumpBeforeFullGCboolruntimefalseproductMANAGEABLEshare/runtime/globals.hpp
HeapDumpOnOutOfMemoryErrorboolruntimefalseproductMANAGEABLEshare/runtime/globals.hpp
HeapDumpPathccstrruntimeNULLproductMANAGEABLEshare/runtime/globals.hpp
HeapFirstMaximumCompactionCountuintxgc3
range(0, max_uintx)
productThe collection count for the first maximum compactionshare/gc/parallel/parallel_globals.hpp
HeapMaximumCompactionIntervaluintxgc20
range(0, max_uintx)
productHow often should we maximally compact the heap (not allowing any dead space)share/gc/parallel/parallel_globals.hpp
HeapSearchStepsuintxruntime3 PPC64_ONLY(+17)
range(1, max_uintx)
productHeap allocation steps through preferred address regions to find where it can allocate the heap. Number of steps to take per region.share/runtime/globals.hpp
HeapSizePerGCThreadsize_tgcScaleForWordSize(32*M)productSize of heap (bytes) per GC thread used in calculating the number of GC threadsshare/gc/shared/gc_globals.hpp
HotCallCountThresholdintxc2999999
range(0, ((intx)MIN2((int64_t)max_intx,(int64_t)(+1.0e10))))
developlarge numbers of calls (per method invocation) force hotnessshare/opto/c2_globals.hpp
HotCallProfitThresholdintxc2999999
range(0, ((intx)MIN2((int64_t)max_intx,(int64_t)(+1.0e10))))
develophighly profitable inlining opportunities force hotnessshare/opto/c2_globals.hpp
HotCallTrivialSizeintxc2-1
range(-1, ((intx)MIN2((int64_t)max_intx,(int64_t)(+1.0e10))))
developtrivial methods (no larger than this) force calls to be hotshare/opto/c2_globals.hpp
HotCallTrivialWorkintxc2-1
range(-1, ((intx)MIN2((int64_t)max_intx,(int64_t)(+1.0e10))))
developtrivial execution time (no larger than this) forces hotnessshare/opto/c2_globals.hpp
HotMethodDetectionLimitintxruntime100000
range(1, max_jint)
productDIAGNOSTICshare/runtime/globals.hpp
HugeMethodLimitintxruntime8000developDon't compile methods larger than this if +DontCompileHugeMethodsshare/runtime/globals.hpp
ICMissHistogramboolruntimefalsenotproductProduce histogram of IC missesshare/runtime/globals.hpp
IEEEPrecisionboolx86truedevelopEnables IEEE precision (for INTEL only)cpu/x86/globals_x86.hpp
INTPRESSUREintxaarch6424define_pd_globalcpu/aarch64/c2_globals_aarch64.hpp
INTPRESSUREintxarm12define_pd_globalcpu/arm/c2_globals_arm.hpp
INTPRESSUREintxc2develop_pdNumber of integer LRG's that constitute high register pressureshare/opto/c2_globals.hpp
INTPRESSUREintxppc26define_pd_globalcpu/ppc/c2_globals_ppc.hpp
INTPRESSUREintxs39010define_pd_global// Medium size register set, 6 special purpose regs, 3 SOE regs.cpu/s390/c2_globals_s390.hpp
INTPRESSUREintxx866define_pd_globalcpu/x86/c2_globals_x86.hpp
IdealizeClearArrayNodeboolaarch64truedefine_pd_globalcpu/aarch64/c2_globals_aarch64.hpp
IdealizeClearArrayNodeboolarmtruedefine_pd_globalcpu/arm/c2_globals_arm.hpp
IdealizeClearArrayNodeboolc2product_pdDIAGNOSTICshare/opto/c2_globals.hpp
IdealizeClearArrayNodeboolppctruedefine_pd_globalcpu/ppc/c2_globals_ppc.hpp
IdealizeClearArrayNodebools390falsedefine_pd_globalcpu/s390/c2_globals_s390.hpp
IdealizeClearArrayNodeboolx86truedefine_pd_globalcpu/x86/c2_globals_x86.hpp
IdealizedNumericsboolc2falsedevelopCheck performance difference allowing FP associativity and commutativity...share/opto/c2_globals.hpp
IgnoreEmptyClassPathsboolruntimefalseproductIgnore empty path elements in -classpathshare/runtime/globals.hpp
IgnoreRewritesboolruntimefalsedevelopSuppress rewrites of bytecodes in the oopmap generator. This is unsafe!share/runtime/globals.hpp
IgnoreUnrecognizedVMOptionsboolruntimefalseproductIgnore unrecognized VM optionsshare/runtime/globals.hpp
ImplicitDiv0Checksboolc1truedevelopUse implicit division by zero checksshare/c1/c1_globals.hpp
ImplicitNullCheckThresholdintxc23
range(0, max_jint)
developDon't do implicit null checks if NPE's in a method exceeds limitshare/opto/c2_globals.hpp
ImplicitNullChecksboolaarch64truedefine_pd_global// Generate code for implicit null checkscpu/aarch64/globals_aarch64.hpp
ImplicitNullChecksboolarmtruedefine_pd_global// Generate code for implicit null checkscpu/arm/globals_arm.hpp
ImplicitNullChecksboolruntimeproduct_pdDIAGNOSTICshare/runtime/globals.hpp
ImplicitNullChecksboolppctruedefine_pd_global// Generate code for implicit null checks.cpu/ppc/globals_ppc.hpp
ImplicitNullChecksbools390truedefine_pd_global// Generate code for implicit null checks.cpu/s390/globals_s390.hpp
ImplicitNullChecksboolx86truedefine_pd_global// Generate code for implicit null checkscpu/x86/globals_x86.hpp
ImplicitNullChecksboolzerotruedefine_pd_globalcpu/zero/globals_zero.hpp
IncreaseFirstTierCompileThresholdAtuintxruntime50
range(0, 99)
productIncrease the compile threshold for C1 compilation if the code cache is filled by the specified percentageshare/runtime/globals.hpp
IncrementalInlineboolc2trueproductdo post parse inliningshare/opto/c2_globals.hpp
IndexSetWatchintxc20
range(-1, 0)
notproductTrace all operations on this IndexSet (-1 means all, 0 none)share/opto/c2_globals.hpp
InitArrayShortSizeintxaarch64BytesPerLongdefine_pd_globalcpu/aarch64/globals_aarch64.hpp
InitArrayShortSizeintxarm8*BytesPerLongdefine_pd_globalcpu/arm/globals_arm.hpp
InitArrayShortSizeintxruntimeproduct_pdDIAGNOSTICshare/runtime/globals.hpp
InitArrayShortSizeintxppc9*BytesPerLongdefine_pd_globalcpu/ppc/globals_ppc.hpp
InitArrayShortSizeintxs3901*BytesPerLongdefine_pd_globalcpu/s390/globals_s390.hpp
InitArrayShortSizeintxx868*BytesPerLongdefine_pd_globalcpu/x86/globals_x86.hpp
InitArrayShortSizeintxzero0define_pd_globalcpu/zero/globals_zero.hpp
InitialBootClassLoaderMetaspaceSizeDeprecated in JDK15
Obsoleted in JDK16
Expired in JDK17
size_truntimeNOT_LP64(2200*K) LP64_ONLY(4*M)
range(30*K, max_uintx/BytesPerWord)
product(Deprecated) Initial size of the boot class loader data metaspaceshare/runtime/globals.hpp
InitialCodeCacheSizeintxaarch64160*Kdefine_pd_globalcpu/aarch64/c1_globals_aarch64.hpp
InitialCodeCacheSizesize_tarm1536*Kdefine_pd_global// Integral multiple of CodeCacheExpansionSizecpu/arm/c2_globals_arm.hpp
InitialCodeCacheSizeuintxcompiler160*Kdefine_pd_globalshare/compiler/compiler_globals.hpp
InitialCodeCacheSizeuintxruntimeproduct_pdInitial code cache size (in bytes)share/runtime/globals.hpp
InitialCodeCacheSizeuintxppc160*Kdefine_pd_globalcpu/ppc/c1_globals_ppc.hpp
InitialCodeCacheSizeuintxs3902048*Kdefine_pd_global// Integral multiple of CodeCacheExpansionSizecpu/s390/c2_globals_s390.hpp
InitialCodeCacheSizeuintxx86160*Kdefine_pd_globalcpu/x86/c1_globals_x86.hpp
InitialHeapSizesize_tgc0productInitial heap size (in bytes); zero means use ergonomicsshare/gc/shared/gc_globals.hpp
InitialRAMFractionDeprecated in JDK10uintxgc64
range(1, max_uintx)
productFraction (1/n) of real memory used for initial heap size. Deprecated, use InitialRAMPercentage insteadshare/gc/shared/gc_globals.hpp
InitialRAMPercentagedoublegc1.5625
range(0.0, 100.0)
productPercentage of real memory used for initial heap sizeshare/gc/shared/gc_globals.hpp
InitialSurvivorRatiouintxgc8
range(0, max_uintx)
productInitial ratio of young generation/survivor space sizeshare/gc/shared/gc_globals.hpp
InitialTenuringThresholduintxgc7
range(0, markWord::max_age + 1)
productInitial value for tenuring thresholdshare/gc/shared/gc_globals.hpp
InitiatingHeapOccupancyPercentuintxgc45
range(0, 100)
productThe 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)share/gc/shared/gc_globals.hpp
InjectCompilerCreationFailureboolruntimefalsedevelopInject thread creation failures for UseDynamicNumberOfCompilerThreadsshare/runtime/globals.hpp
InjectGCWorkerCreationFailureboolgcfalseproductDIAGNOSTICshare/gc/shared/gc_globals.hpp
InlineAccessorsboolc2truedevelopinline accessor methods (get/set)share/opto/c2_globals.hpp
InlineArrayCopyboolruntimetrueproductDIAGNOSTICshare/runtime/globals.hpp
InlineClassNativesboolcompilertruedefine_pd_globalshare/compiler/compiler_globals.hpp
InlineClassNativesboolruntimetrueproductDIAGNOSTICshare/runtime/globals.hpp
InlineDataFileccstrruntimeNULLproductFile containing inlining replay information[default: ./inline_pid%p.log] (%p replaced with pid)share/runtime/globals.hpp
InlineFrequencyCountintxaarch64100define_pd_globalcpu/aarch64/globals_aarch64.hpp
InlineFrequencyCountintxarm50define_pd_globalcpu/arm/globals_arm.hpp
InlineFrequencyCountintxruntimeproduct_pdDIAGNOSTICshare/runtime/globals.hpp
InlineFrequencyCountintxppc100define_pd_globalcpu/ppc/globals_ppc.hpp
InlineFrequencyCountintxs390100define_pd_globalcpu/s390/globals_s390.hpp
InlineFrequencyCountintxx86100define_pd_globalcpu/x86/globals_x86.hpp
InlineFrequencyCountintxzero100define_pd_globalcpu/zero/globals_zero.hpp
InlineFrequencyRatiointxruntime20
range(0, max_jint)
developRatio of call site execution to caller method invocationshare/runtime/globals.hpp
InlineIntrinsicsboolaarch64truedefine_pd_globalcpu/aarch64/c1_globals_aarch64.hpp
InlineIntrinsicsboolarmfalsedefine_pd_globalcpu/arm/c2_globals_arm.hpp
InlineIntrinsicsboolcompilerfalsedefine_pd_globalshare/compiler/compiler_globals.hpp
InlineIntrinsicsboolruntimedevelop_pdInline intrinsics that can be statically resolvedshare/runtime/globals.hpp
InlineIntrinsicsboolppctruedefine_pd_globalcpu/ppc/c1_globals_ppc.hpp
InlineIntrinsicsbools390truedefine_pd_globalcpu/s390/c2_globals_s390.hpp
InlineIntrinsicsboolx86truedefine_pd_globalcpu/x86/c1_globals_x86.hpp
InlineMathNativesboolruntimetrueproductDIAGNOSTICshare/runtime/globals.hpp
InlineMethodsWithExceptionHandlersboolc1truedevelopInline methods containing exception handlers (NOTE: does not work with current backend)share/c1/c1_globals.hpp
InlineNIOCheckIndexboolc1trueproductDIAGNOSTICshare/c1/c1_globals.hpp
InlineNativesboolruntimetrueproductDIAGNOSTICshare/runtime/globals.hpp
InlineObjectCopyboolc2trueproductDIAGNOSTICshare/opto/c2_globals.hpp
InlineObjectHashboolruntimetrueproductDIAGNOSTICshare/runtime/globals.hpp
InlineReflectionGetCallerClassboolc2trueproductDIAGNOSTICshare/opto/c2_globals.hpp
InlineSmallCodeintxaarch641000define_pd_globalcpu/aarch64/globals_aarch64.hpp
InlineSmallCodeintxarm1500define_pd_globalcpu/arm/globals_arm.hpp
InlineSmallCodeintxc2product_pdOnly inline already compiled methods if their code size is less than thisshare/opto/c2_globals.hpp
InlineSmallCodeintxppc1500define_pd_globalcpu/ppc/globals_ppc.hpp
InlineSmallCodeintxs3902000define_pd_globalcpu/s390/globals_s390.hpp
InlineSmallCodeintxx861000define_pd_globalcpu/x86/globals_x86.hpp
InlineSmallCodeintxzero1000define_pd_globalcpu/zero/globals_zero.hpp
InlineSynchronizedMethodsboolc1trueproductInline synchronized methodsshare/c1/c1_globals.hpp
InlineThreadNativesboolruntimetrueproductDIAGNOSTICshare/runtime/globals.hpp
InlineThrowCountintxruntime50
range(0, max_jint)
developForce inlining of interpreted methods that throw this oftenshare/runtime/globals.hpp
InlineThrowMaxSizeintxruntime200
range(0, max_jint)
developForce inlining of throwing methods smaller than thisshare/runtime/globals.hpp
InlineUnsafeOpsboolcompilertruedefine_pd_globalshare/compiler/compiler_globals.hpp
InlineUnsafeOpsboolruntimetrueproductDIAGNOSTICshare/runtime/globals.hpp
InlineWarmCallsboolc2falsedevelopUse a heat-based priority queue to govern inliningshare/opto/c2_globals.hpp
InlineboolruntimetrueproductEnable inliningshare/runtime/globals.hpp
InstallMethodsboolc1truedevelopInstall methods at the end of successful compilationsshare/c1/c1_globals.hpp
InstructionCountCutoffintxc137000
range(0, max_jint)
developIf GraphBuilder adds this many instructions, bails outshare/c1/c1_globals.hpp
IntelJccErratumMitigationboolx86trueproductDIAGNOSTICcpu/x86/globals_x86.hpp
InterceptOSExceptionboolruntimefalsedevelopStart debugger when an implicit OS (e.g. NULL) exception happensshare/runtime/globals.hpp
InteriorEntryAlignmentintxaarch6416define_pd_globalcpu/aarch64/c2_globals_aarch64.hpp
InteriorEntryAlignmentintxarm16define_pd_global// = CodeEntryAlignmentcpu/arm/c2_globals_arm.hpp
InteriorEntryAlignmentintxc2product_pdCode alignment for interior entry points in generated code (in bytes)share/opto/c2_globals.hpp
InteriorEntryAlignmentintxppc16define_pd_globalcpu/ppc/c2_globals_ppc.hpp
InteriorEntryAlignmentintxs3902define_pd_globalcpu/s390/c2_globals_s390.hpp
InteriorEntryAlignmentintxx864define_pd_globalcpu/x86/c2_globals_x86.hpp
InterpreterProfilePercentageintxruntime33
range(0, 100)
productNON_TIERED number of method invocations/branches (expressed as % of CompileThreshold) before profiling in the interpretershare/runtime/globals.hpp
JVMCICounterSizeintxjvmci0
range(0, 1000000)
productEXPERIMENTALshare/jvmci/jvmci_globals.hpp
JVMCICountersExcludeCompilerbooljvmcitrueproductEXPERIMENTALshare/jvmci/jvmci_globals.hpp
JVMCIEventLogLevelintxjvmci1
range(0, 4)
productEXPERIMENTALshare/jvmci/jvmci_globals.hpp
JVMCIHostThreadsintxjvmci1
range(0, max_jint))
productEXPERIMENTALshare/jvmci/jvmci_globals.hpp
JVMCILibDumpJNIConfigccstrjvmciNULLproductEXPERIMENTALshare/jvmci/jvmci_globals.hpp
JVMCILibPathccstrjvmciNULLproductEXPERIMENTALshare/jvmci/jvmci_globals.hpp
JVMCINMethodSizeLimitintxjvmci(80*K)*wordSize
range(0, max_jint)
productEXPERIMENTALshare/jvmci/jvmci_globals.hpp
JVMCIPrintPropertiesbooljvmcifalseproductEXPERIMENTALshare/jvmci/jvmci_globals.hpp
JVMCIThreadsintxjvmci1
range(1, max_jint)
productEXPERIMENTALshare/jvmci/jvmci_globals.hpp
JVMCITraceLevelintxjvmci0
range(0, 4)
productEXPERIMENTALshare/jvmci/jvmci_globals.hpp
JVMCIUseFastLockingbooljvmcitruedevelopUse fast inlined locking codeshare/jvmci/jvmci_globals.hpp
JVMInvokeMethodSlacksize_taixppc8192define_pd_globalos_cpu/aix_ppc/globals_aix_ppc.hpp
JVMInvokeMethodSlacksize_tbsdx868192define_pd_globalos_cpu/bsd_x86/globals_bsd_x86.hpp
JVMInvokeMethodSlacksize_tbsdzero8192define_pd_globalos_cpu/bsd_zero/globals_bsd_zero.hpp
JVMInvokeMethodSlackuintxlinuxaarch648192define_pd_globalos_cpu/linux_aarch64/globals_linux_aarch64.hpp
JVMInvokeMethodSlacksize_tlinuxarm8192define_pd_globalos_cpu/linux_arm/globals_linux_arm.hpp
JVMInvokeMethodSlacksize_tlinuxppc8192define_pd_globalos_cpu/linux_ppc/globals_linux_ppc.hpp
JVMInvokeMethodSlacksize_tlinuxs3908192define_pd_globalos_cpu/linux_s390/globals_linux_s390.hpp
JVMInvokeMethodSlacksize_tlinuxx868192define_pd_globalos_cpu/linux_x86/globals_linux_x86.hpp
JVMInvokeMethodSlacksize_tlinuxzero8192define_pd_globalos_cpu/linux_zero/globals_linux_zero.hpp
JVMInvokeMethodSlacksize_truntimedevelop_pdStack space (bytes) required for JVM_InvokeMethod to completeshare/runtime/globals.hpp
JVMInvokeMethodSlackuintxwindowsaarch648192define_pd_globalos_cpu/windows_aarch64/globals_windows_aarch64.hpp
JVMInvokeMethodSlacksize_twindowsx868192define_pd_globalos_cpu/windows_x86/globals_windows_x86.hpp
JavaMonitorsInStackTraceboolruntimetrueproductPrint information about Java monitor locks when the stacks are dumpedshare/runtime/globals.hpp
JavaPriority10_To_OSPriorityintxruntime-1
range(-1, 127)
productMap Java priorities to OS prioritiesshare/runtime/globals.hpp
JavaPriority1_To_OSPriorityintxruntime-1
range(-1, 127)
productMap Java priorities to OS prioritiesshare/runtime/globals.hpp
JavaPriority2_To_OSPriorityintxruntime-1
range(-1, 127)
productMap Java priorities to OS prioritiesshare/runtime/globals.hpp
JavaPriority3_To_OSPriorityintxruntime-1
range(-1, 127)
productMap Java priorities to OS prioritiesshare/runtime/globals.hpp
JavaPriority4_To_OSPriorityintxruntime-1
range(-1, 127)
productMap Java priorities to OS prioritiesshare/runtime/globals.hpp
JavaPriority5_To_OSPriorityintxruntime-1
range(-1, 127)
productMap Java priorities to OS prioritiesshare/runtime/globals.hpp
JavaPriority6_To_OSPriorityintxruntime-1
range(-1, 127)
productMap Java priorities to OS prioritiesshare/runtime/globals.hpp
JavaPriority7_To_OSPriorityintxruntime-1
range(-1, 127)
productMap Java priorities to OS prioritiesshare/runtime/globals.hpp
JavaPriority8_To_OSPriorityintxruntime-1
range(-1, 127)
productMap Java priorities to OS prioritiesshare/runtime/globals.hpp
JavaPriority9_To_OSPriorityintxruntime-1
range(-1, 127)
productMap Java priorities to OS prioritiesshare/runtime/globals.hpp
LIRTraceExecutionboolc1falsedevelopadd LIR code which logs the execution of blocksshare/c1/c1_globals.hpp
LIRTracePeepholeboolc1falsedevelopTrace peephole optimizershare/c1/c1_globals.hpp
LargePageHeapSizeThresholdsize_truntime128*M
range(0, max_uintx)
productUse large pages if maximum heap is at least this bigshare/runtime/globals.hpp
LargePageSizeInBytessize_truntime0
range(0, max_uintx)
productLarge page size (0 to let VM choose the page size)share/runtime/globals.hpp
LargePagesIndividualAllocationInjectErrorboolruntimefalsedevelopFail large pages individual allocationshare/runtime/globals.hpp
LiveNodeCountInliningCutoffintxc240000
range(0, max_juint / 8)
productmax number of live nodes in a methodshare/opto/c2_globals.hpp
LoadExecStackDllInVMThreadboollinuxtrueproductLoad DLLs with executable-stack attribute in the VM Threados/linux/globals_linux.hpp
LoadLineNumberTablesboolruntimetruedevelopTell whether the class file parser loads line number tablesshare/runtime/globals.hpp
LoadLocalVariableTablesboolruntimetruedevelopTell whether the class file parser loads local variable tablesshare/runtime/globals.hpp
LoadLocalVariableTypeTablesboolruntimetruedevelopTell whether the class file parser loads local variable typetablesshare/runtime/globals.hpp
LogCompilationboolruntimefalseproductDIAGNOSTICshare/runtime/globals.hpp
LogEventsBufferEntriesuintxruntime75
range(1, NOT_LP64(1*K) LP64_ONLY(1*M))
productDIAGNOSTICshare/runtime/globals.hpp
LogEventsboolruntimetrueproductDIAGNOSTICshare/runtime/globals.hpp
LogFileccstrruntimeNULLproductDIAGNOSTICshare/runtime/globals.hpp
LogSweeperboolruntimefalsenotproductKeep a ring buffer of sweeper activityshare/runtime/globals.hpp
LogTouchedMethodsboolruntimefalseproductDIAGNOSTICshare/runtime/globals.hpp
LogVMOutputboolruntimefalseproductDIAGNOSTICshare/runtime/globals.hpp
LoopMaxUnrollintxc216
range(0, max_jint)
productMaximum number of unrolls for main loopshare/opto/c2_globals.hpp
LoopOptsCountintxc243
range(5, 43)
productSet level of loop optimization for tier 1 compilesshare/opto/c2_globals.hpp
LoopPercentProfileLimitintxaarch6410define_pd_globalcpu/aarch64/c2_globals_aarch64.hpp
LoopPercentProfileLimitintxarm10define_pd_globalcpu/arm/c2_globals_arm.hpp
LoopPercentProfileLimitintxc2product_pdUnroll loop bodies with % node count of profile limitshare/opto/c2_globals.hpp
LoopPercentProfileLimitintxppc10define_pd_globalcpu/ppc/c2_globals_ppc.hpp
LoopPercentProfileLimitintxs39010define_pd_globalcpu/s390/c2_globals_s390.hpp
LoopPercentProfileLimitintxx8630define_pd_globalcpu/x86/c2_globals_x86.hpp
LoopStripMiningIterShortLoopuintxc20
range(0, max_juint)
productLoop with fewer iterations are not strip minedshare/opto/c2_globals.hpp
LoopStripMiningIteruintxc20
range(0, max_juint)
productNumber of iterations in strip mined loopshare/opto/c2_globals.hpp
LoopUnrollLimitintxaarch6460define_pd_globalcpu/aarch64/c2_globals_aarch64.hpp
LoopUnrollLimitintxarm60define_pd_global// Design center runs on 1.3.1cpu/arm/c2_globals_arm.hpp
LoopUnrollLimitintxc2product_pdUnroll loop bodies with node count less than thisshare/opto/c2_globals.hpp
LoopUnrollLimitintxppc60define_pd_globalcpu/ppc/c2_globals_ppc.hpp
LoopUnrollLimitintxs39060define_pd_globalcpu/s390/c2_globals_s390.hpp
LoopUnrollLimitintxx8650define_pd_global// Design center runs on 1.3.1cpu/x86/c2_globals_x86.hpp
LoopUnrollMinintxc24
range(0, max_jint)
productMinimum number of unroll loop bodies before checking progressof rounds of unroll,optimize,..share/opto/c2_globals.hpp
LoopUnswitchingboolc2trueproductEnable loop unswitching (a form of invariant test hoisting)share/opto/c2_globals.hpp
MVCLEThresholdsize_ts390+2*(4*K)productDIAGNOSTICcpu/s390/globals_s390.hpp
MallocCatchPtrintxruntime-1developHit breakpoint when mallocing/freeing this pointershare/runtime/globals.hpp
MallocMaxTestWordsuintxruntime0
range(0, max_uintx)
productDIAGNOSTICshare/runtime/globals.hpp
ManagementServerboolruntimefalseproductCreate JMX Management Servershare/runtime/globals.hpp
MarkStackSizeMaxsize_tgcNOT_LP64(4*M) LP64_ONLY(512*M)
range(1, (max_jint - 1))
productMaximum size of marking stackshare/gc/shared/gc_globals.hpp
MarkStackSizesize_tgcNOT_LP64(32*K) LP64_ONLY(4*M)
range(1, (max_jint - 1))
productSize of marking stackshare/gc/shared/gc_globals.hpp
MarkSweepAlwaysCompactCountuintgc4
range(1, max_juint)
productHow often should we fully compact the heap (ignoring the dead space parameters)share/gc/shared/gc_globals.hpp
MarkSweepDeadRatiouintxgc5
range(0, 100)
productPercentage (0-100) of the old gen allowed as dead wood. Serial mark sweep treats this as both the minimum and maximum value. 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.share/gc/shared/gc_globals.hpp
MaxBCEAEstimateLevelintxruntime5
range(0, max_jint)
productMaximum number of nested calls that are analyzed by BC EAshare/runtime/globals.hpp
MaxBCEAEstimateSizeintxruntime150
range(0, max_jint)
productMaximum bytecode size of a method to be analyzed by BC EAshare/runtime/globals.hpp
MaxDirectMemorySizeuint64_truntime0
range(0, max_jlong)
productMaximum total size of NIO direct-buffer allocationsshare/runtime/globals.hpp
MaxElementPrintSizeintxruntime256notproductmaximum number of elements to printshare/runtime/globals.hpp
MaxExpectedDataSegmentSizeuintxaix8*GproductMaximum expected Data Segment Size.os/aix/globals_aix.hpp
MaxFDLimitboolruntimetrueproductBump the number of file descriptors to maximum (Unix only)share/runtime/globals.hpp
MaxForceInlineLevelintxruntime100
range(0, max_jint)
developmaximum number of nested calls that are forced for inlining (using CompileCommand or marked w/ @ForceInline)share/runtime/globals.hpp
MaxGCMinorPauseMillisDeprecated in JDK8uintxgcmax_uintx
range(0, max_uintx)
productAdaptive size policy maximum GC minor pause time goal in millisecondshare/gc/shared/gc_globals.hpp
MaxGCPauseMillisuintxgcmax_uintx - 1
range(1, max_uintx - 1)
productAdaptive size policy maximum GC pause time goal in millisecond, or (G1 Only) the maximum GC time per MMU time sliceshare/gc/shared/gc_globals.hpp
MaxHeapFreeRatiouintxruntime70
range(0, 100)
productMANAGEABLEshare/runtime/globals.hpp
MaxHeapSizesize_tgcScaleForWordSize(96*M)productMaximum heap size (in bytes)share/gc/shared/gc_globals.hpp
MaxInlineLevelintxc215
range(0, max_jint)
productmaximum number of nested calls that are inlined by high tier compilershare/opto/c2_globals.hpp
MaxInlineSizeintxc235
range(0, max_jint)
productThe maximum bytecode size of a method to be inlined by high tier compilershare/opto/c2_globals.hpp
MaxJNILocalCapacityintxruntime65536
range(min_intx, max_intx)
productMaximum allowable local JNI handle capacity to EnsureLocalCapacity() and PushLocalFrame(), where <= 0 is unlimited, default: 65536share/runtime/globals.hpp
MaxJavaStackTraceDepthintxruntime1024
range(0, max_jint/2)
productThe maximum number of lines in the stack trace for Java exceptions (0 means all)share/runtime/globals.hpp
MaxJumpTableSizeintxc265000
range(0, max_intx)
productMaximum number of targets in a generated jump tableshare/opto/c2_globals.hpp
MaxJumpTableSparsenessintxc25
range(0, max_intx / 4)
productMaximum sparseness for jumptablesshare/opto/c2_globals.hpp
MaxLabelRootDepthintxc21100
range(100, max_jint)
productMaximum times call Label_Root to prevent stack overflowshare/opto/c2_globals.hpp
MaxLoopPadintxc2(OptoLoopAlignment-1)
range(0, max_jint)
productAlign a loop if padding size in bytes is less or equal to this valueshare/opto/c2_globals.hpp
MaxMetaspaceExpansionsize_truntimeScaleForWordSize(4*M)
range(0, max_uintx)
productThe maximum expansion of Metaspace without full GC (in bytes)share/runtime/globals.hpp
MaxMetaspaceFreeRatiouintxruntime70
range(0, 100)
productThe maximum percentage of Metaspace free after GC to avoid shrinkingshare/runtime/globals.hpp
MaxMetaspaceSizesize_truntimemax_uintxproductMaximum size of Metaspaces (in bytes)share/runtime/globals.hpp
MaxNewSizesize_tgcmax_uintx
range(0, max_uintx)
productMaximum new generation size (in bytes), max_uintx means set ergonomicallyshare/gc/shared/gc_globals.hpp
MaxNodeLimitintxc280000
range(1000, max_jint / 3)
productMaximum number of nodesshare/opto/c2_globals.hpp
MaxRAMFractionDeprecated in JDK10uintxgc4
range(1, max_uintx)
productMaximum fraction (1/n) of real memory used for maximum heap size. Deprecated, use MaxRAMPercentage insteadshare/gc/shared/gc_globals.hpp
MaxRAMPercentagedoublegc25.0
range(0.0, 100.0)
productMaximum percentage of real memory used for maximum heap sizeshare/gc/shared/gc_globals.hpp
MaxRAMuint64_taarch641ULL*Gdefine_pd_globalcpu/aarch64/c1_globals_aarch64.hpp
MaxRAMuint64_tarm4ULL*Gdefine_pd_globalcpu/arm/c2_globals_arm.hpp
MaxRAMuint64_tcompiler1ULL*Gdefine_pd_globalshare/compiler/compiler_globals.hpp
MaxRAMuint64_tgcproduct_pdReal memory size (in bytes) used to set maximum heap sizeshare/gc/shared/gc_globals.hpp
MaxRAMuint64_tppc1ULL*Gdefine_pd_globalcpu/ppc/c1_globals_ppc.hpp
MaxRAMuint64_ts390128ULL*Gdefine_pd_globalcpu/s390/c2_globals_s390.hpp
MaxRAMuint64_tx861ULL*Gdefine_pd_globalcpu/x86/c1_globals_x86.hpp
MaxRecursiveInlineLevelintxc21
range(0, max_jint)
productmaximum number of nested recursive calls that are inlined by high tier compilershare/opto/c2_globals.hpp
MaxSubklassPrintSizeintxruntime4notproductmaximum number of subklasses to print when printing klassshare/runtime/globals.hpp
MaxTenuringThresholduintxgc15
range(0, markWord::max_age + 1)
productMaximum value for tenuring thresholdshare/gc/shared/gc_globals.hpp
MaxTrivialSizeintxc26
range(0, max_jint)
productThe maximum bytecode size of a trivial method to be inlined by high tier compilershare/opto/c2_globals.hpp
MaxVectorSizeintxc264
range(0, max_jint)
productMax vector size in bytes, actual size could be less depending on elements typeshare/opto/c2_globals.hpp
MaxVirtMemFractionuintxgc2developMaximum fraction (1/n) of virtual memory used for ergonomically determining maximum heap sizeshare/gc/shared/gc_globals.hpp
MemProfilingIntervalintxruntime500notproductTime between each invocation of the MemProfilershare/runtime/globals.hpp
MemProfilingboolruntimefalsedevelopWrite memory usage profiling to log fileshare/runtime/globals.hpp
MetadataAllocationFailALotIntervaluintxgc1000developMetadata allocation failure a lot intervalshare/gc/shared/gc_globals.hpp
MetadataAllocationFailALotboolgcfalsedevelopFail metadata allocations at intervals controlled by MetadataAllocationFailALotIntervalshare/gc/shared/gc_globals.hpp
MetaspaceSizeuintxaarch6412*Mdefine_pd_globalcpu/aarch64/c1_globals_aarch64.hpp
MetaspaceSizesize_tarmScaleForWordSize(16*M)define_pd_globalcpu/arm/c2_globals_arm.hpp
MetaspaceSizesize_tcompilerScaleForWordSize(4*M)define_pd_globalshare/compiler/compiler_globals.hpp
MetaspaceSizesize_truntimeproduct_pdInitial threshold (in bytes) at which a garbage collection is done to reduce Metaspace usageshare/runtime/globals.hpp
MetaspaceSizesize_tppc12*Mdefine_pd_globalcpu/ppc/c1_globals_ppc.hpp
MetaspaceSizesize_ts390ScaleForWordSize(16*M)define_pd_globalcpu/s390/c2_globals_s390.hpp
MetaspaceSizesize_tx8612*Mdefine_pd_globalcpu/x86/c1_globals_x86.hpp
MethodFlushingboolruntimetrueproductReclamation of zombie and not-entrant methodsshare/runtime/globals.hpp
MethodHistogramCutoffintxruntime100developThe cutoff value for method invocation histogram (+CountCalls)share/runtime/globals.hpp
MinHeapDeltaBytessize_truntimeScaleForWordSize(128*K)
range(0, max_uintx)
productThe minimum change in heap space due to GC (in bytes)share/runtime/globals.hpp
MinHeapFreeRatiouintxruntime40
range(0, 100)
productMANAGEABLEshare/runtime/globals.hpp
MinHeapSizesize_tgc0productMinimum heap size (in bytes); zero means use ergonomicsshare/gc/shared/gc_globals.hpp
MinInliningThresholdintxruntime250
range(0, max_jint)
productThe minimum invocation count a method needs to have to be inlinedshare/runtime/globals.hpp
MinJumpTableSizeintxaarch6410define_pd_globalcpu/aarch64/c2_globals_aarch64.hpp
MinJumpTableSizeintxarm16define_pd_globalcpu/arm/c2_globals_arm.hpp
MinJumpTableSizeintxc2product_pdMinimum number of targets in a generated jump tableshare/opto/c2_globals.hpp
MinJumpTableSizeintxppc10define_pd_globalcpu/ppc/c2_globals_ppc.hpp
MinJumpTableSizeintxs39018define_pd_globalcpu/s390/c2_globals_s390.hpp
MinJumpTableSizeintxx8610define_pd_globalcpu/x86/c2_globals_x86.hpp
MinMetaspaceExpansionsize_truntimeScaleForWordSize(256*K)
range(0, max_uintx)
productThe minimum expansion of Metaspace (in bytes)share/runtime/globals.hpp
MinMetaspaceFreeRatiouintxruntime40
range(0, 99)
productThe minimum percentage of Metaspace free after GC to avoid expansionshare/runtime/globals.hpp
MinOopMapAllocationintxruntime8developMinimum number of OopMap entries in an OopMapSetshare/runtime/globals.hpp
MinPassesBeforeFlushintxruntime10
range(0, max_intx)
productDIAGNOSTICshare/runtime/globals.hpp
MinRAMFractionDeprecated in JDK10uintxgc2
range(1, max_uintx)
productMinimum fraction (1/n) of real memory used for maximum heap size on systems with small physical memory size. Deprecated, use MinRAMPercentage insteadshare/gc/shared/gc_globals.hpp
MinRAMPercentagedoublegc50.0
range(0.0, 100.0)
productMinimum percentage of real memory used for maximum heapsize on systems with small physical memory sizeshare/gc/shared/gc_globals.hpp
MinSurvivorRatiouintxgc3
range(3, max_uintx)
productMinimum ratio of young generation/survivor space sizeshare/gc/shared/gc_globals.hpp
MinTLABSizesize_tgc2*K
range(1, max_uintx/2)
productMinimum allowed TLAB size (in bytes)share/gc/shared/gc_globals.hpp
MonitorUsedDeflationThresholdintxruntime90
range(0, 100)
productEXPERIMENTALshare/runtime/globals.hpp
MonomorphicArrayCheckboolc2truedevelopUncommon-trap array store checks that require full type checkshare/opto/c2_globals.hpp
MultiArrayExpandLimitintxc26
range(0, max_jint)
productMaximum number of individual allocations in an inline-expanded multianewarray instructionshare/opto/c2_globals.hpp
NMethodSizeLimitintxc1(64*K)*wordSize
range(0, max_jint)
developMaximum size of a compiled method.share/c1/c1_globals.hpp
NUMAChunkResizeWeightuintxruntime20
range(0, 100)
productPercentage (0-100) used to weight the current sample when computing exponentially decaying average for AdaptiveNUMAChunkSizingshare/runtime/globals.hpp
NUMAInterleaveGranularitysize_truntime2*MproductGranularity to use for NUMA interleaving on Windows OSshare/runtime/globals.hpp
NUMAPageScanRateuintxruntime256
range(0, max_uintx)
productMaximum number of pages to include in the page scan procedureshare/runtime/globals.hpp
NUMASpaceResizeRatesize_truntime1*G
range(0, max_uintx)
productDo not reallocate more than this amount per collectionshare/runtime/globals.hpp
NUMAStatsboolruntimefalseproductPrint NUMA stats in detailed heap informationshare/runtime/globals.hpp
NativeMemoryTrackingccstrruntimeoffproductNative memory tracking optionsshare/runtime/globals.hpp
NearCpoolboolaarch64trueproductconstant pool is close to instructionscpu/aarch64/globals_aarch64.hpp
NestedInliningSizeRatiointxc190
range(0, 100)
developPercentage of prev. allowed inline size in recursive inliningshare/c1/c1_globals.hpp
NeverActAsServerClassMachineboolaarch64truedefine_pd_globalcpu/aarch64/c1_globals_aarch64.hpp
NeverActAsServerClassMachineboolarmfalsedefine_pd_globalcpu/arm/c2_globals_arm.hpp
NeverActAsServerClassMachineboolcompilertruedefine_pd_globalshare/compiler/compiler_globals.hpp
NeverActAsServerClassMachineboolgcproduct_pdNever act like a server-class machineshare/gc/shared/gc_globals.hpp
NeverActAsServerClassMachineboolppctruedefine_pd_globalcpu/ppc/c1_globals_ppc.hpp
NeverActAsServerClassMachinebools390falsedefine_pd_globalcpu/s390/c2_globals_s390.hpp
NeverActAsServerClassMachineboolx86truedefine_pd_globalcpu/x86/c1_globals_x86.hpp
NeverTenureboolgcfalseproductNever tenure objects in eden, may tenure on overflow (ParallelGC only)share/gc/shared/gc_globals.hpp
NewCodeParameterintxruntime0developTesting Only: Create a dedicated integer parameter before putbackshare/runtime/globals.hpp
NewRatiouintxgc2
range(0, max_uintx-1)
productRatio of old/new generation sizesshare/gc/shared/gc_globals.hpp
NewSizeThreadIncreaseintxaarch644*Kdefine_pd_globalcpu/aarch64/c1_globals_aarch64.hpp
NewSizeThreadIncreasesize_tarmScaleForWordSize(4*K)define_pd_globalcpu/arm/c2_globals_arm.hpp
NewSizeThreadIncreasesize_tcompiler4*Kdefine_pd_globalshare/compiler/compiler_globals.hpp
NewSizeThreadIncreasesize_tgcproduct_pdAdditional size added to desired new generation size per non-daemon thread (in bytes)share/gc/shared/gc_globals.hpp
NewSizeThreadIncreasesize_tppc16*Kdefine_pd_globalcpu/ppc/c1_globals_ppc.hpp
NewSizeThreadIncreasesize_ts390ScaleForWordSize(4*K)define_pd_globalcpu/s390/c2_globals_s390.hpp
NewSizeThreadIncreasesize_tx864*Kdefine_pd_globalcpu/x86/c1_globals_x86.hpp
NewSizesize_tgcScaleForWordSize(1*M)productInitial new generation size (in bytes)share/gc/shared/gc_globals.hpp
NmethodSweepActivityintxruntime10
range(0, 2000)
productRemoves cold nmethods from code cache if > 0. Higher values result in more aggressive sweepingshare/runtime/globals.hpp
NodeCountInliningCutoffintxc218000
range(0, max_jint)
developIf parser node generation exceeds limit stop inliningshare/opto/c2_globals.hpp
NodeCountInliningStepintxc21000
range(0, max_jint)
developTarget size of warm calls inlined between optimization passesshare/opto/c2_globals.hpp
NodeLimitFudgeFactorintxc22000productFudge Factor for certain optimizationsshare/opto/c2_globals.hpp
NonNMethodCodeHeapSizeintxaarch645*Mdefine_pd_globalcpu/aarch64/c1_globals_aarch64.hpp
NonNMethodCodeHeapSizesize_tarm5*Mdefine_pd_globalcpu/arm/c2_globals_arm.hpp
NonNMethodCodeHeapSizeuintxcompiler32*Mdefine_pd_globalshare/compiler/compiler_globals.hpp
NonNMethodCodeHeapSizeuintxruntimeproduct_pdSize of code heap with non-nmethods (in bytes)share/runtime/globals.hpp
NonNMethodCodeHeapSizeuintxppc5*Mdefine_pd_globalcpu/ppc/c1_globals_ppc.hpp
NonNMethodCodeHeapSizeuintxs3905*Mdefine_pd_globalcpu/s390/c2_globals_s390.hpp
NonNMethodCodeHeapSizeuintxx865*Mdefine_pd_globalcpu/x86/c1_globals_x86.hpp
NonProfiledCodeHeapSizeintxaarch6413*Mdefine_pd_globalcpu/aarch64/c1_globals_aarch64.hpp
NonProfiledCodeHeapSizesize_tarm13*Mdefine_pd_globalcpu/arm/c2_globals_arm.hpp
NonProfiledCodeHeapSizeuintxcompiler0define_pd_globalshare/compiler/compiler_globals.hpp
NonProfiledCodeHeapSizeuintxruntimeproduct_pdSize of code heap with non-profiled methods (in bytes)share/runtime/globals.hpp
NonProfiledCodeHeapSizeuintxppc13*Mdefine_pd_globalcpu/ppc/c1_globals_ppc.hpp
NonProfiledCodeHeapSizeuintxs39021*Mdefine_pd_globalcpu/s390/c2_globals_s390.hpp
NonProfiledCodeHeapSizeuintxx8613*Mdefine_pd_globalcpu/x86/c1_globals_x86.hpp
NumberOfLoopInstrToAlignintxc24
range(0, max_jint)
productNumber of first instructions in a loop to alignshare/opto/c2_globals.hpp
OSROnlyBCIintxruntime-1developOSR only at this bci. Negative values mean exclude that bcishare/runtime/globals.hpp
ObjArrayMarkingStrideuintxgc2048developNumber of object array elements to push onto the marking stack before pushing a continuation entryshare/gc/shared/gc_globals.hpp
ObjectAlignmentInBytesintxruntime8
range(8, 256)
productDefault object alignment in bytes, 8 is minimumshare/runtime/globals.hpp
ObjectCountCutOffPercentdoubleruntime0.5
range(0.0, 100.0)
productEXPERIMENTALshare/runtime/globals.hpp
OldPLABSizesize_tgc1024productSize of old gen promotion LAB's (in HeapWords)share/gc/shared/gc_globals.hpp
OldSizesize_tgcScaleForWordSize(4*M)
range(0, max_uintx)
productInitial tenured generation size (in bytes)share/gc/shared/gc_globals.hpp
OmitStackTraceInFastThrowboolruntimetrueproductOmit backtraces for some 'hot' exceptions in optimized codeshare/runtime/globals.hpp
OnErrorccstrlistruntimeRun user-defined commands on fatal error; see VMError.cpp for examplesproductshare/runtime/globals.hpp
OnOutOfMemoryErrorccstrlistruntimeRun user-defined commands on first java.lang.OutOfMemoryErrorproductshare/runtime/globals.hpp
OnStackReplacePercentageintxaarch64933define_pd_globalcpu/aarch64/c1_globals_aarch64.hpp
OnStackReplacePercentageintxarm140define_pd_globalcpu/arm/c2_globals_arm.hpp
OnStackReplacePercentageintxcompiler0define_pd_globalshare/compiler/compiler_globals.hpp
OnStackReplacePercentageintxruntimeproduct_pdNON_TIERED number of method invocations/branches (expressed as % of CompileThreshold) before (re-)compiling OSR codeshare/runtime/globals.hpp
OnStackReplacePercentageintxppc1400define_pd_globalcpu/ppc/c1_globals_ppc.hpp
OnStackReplacePercentageintxs390140define_pd_globalcpu/s390/c2_globals_s390.hpp
OnStackReplacePercentageintxx86933define_pd_globalcpu/x86/c1_globals_x86.hpp
OptimizeExpensiveOpsboolc2trueproductDIAGNOSTICshare/opto/c2_globals.hpp
OptimizeFillboolc2true PPC64_ONLY(&& false)productconvert fill/copy loops into intrinsicshare/opto/c2_globals.hpp
OptimizeIfOpsboolc1truedevelopOptimize multiple IfOpsshare/c1/c1_globals.hpp
OptimizePollingPageLocationboolaixtrueproductOptimize the location of the polling page used for Safepointsos/aix/globals_aix.hpp
OptimizePtrCompareboolc2trueproductUse escape analysis to optimize pointers compareshare/opto/c2_globals.hpp
OptimizeSinglePrecisionboolaarch64truedefine_pd_globalcpu/aarch64/c1_globals_aarch64.hpp
OptimizeSinglePrecisionboolarmtruedefine_pd_globalcpu/arm/c1_globals_arm.hpp
OptimizeSinglePrecisionboolppcfalsedefine_pd_globalcpu/ppc/c1_globals_ppc.hpp
OptimizeSinglePrecisionbools390falsedefine_pd_globalcpu/s390/c1_globals_s390.hpp
OptimizeSinglePrecisionboolx86truedefine_pd_globalcpu/x86/c1_globals_x86.hpp
OptimizeStringConcatboolc2trueproductOptimize the construction of Strings by StringBuildershare/opto/c2_globals.hpp
OptimizeUnsafesboolc1truedevelopOptimize raw unsafe opsshare/c1/c1_globals.hpp
OptoBlockListSizeintxc28
range(0, max_jint)
developStarting allocation size of Block_List data structuresshare/opto/c2_globals.hpp
OptoBreakpointC2Rboolc2falsenotproductinsert breakpoint at runtime stub entryshare/opto/c2_globals.hpp
OptoBreakpointOSRboolc2falsenotproductinsert breakpoint at osr method entryshare/opto/c2_globals.hpp
OptoBreakpointboolc2falsedevelopinsert breakpoint at method entryshare/opto/c2_globals.hpp
OptoBundlingboolaarch64falsedefine_pd_globalcpu/aarch64/c2_globals_aarch64.hpp
OptoBundlingboolarmfalsedefine_pd_globalcpu/arm/c2_globals_arm.hpp
OptoBundlingboolc2product_pdGenerate nops to fill i-cache linesshare/opto/c2_globals.hpp
OptoBundlingboolppcfalsedefine_pd_globalcpu/ppc/c2_globals_ppc.hpp
OptoBundlingbools390falsedefine_pd_globalcpu/s390/c2_globals_s390.hpp
OptoBundlingboolx86falsedefine_pd_globalcpu/x86/c2_globals_x86.hpp
OptoCoalesceboolc2truedevelopUse Conservative Copy Coalescing in the Register Allocatorshare/opto/c2_globals.hpp
OptoLoopAlignmentintxaarch6416define_pd_globalcpu/aarch64/globals_aarch64.hpp
OptoLoopAlignmentintxarm16define_pd_globalcpu/arm/globals_arm.hpp
OptoLoopAlignmentintxruntimeproduct_pdAlign inner loops to zero relative to this modulusshare/runtime/globals.hpp
OptoLoopAlignmentintxppc16define_pd_globalcpu/ppc/globals_ppc.hpp
OptoLoopAlignmentintxs3902define_pd_globalcpu/s390/globals_s390.hpp
OptoLoopAlignmentintxx8616define_pd_globalcpu/x86/globals_x86.hpp
OptoLoopAlignmentintxzero16define_pd_globalcpu/zero/globals_zero.hpp
OptoNoExecuteboolc2falsenotproductAttempt to parse and compile but do not execute generated codeshare/opto/c2_globals.hpp
OptoNodeListSizeintxc24
range(0, max_jint)
developStarting allocation size of Node_List data structuresshare/opto/c2_globals.hpp
OptoPeepholeAtintxc2-1developApply peephole optimizations to this peephole ruleshare/opto/c2_globals.hpp
OptoPeepholeboolaarch64falsedefine_pd_globalcpu/aarch64/c2_globals_aarch64.hpp
OptoPeepholeboolarmfalsedefine_pd_globalcpu/arm/c2_globals_arm.hpp
OptoPeepholeboolc2develop_pdApply peephole optimizations after register allocationshare/opto/c2_globals.hpp
OptoPeepholeboolppcfalsedefine_pd_globalcpu/ppc/c2_globals_ppc.hpp
OptoPeepholebools390falsedefine_pd_globalcpu/s390/c2_globals_s390.hpp
OptoPeepholeboolx86truedefine_pd_globalcpu/x86/c2_globals_x86.hpp
OptoPrologueNopsintxc20
range(0, 128)
developInsert this many extra nop instructions in the prologue of every nmethodshare/opto/c2_globals.hpp
OptoRegSchedulingboolaarch64falsedefine_pd_globalcpu/aarch64/c2_globals_aarch64.hpp
OptoRegSchedulingboolarmfalsedefine_pd_globalcpu/arm/c2_globals_arm.hpp
OptoRegSchedulingboolc2product_pdInstruction Scheduling before register allocation for pressureshare/opto/c2_globals.hpp
OptoRegSchedulingboolppcfalsedefine_pd_globalcpu/ppc/c2_globals_ppc.hpp
OptoRegSchedulingbools390falsedefine_pd_globalcpu/s390/c2_globals_s390.hpp
OptoRegSchedulingboolx86truedefine_pd_globalcpu/x86/c2_globals_x86.hpp
OptoRemoveUselessboolc2truedevelopRemove useless nodes after parsingshare/opto/c2_globals.hpp
OptoSchedulingboolaarch64falsedefine_pd_globalcpu/aarch64/c2_globals_aarch64.hpp
OptoSchedulingboolarmtruedefine_pd_globalcpu/arm/c2_globals_arm.hpp
OptoSchedulingboolc2product_pdInstruction Scheduling after register allocationshare/opto/c2_globals.hpp
OptoSchedulingboolppcfalsedefine_pd_globalcpu/ppc/c2_globals_ppc.hpp
OptoSchedulingbools390falsedefine_pd_globalcpu/s390/c2_globals_s390.hpp
OptoSchedulingboolx86falsedefine_pd_globalcpu/x86/c2_globals_x86.hpp
PLABWeightuintxgc75
range(0, 100)
productPercentage (0-100) used to weight the current sample when computing exponentially decaying average for ResizePLABshare/gc/shared/gc_globals.hpp
PSAdaptiveSizePolicyResizeVirtualSpaceAlotintxgc-1
range(-1, 1)
developResize the virtual spaces of the young or old generationsshare/gc/shared/gc_globals.hpp
PSChunkLargeArraysboolgctrueproductProcess large arrays in chunksshare/gc/parallel/parallel_globals.hpp
ParGCArrayScanChunkintgc50
range(1, max_jint/3)
productScan a subset of object array and push remainder, if array is bigger than thisshare/gc/shared/gc_globals.hpp
ParallelGCBufferWastePctuintxgc10
range(0, 100)
productWasted fraction of parallel allocation buffershare/gc/shared/gc_globals.hpp
ParallelGCThreadsuintgc0productNumber of parallel threads parallel gc will useshare/gc/shared/gc_globals.hpp
ParallelOldDeadWoodLimiterMeansize_tgc50
range(0, 100)
productThe mean used by the parallel compact dead wood limiter (a number between 0-100)share/gc/parallel/parallel_globals.hpp
ParallelOldDeadWoodLimiterStdDevsize_tgc80
range(0, 100)
productThe standard deviation used by the parallel compact dead wood limiter (a number between 0-100)share/gc/parallel/parallel_globals.hpp
ParallelRefProcBalancingEnabledboolgctrueproductEnable balancing of reference processing queuesshare/gc/shared/gc_globals.hpp
ParallelRefProcEnabledboolgcfalseproductEnable parallel reference processing whenever possibleshare/gc/shared/gc_globals.hpp
PartialPeelAtUnsignedTestsboolc2trueproductPartial peel at unsigned tests if no signed test existsshare/opto/c2_globals.hpp
PartialPeelLoopboolc2trueproductPartial peel (rotate) loopsshare/opto/c2_globals.hpp
PartialPeelNewPhiDeltaintxc20
range(0, max_jint)
productAdditional phis that can be created by partial peelingshare/opto/c2_globals.hpp
PatchALotboolc1falsedevelopMarks all fields as having unloaded classesshare/c1/c1_globals.hpp
PauseAtExitboolruntimefalseproductDIAGNOSTICshare/runtime/globals.hpp
PauseAtStartupFileccstrruntimeNULLproductDIAGNOSTICshare/runtime/globals.hpp
PauseAtStartupboolruntimefalseproductDIAGNOSTICshare/runtime/globals.hpp
PausePaddinguintxgc1
range(0, max_juint)
productHow much buffer to keep for pause timeshare/gc/shared/gc_globals.hpp
PerBytecodeRecompilationCutoffintxruntime200
range(-1, max_intx)
productPer-BCI limit on repeated recompilation (-1=>'Inf')share/runtime/globals.hpp
PerBytecodeTrapLimitintxruntime4
range(0, max_jint)
productLimit on traps (of one kind) at a particular BCIshare/runtime/globals.hpp
PerMethodRecompilationCutoffintxruntime400
range(-1, max_intx)
productAfter recompiling N times, stay in the interpreter (-1=>'Inf')share/runtime/globals.hpp
PerMethodSpecTrapLimitintxruntime5000
range(0, max_jint)
productEXPERIMENTALshare/runtime/globals.hpp
PerMethodTrapLimitintxruntime100
range(0, max_jint)
productLimit on traps (of one kind) in a method (includes inlines)share/runtime/globals.hpp
PerfAllowAtExitRegistrationboolruntimefalseproductAllow registration of atexit() methodsshare/runtime/globals.hpp
PerfBypassFileSystemCheckboolruntimefalseproductBypass Win32 file system criteria checks (Windows Only)share/runtime/globals.hpp
PerfDataMemorySizeintxruntime32*K
range(128, 32*64*K)
productSize of performance data memory region. Will be rounded up to a multiple of the native os page size.share/runtime/globals.hpp
PerfDataSamplingIntervalintxruntime50
range(PeriodicTask::min_interval, max_jint)
productData sampling interval (in milliseconds)share/runtime/globals.hpp
PerfDataSaveFileccstrruntimeNULLproductSave PerfData memory to the specified absolute pathname. The string %p in the file name (if present) will be replaced by pidshare/runtime/globals.hpp
PerfDataSaveToFileboolruntimefalseproductSave PerfData memory to hsperfdata_<pid> file on exitshare/runtime/globals.hpp
PerfDisableSharedMemboolruntimefalseproductStore performance data in standard memoryshare/runtime/globals.hpp
PerfMaxStringConstLengthintxruntime1024
range(32, 32*K)
productMaximum PerfStringConstant string length before truncationshare/runtime/globals.hpp
PinAllInstructionsboolc1falsedevelopAll instructions are pinnedshare/c1/c1_globals.hpp
PoisonOSREntryboolc2truedevelopDetect abnormal calls to OSR codeshare/opto/c2_globals.hpp
PostLoopMultiversioningboolc2falseproductEXPERIMENTALshare/opto/c2_globals.hpp
PowerArchitecturePPC64uintxppc0productDIAGNOSTICcpu/ppc/globals_ppc.hpp
PreTouchParallelChunkSizesize_tgc1 * G
range(1, SIZE_MAX / 2)
productPer-thread chunk size for parallel memory pre-touch.share/gc/shared/gc_globals.hpp
PreallocatedOutOfMemoryErrorCountuintxruntime4developNumber of OutOfMemoryErrors preallocated with backtraceshare/runtime/globals.hpp
PreferContainerQuotaForCPUCountboollinuxtrueproductCalculate the container CPU availability based on the value of quotas (if set), when true. Otherwise, use the CPU shares value, provided it is less than quota.os/linux/globals_linux.hpp
PreferInterpreterNativeStubsboolaarch64falsedefine_pd_globalcpu/aarch64/c1_globals_aarch64.hpp
PreferInterpreterNativeStubsboolarmfalsedefine_pd_globalcpu/arm/c2_globals_arm.hpp
PreferInterpreterNativeStubsboolcompilertruedefine_pd_globalshare/compiler/compiler_globals.hpp
PreferInterpreterNativeStubsboolruntimeproduct_pdUse always interpreter stubs for native methods invoked via interpretershare/runtime/globals.hpp
PreferInterpreterNativeStubsboolppcfalsedefine_pd_globalcpu/ppc/c1_globals_ppc.hpp
PreferInterpreterNativeStubsbools390falsedefine_pd_globalcpu/s390/c2_globals_s390.hpp
PreferInterpreterNativeStubsboolx86falsedefine_pd_globalcpu/x86/c1_globals_x86.hpp
PreferLAoverADDbools390falseproductDIAGNOSTICcpu/s390/globals_s390.hpp
PrefetchCopyIntervalInBytesintxgc-1
range(-1, max_jint)
productHow far ahead to prefetch destination area (<= 0 means off)share/gc/shared/gc_globals.hpp
PrefetchFieldsAheadintxgc-1
range(-1, max_jint)
productHow many fields ahead to prefetch in oop scan (<= 0 means off)share/gc/shared/gc_globals.hpp
PrefetchScanIntervalInBytesintxgc-1
range(-1, max_jint)
productHow far ahead to prefetch scan area (<= 0 means off)share/gc/shared/gc_globals.hpp
PreserveAllAnnotationsboolruntimefalseproductPreserve RuntimeInvisibleAnnotations as well as RuntimeVisibleAnnotationsshare/runtime/globals.hpp
PreserveFramePointerboolaarch64falsedefine_pd_globalcpu/aarch64/globals_aarch64.hpp
PreserveFramePointerboolarmfalsedefine_pd_globalcpu/arm/globals_arm.hpp
PreserveFramePointerboolruntimeproduct_pdUse the FP register for holding the frame pointer and not as a general purpose register.share/runtime/globals.hpp
PreserveFramePointerboolppcfalsedefine_pd_globalcpu/ppc/globals_ppc.hpp
PreserveFramePointerbools390falsedefine_pd_globalcpu/s390/globals_s390.hpp
PreserveFramePointerboolx86falsedefine_pd_globalcpu/x86/globals_x86.hpp
PreserveFramePointerboolzerofalsedefine_pd_globalcpu/zero/globals_zero.hpp
PretenureSizeThresholdsize_tgc0
range(0, max_uintx)
productMaximum size in bytes of objects allocated in DefNew generation; zero means no maximumshare/gc/shared/gc_globals.hpp
PrintAOTStatisticsboolruntimefalsenotproductPrint AOT statisticsshare/runtime/globals.hpp
PrintAOTboolruntimefalseproductEXPERIMENTALshare/runtime/globals.hpp
PrintAdapterHandlersboolruntimefalseproductDIAGNOSTICshare/runtime/globals.hpp
PrintAssemblyOptionsccstrruntimeNULLproductDIAGNOSTICshare/runtime/globals.hpp
PrintAssemblyboolruntimefalseproductDIAGNOSTICshare/runtime/globals.hpp
PrintBailoutsboolc1falsedevelopPrint bailout and its reasonshare/c1/c1_globals.hpp
PrintBiasedLockingStatisticsDeprecated in JDK15
Obsoleted in JDK16
Expired in JDK17
boolruntimefalseproductDIAGNOSTICshare/runtime/globals.hpp
PrintBlockEliminationboolc1falsedevelopPrint basic block eliminationshare/c1/c1_globals.hpp
PrintBootstrapbooljvmcitrueproductEXPERIMENTALshare/jvmci/jvmci_globals.hpp
PrintBytecodeHistogramboolruntimefalsedevelopPrint histogram of the executed bytecodesshare/runtime/globals.hpp
PrintBytecodePairHistogramboolruntimefalsedevelopPrint histogram of the executed bytecode pairsshare/runtime/globals.hpp
PrintC1Statisticsboolc1falsenotproductPrint Compiler1 statisticsshare/c1/c1_globals.hpp
PrintCEEboolc1falsedevelopPrint Conditional Expression Eliminationshare/c1/c1_globals.hpp
PrintCFG0boolc1falsenotproductPrint control flow graph after constructionshare/c1/c1_globals.hpp
PrintCFG1boolc1falsenotproductPrint control flow graph after optimizationsshare/c1/c1_globals.hpp
PrintCFG2boolc1falsenotproductPrint control flow graph before code generationshare/c1/c1_globals.hpp
PrintCFGBlockFreqboolc2falsedevelopPrint CFG block freqenciesshare/opto/c2_globals.hpp
PrintCFGToFileboolc1falsedevelopprint control flow graph to a separate file during compilationshare/c1/c1_globals.hpp
PrintCFGboolc1falsenotproductPrint control flow graph after each changeshare/c1/c1_globals.hpp
PrintCanonicalizationboolc1falsedevelopPrint graph node canonicalizationshare/c1/c1_globals.hpp
PrintClassHistogramboolruntimefalseproductMANAGEABLEshare/runtime/globals.hpp
PrintCodeCache2boolruntimefalsedevelopPrint detailed usage information on the code cache when exitingshare/runtime/globals.hpp
PrintCodeCacheExtensionboolruntimefalsedevelopPrint extension of code cacheshare/runtime/globals.hpp
PrintCodeCacheOnCompilationboolruntimefalseproductPrint the code cache memory usage each time a method is compiledshare/runtime/globals.hpp
PrintCodeCacheboolruntimefalseproductPrint the code cache memory usage when exitingshare/runtime/globals.hpp
PrintCodeHeapAnalyticsboolruntimefalseproductDIAGNOSTICshare/runtime/globals.hpp
PrintCommandLineFlagsboolruntimefalseproductPrint flags specified on command line or set by ergonomicsshare/runtime/globals.hpp
PrintCompilation2boolruntimefalseproductDIAGNOSTICshare/runtime/globals.hpp
PrintCompilationboolruntimefalseproductPrint compilationsshare/runtime/globals.hpp
PrintConcurrentLocksboolruntimefalseproductMANAGEABLEshare/runtime/globals.hpp
PrintDebugInfoboolruntimefalsedevelopPrint debug information for all nmethods when generatedshare/runtime/globals.hpp
PrintDeoptimizationDetailsboolruntimefalsedevelopPrint more information about deoptimizationshare/runtime/globals.hpp
PrintDependenciesboolruntimefalsedevelopPrint dependency information for all nmethods when generatedshare/runtime/globals.hpp
PrintDominatorsboolc2falsedevelopPrint out dominator trees for GVNshare/opto/c2_globals.hpp
PrintEliminateAllocationsboolc2falsenotproductPrint out when allocations are eliminatedshare/opto/c2_globals.hpp
PrintEliminateLocksboolc2falsenotproductPrint out when locks are eliminatedshare/opto/c2_globals.hpp
PrintEscapeAnalysisboolc2falsenotproductPrint the results of escape analysisshare/opto/c2_globals.hpp
PrintExceptionHandlersboolruntimefalsedevelopPrint exception handler tables for all nmethods when generatedshare/runtime/globals.hpp
PrintExtendedThreadInfoboolruntimetrueproductPrint more information in thread dumpshare/runtime/globals.hpp
PrintFieldLayoutboolruntimefalsenotproductPrint field layout for each classshare/runtime/globals.hpp
PrintFlagsFinalboolruntimefalseproductPrint all VM flags after argument and ergonomic processingshare/runtime/globals.hpp
PrintFlagsInitialboolruntimefalseproductPrint all VM flags before argument processing and exit VMshare/runtime/globals.hpp
PrintFlagsRangesboolruntimefalseproductPrint VM flags and their rangesshare/runtime/globals.hpp
PrintFlagsWithCommentsboolruntimefalsenotproductPrint all VM flags with default values and descriptions and exitshare/runtime/globals.hpp
PrintFrameConverterAssemblyboolc2falsenotproductPrint New compiler assembly output for frame convertersshare/opto/c2_globals.hpp
PrintGCDetailsboolgcfalseproductPrint more details at garbage collection. Deprecated, use -Xlog:gc* instead.share/gc/shared/gc_globals.hpp
PrintGCboolgcfalseproductPrint message at garbage collection. Deprecated, use -Xlog:gc instead.share/gc/shared/gc_globals.hpp
PrintHeapAtSIGBREAKboolruntimetrueproductPrint heap layout in response to SIGBREAKshare/runtime/globals.hpp
PrintIR0boolc1falsenotproductPrint full intermediate representation after constructionshare/c1/c1_globals.hpp
PrintIR1boolc1falsenotproductPrint full intermediate representation after optimizationsshare/c1/c1_globals.hpp
PrintIR2boolc1falsenotproductPrint full intermediate representation before code generationshare/c1/c1_globals.hpp
PrintIRDuringConstructionboolc1falsenotproductPrint IR as it's being constructed (helpful for debugging frontend)share/c1/c1_globals.hpp
PrintIRWithLIRboolc1falsenotproductPrint IR instructions with generated LIRshare/c1/c1_globals.hpp
PrintIRboolc1falsenotproductPrint full intermediate representation after each changeshare/c1/c1_globals.hpp
PrintIdealGraphAddressccstrc2127.0.0.1notproductIP address to connect to visualizershare/opto/c2_globals.hpp
PrintIdealGraphFileccstrc2NULLnotproductFile to dump ideal graph to. If set overrides the use of the networkshare/opto/c2_globals.hpp
PrintIdealGraphLevelintxc20
range(-1, 4)
notproductLevel of detail of the ideal graph printout. System-wide value, -1=printing is disabled,
0=print nothing except IGVPrintLevel directives,
4=all details printed. Level of detail of printouts can be set on a per-method level as well by using CompileCommand=option.
share/opto/c2_globals.hpp
PrintIdealGraphPortintxc24444
range(0, SHRT_MAX)
notproductIdeal graph printer to network portshare/opto/c2_globals.hpp
PrintIdealGraphboolc2falsenotproductPrint ideal graph to XML file / network interface. By default attempts to connect to the visualizer on a socket.share/opto/c2_globals.hpp
PrintIdealIndentThresholduintxc20notproductA depth threshold of ideal graph. Indentation is disabled when users attempt to dump an ideal graph deeper than it.share/opto/c2_globals.hpp
PrintIdealNodeCountboolc2falsenotproductPrint liveness counts of ideal nodesshare/opto/c2_globals.hpp
PrintIdealboolc2falsenotproductPrint ideal graph before code generationshare/opto/c2_globals.hpp
PrintInitialBlockListboolc1falsenotproductPrint block list of BlockListBuildershare/c1/c1_globals.hpp
PrintInliningboolruntimefalseproductDIAGNOSTICshare/runtime/globals.hpp
PrintInterpreterboolruntimefalseproductDIAGNOSTICshare/runtime/globals.hpp
PrintIntrinsicsboolc2falseproductDIAGNOSTICshare/opto/c2_globals.hpp
PrintLIRWithAssemblyboolc1falsenotproductShow LIR instruction with generated assemblyshare/c1/c1_globals.hpp
PrintLIRboolc1falsedevelopprint low-level IRshare/c1/c1_globals.hpp
PrintLockStatisticsboolc2falsenotproductPrint precise statistics on the dynamic lock usageshare/opto/c2_globals.hpp
PrintMethodDataboolruntimefalseproductDIAGNOSTICshare/runtime/globals.hpp
PrintMethodFlushingStatisticsboolruntimefalseproductDIAGNOSTICshare/runtime/globals.hpp
PrintMethodFlushingboolruntimefalsedevelopPrint the nmethods being flushedshare/runtime/globals.hpp
PrintMethodHandleStubsboolruntimefalseproductDIAGNOSTICshare/runtime/globals.hpp
PrintMiscellaneousboolruntimefalsedevelopPrint uncategorized debugging information (requires +Verbose)share/runtime/globals.hpp
PrintNMTStatisticsboolruntimefalseproductDIAGNOSTICshare/runtime/globals.hpp
PrintNMethodStatisticsboolruntimefalsenotproductPrint a summary statistic for the generated nmethodsshare/runtime/globals.hpp
PrintNMethodsboolruntimefalseproductDIAGNOSTICshare/runtime/globals.hpp
PrintNativeNMethodsboolruntimefalseproductDIAGNOSTICshare/runtime/globals.hpp
PrintNotLoadedboolc1falsedevelopPrints where classes are not loaded during code generationshare/c1/c1_globals.hpp
PrintNullCheckEliminationboolc1falsedevelopPrint null check eliminationshare/c1/c1_globals.hpp
PrintOptimizePtrCompareboolc2falsenotproductPrint information about optimized pointers compareshare/opto/c2_globals.hpp
PrintOptimizeStringConcatboolc2falsenotproductPrint information about transformations performed on Stringsshare/opto/c2_globals.hpp
PrintOptoAssemblyboolc2falseproductDIAGNOSTICshare/opto/c2_globals.hpp
PrintOptoInliningboolc2falsenotproductPrint compiler2 inlining decisionsshare/opto/c2_globals.hpp
PrintOptoPeepholeboolc2falsenotproductPrint New compiler peephole replacementsshare/opto/c2_globals.hpp
PrintOptoStatisticsboolc2falsenotproductPrint New compiler statisticsshare/opto/c2_globals.hpp
PrintOptoboolc2falsenotproductPrint compiler2 attemptsshare/opto/c2_globals.hpp
PrintParseStatisticsboolc2falsenotproductPrint nodes, transforms and new values made per bytecode parsedshare/opto/c2_globals.hpp
PrintPhiFunctionsboolc1falsenotproductPrint phi functions when they are created and simplifiedshare/c1/c1_globals.hpp
PrintPreciseBiasedLockingStatisticsDeprecated in JDK15
Obsoleted in JDK16
Expired in JDK17
boolc2falseproductDIAGNOSTICshare/opto/c2_globals.hpp
PrintPreciseRTMLockingStatisticsboolc2falseproductDIAGNOSTICshare/opto/c2_globals.hpp
PrintRelocationsboolruntimefalsedevelopPrint relocation information for all nmethods when generatedshare/runtime/globals.hpp
PrintRewritesboolruntimefalsenotproductPrint methods that are being rewrittenshare/runtime/globals.hpp
PrintSharedArchiveAndExitboolruntimefalseproductPrint shared archive file contentsshare/runtime/globals.hpp
PrintSharedDictionaryboolruntimefalseproductIf PrintSharedArchiveAndExit is true, also print the shared dictionaryshare/runtime/globals.hpp
PrintSignatureHandlersboolruntimefalseproductDIAGNOSTICshare/runtime/globals.hpp
PrintSimpleStubsboolc1falsenotproductPrint SimpleStubsshare/c1/c1_globals.hpp
PrintStringTableStatisticsboolruntimefalseproductprint statistics about the StringTable and SymbolTableshare/runtime/globals.hpp
PrintStubCodeboolruntimefalseproductDIAGNOSTICshare/runtime/globals.hpp
PrintSymbolTableSizeHistogramboolruntimefalsenotproductprint histogram of the symbol tableshare/runtime/globals.hpp
PrintSystemDictionaryAtExitboolruntimefalsenotproductPrint the system dictionary at exitshare/runtime/globals.hpp
PrintTieredEventsboolruntimefalseproductPrint tiered events notificationsshare/runtime/globals.hpp
PrintTouchedMethodsAtExitboolruntimefalseproductDIAGNOSTICshare/runtime/globals.hpp
PrintUnsafeOptimizationboolc1falsedevelopPrint optimization of raw unsafe opsshare/c1/c1_globals.hpp
PrintVMMessagesboolruntimetruedevelopPrint VM messages on consoleshare/runtime/globals.hpp
PrintVMOptionsboolruntimefalseproductPrint flags that appeared on the command lineshare/runtime/globals.hpp
PrintValueNumberingboolc1falsedevelopPrint Value Numberingshare/c1/c1_globals.hpp
PrintVtableStatsboolruntimefalsenotproductprint vtables stats at end of runshare/runtime/globals.hpp
PrintWarningsboolruntimetrueproductPrint JVM warnings to output streamshare/runtime/globals.hpp
ProcessDistributionStrideuintxruntime4
range(0, max_juint)
productStride through processors when distributing processesshare/runtime/globals.hpp
ProfileDynamicTypesboolc2trueproductDIAGNOSTICshare/opto/c2_globals.hpp
ProfileInterpreterboolaarch64falsedefine_pd_globalcpu/aarch64/c1_globals_aarch64.hpp
ProfileInterpreterboolarmtruedefine_pd_globalcpu/arm/c2_globals_arm.hpp
ProfileInterpreterboolcompilerfalsedefine_pd_globalshare/compiler/compiler_globals.hpp
ProfileInterpreterboolruntimeproduct_pdProfile at the bytecode level during interpretationshare/runtime/globals.hpp
ProfileInterpreterboolppcfalsedefine_pd_globalcpu/ppc/c1_globals_ppc.hpp
ProfileInterpreterbools390truedefine_pd_globalcpu/s390/c2_globals_s390.hpp
ProfileInterpreterboolx86falsedefine_pd_globalcpu/x86/c1_globals_x86.hpp
ProfileMaturityPercentageintxruntime20
range(0, 100)
productnumber of method invocations/branches (expressed as % of CompileThreshold) before using the method's profileshare/runtime/globals.hpp
ProfileTrapsboolaarch64falsedefine_pd_globalcpu/aarch64/c1_globals_aarch64.hpp
ProfileTrapsboolarmtruedefine_pd_globalcpu/arm/c2_globals_arm.hpp
ProfileTrapsboolcompilerfalsedefine_pd_globalshare/compiler/compiler_globals.hpp
ProfileTrapsboolruntimedevelop_pdProfile deoptimization traps at the bytecode levelshare/runtime/globals.hpp
ProfileTrapsboolppcfalsedefine_pd_globalcpu/ppc/c1_globals_ppc.hpp
ProfileTrapsbools390truedefine_pd_globalcpu/s390/c2_globals_s390.hpp
ProfileTrapsboolx86falsedefine_pd_globalcpu/x86/c1_globals_x86.hpp
ProfiledCodeHeapSizeintxaarch6414*Mdefine_pd_globalcpu/aarch64/c1_globals_aarch64.hpp
ProfiledCodeHeapSizesize_tarm14*Mdefine_pd_globalcpu/arm/c2_globals_arm.hpp
ProfiledCodeHeapSizeuintxcompiler0define_pd_globalshare/compiler/compiler_globals.hpp
ProfiledCodeHeapSizeuintxruntimeproduct_pdSize of code heap with profiled methods (in bytes)share/runtime/globals.hpp
ProfiledCodeHeapSizeuintxppc14*Mdefine_pd_globalcpu/ppc/c1_globals_ppc.hpp
ProfiledCodeHeapSizeuintxs39022*Mdefine_pd_globalcpu/s390/c2_globals_s390.hpp
ProfiledCodeHeapSizeuintxx8614*Mdefine_pd_globalcpu/x86/c1_globals_x86.hpp
ProfilerNodeSizeintxruntime1024
range(0, 1024)
developSize in K to allocate for the Profile Nodes of each threadshare/runtime/globals.hpp
PromotedPaddinguintxgc3
range(0, max_juint)
productHow much buffer to keep for promotion failureshare/gc/shared/gc_globals.hpp
PromotionFailureALotCountuintxgc1000developNumber of promotion failures occurring at PLAB promotion attempts at young collectorsshare/gc/shared/gc_globals.hpp
PromotionFailureALotIntervaluintxgc5developTotal collections between promotion failures a lotshare/gc/shared/gc_globals.hpp
PromotionFailureALotboolgcfalsenotproductUse promotion failure handling on every youngest generation collectionshare/gc/shared/gc_globals.hpp
ProtectionDomainVerificationboolruntimetruedevelopVerify protection domain before resolution in system dictionaryshare/runtime/globals.hpp
QueuedAllocationWarningCountuintxgc0
range(0, max_uintx)
productNumber of times an allocation that queues behind a GC will retry before printing a warningshare/gc/shared/gc_globals.hpp
RTMAbortRatiointppc50
range(0, 100) /* natural range */
productEXPERIMENTALcpu/ppc/globals_ppc.hpp
RTMAbortRatiointx8650
range(0, 100) /* natural range */
productEXPERIMENTALcpu/x86/globals_x86.hpp
RTMAbortThresholdintppc1000
range(0, max_jint)
productEXPERIMENTALcpu/ppc/globals_ppc.hpp
RTMAbortThresholdintx861000
range(0, max_jint)
productEXPERIMENTALcpu/x86/globals_x86.hpp
RTMLockingCalculationDelayintxppc0productEXPERIMENTALcpu/ppc/globals_ppc.hpp
RTMLockingCalculationDelayintxx860productEXPERIMENTALcpu/x86/globals_x86.hpp
RTMLockingThresholdintppc10000
range(0, max_jint)
productEXPERIMENTALcpu/ppc/globals_ppc.hpp
RTMLockingThresholdintx8610000
range(0, max_jint)
productEXPERIMENTALcpu/x86/globals_x86.hpp
RTMRetryCountintppc5
range(0, max_jint)
productNumber of RTM retries on lock abort or busycpu/ppc/globals_ppc.hpp
RTMRetryCountintx865
range(0, max_jint)
productNumber of RTM retries on lock abort or busycpu/x86/globals_x86.hpp
RTMSpinLoopCountintppc100
range(0, 32767) /* immediate operand limit on ppc */
productEXPERIMENTALcpu/ppc/globals_ppc.hpp
RTMSpinLoopCountintx86100
range(0, max_jint)
productEXPERIMENTALcpu/x86/globals_x86.hpp
RTMTotalCountIncrRateintppc64
range(1, 32767) /* immediate operand limit on ppc */
productEXPERIMENTALcpu/ppc/globals_ppc.hpp
RTMTotalCountIncrRateintx8664
range(1, max_jint)
productEXPERIMENTALcpu/x86/globals_x86.hpp
RangeCheckEliminationboolruntimetrueproductEliminate range checksshare/runtime/globals.hpp
ReassociateInvariantsboolc2trueproductEnable reassociation of expressions with loop invariants.share/opto/c2_globals.hpp
ReduceBulkZeroingboolc2trueproductWhen bulk-initializing, try to avoid needless zeroingshare/opto/c2_globals.hpp
ReduceFieldZeroingboolc2trueproductWhen initializing fields, try to avoid needless zeroingshare/opto/c2_globals.hpp
ReduceInitialCardMarksboolc2trueproductWhen initializing fields, try to avoid needless card marksshare/opto/c2_globals.hpp
ReduceNumberOfCompilerThreadsboolruntimetrueproductDIAGNOSTICshare/runtime/globals.hpp
ReduceSignalUsageboolruntimefalseproductReduce the use of OS signals in Java and/or the VMshare/runtime/globals.hpp
RefDiscoveryPolicyintxgc0
range(ReferenceProcessor::DiscoveryPolicyMin,
productSelect type of reference discovery policy: reference-based(0) or referent-based(1)share/gc/shared/gc_globals.hpp
ReferencesPerThreadsize_tgc1000productEXPERIMENTALshare/gc/shared/gc_globals.hpp
RegisterCostAreaRatiointxaarch6416000define_pd_globalcpu/aarch64/c2_globals_aarch64.hpp
RegisterCostAreaRatiointxarm16000define_pd_globalcpu/arm/c2_globals_arm.hpp
RegisterCostAreaRatiointxc2develop_pdSpill selection in reg allocator: scale area by (X/64K) before adding costshare/opto/c2_globals.hpp
RegisterCostAreaRatiointxppc16000define_pd_globalcpu/ppc/c2_globals_ppc.hpp
RegisterCostAreaRatiointxs39012000define_pd_globalcpu/s390/c2_globals_s390.hpp
RegisterCostAreaRatiointxx8616000define_pd_globalcpu/x86/c2_globals_x86.hpp
RegisterFinalizersAtInitboolruntimetrueproductRegister finalizable objects at end of Object.<init> or after allocationshare/runtime/globals.hpp
RegisterReferencesboolruntimetruedevelopTell whether the VM should register soft/weak/final/phantom referencesshare/runtime/globals.hpp
RelaxAccessControlCheckboolruntimefalseproductRelax the access control checks in the verifiershare/runtime/globals.hpp
RenumberLiveNodesboolc2truedevelopRenumber live nodesshare/opto/c2_globals.hpp
ReoptimizeCallSequencesboolppctrueproductDIAGNOSTICcpu/ppc/globals_ppc.hpp
ReoptimizeCallSequencesbools390trueproductDIAGNOSTICcpu/s390/globals_s390.hpp
RepeatCompilationintxruntime0
range(0, max_jint)
productDIAGNOSTICshare/runtime/globals.hpp
ReplayCompilesboolruntimefalsedevelopEnable replay of compilations from ReplayDataFileshare/runtime/globals.hpp
ReplayDataFileccstrruntimeNULLproductFile containing compilation replay information[default: ./replay_pid%p.log] (%p replaced with pid)share/runtime/globals.hpp
ReplayIgnoreInitErrorsboolruntimefalsedevelopIgnore exceptions thrown during initialization for replayshare/runtime/globals.hpp
ReplaySuppressInitializersintxruntime2
range(0, 3)
developControl 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
share/runtime/globals.hpp
RequireSharedSpacesboolruntimefalseproductRequire shared spaces for metadatashare/runtime/globals.hpp
ReservedCodeCacheSizeintxaarch6432*Mdefine_pd_globalcpu/aarch64/c1_globals_aarch64.hpp
ReservedCodeCacheSizesize_tarm32*Mdefine_pd_globalcpu/arm/c2_globals_arm.hpp
ReservedCodeCacheSizeuintxcompiler32*Mdefine_pd_globalshare/compiler/compiler_globals.hpp
ReservedCodeCacheSizeuintxruntimeproduct_pdReserved code cache size (in bytes) - maximum code cache sizeshare/runtime/globals.hpp
ReservedCodeCacheSizeuintxppc32*Mdefine_pd_globalcpu/ppc/c1_globals_ppc.hpp
ReservedCodeCacheSizeuintxs39048*Mdefine_pd_globalcpu/s390/c2_globals_s390.hpp
ReservedCodeCacheSizeuintxx8632*Mdefine_pd_globalcpu/x86/c1_globals_x86.hpp
ResizePLABboolgctrueproductDynamically resize (survivor space) promotion LAB'sshare/gc/shared/gc_globals.hpp
ResizeTLABboolaarch64truedefine_pd_globalcpu/aarch64/c1_globals_aarch64.hpp
ResizeTLABboolarmtruedefine_pd_globalcpu/arm/c2_globals_arm.hpp
ResizeTLABboolcompilerfalsedefine_pd_globalshare/compiler/compiler_globals.hpp
ResizeTLABboolgcproduct_pdDynamically resize TLAB size for threadsshare/gc/shared/gc_globals.hpp
ResizeTLABboolppctruedefine_pd_globalcpu/ppc/c1_globals_ppc.hpp
ResizeTLABbools390truedefine_pd_globalcpu/s390/c2_globals_s390.hpp
ResizeTLABboolx86truedefine_pd_globalcpu/x86/c1_globals_x86.hpp
RestoreMXCSROnJNICallsboolruntimefalseproductRestore MXCSR when returning from JNI callsshare/runtime/globals.hpp
RestrictContendedboolruntimetrueproductRestrict @Contended to trusted classesshare/runtime/globals.hpp
RestrictReservedStackboolruntimetrueproductRestrict @ReservedStackAccess to trusted classesshare/runtime/globals.hpp
RewriteBytecodesboolaarch64truedefine_pd_globalcpu/aarch64/globals_aarch64.hpp
RewriteBytecodesboolarmtruedefine_pd_globalcpu/arm/globals_arm.hpp
RewriteBytecodesboolruntimeproduct_pdAllow rewriting of bytecodes (bytecodes are not immutable)share/runtime/globals.hpp
RewriteBytecodesboolppctruedefine_pd_globalcpu/ppc/globals_ppc.hpp
RewriteBytecodesbools390truedefine_pd_globalcpu/s390/globals_s390.hpp
RewriteBytecodesboolx86truedefine_pd_globalcpu/x86/globals_x86.hpp
RewriteBytecodesboolzerotruedefine_pd_globalcpu/zero/globals_zero.hpp
RewriteFrequentPairsboolaarch64truedefine_pd_globalcpu/aarch64/globals_aarch64.hpp
RewriteFrequentPairsboolarmtruedefine_pd_globalcpu/arm/globals_arm.hpp
RewriteFrequentPairsboolruntimeproduct_pdRewrite frequently used bytecode pairs into a single bytecodeshare/runtime/globals.hpp
RewriteFrequentPairsboolppctruedefine_pd_globalcpu/ppc/globals_ppc.hpp
RewriteFrequentPairsbools390truedefine_pd_globalcpu/s390/globals_s390.hpp
RewriteFrequentPairsboolx86truedefine_pd_globalcpu/x86/globals_x86.hpp
RewriteFrequentPairsboolzerotruedefine_pd_globalcpu/zero/globals_zero.hpp
SafepointALotboolruntimefalseproductDIAGNOSTICshare/runtime/globals.hpp
SafepointTimeoutDelayintxruntime10000
range(0, max_intx LP64_ONLY(/MICROUNITS))
productDelay in milliseconds for option SafepointTimeoutshare/runtime/globals.hpp
SafepointTimeoutboolruntimefalseproductTime out and warn or fail after SafepointTimeoutDelay milliseconds if failed to reach safepointshare/runtime/globals.hpp
ScavengeALotIntervalintxgc1notproductInterval between which scavenge will occur with +ScavengeALotshare/gc/shared/gc_globals.hpp
ScavengeALotboolgcfalsenotproductForce scavenge at every Nth exit from the runtime system (N=ScavengeALotInterval)share/gc/shared/gc_globals.hpp
ScavengeBeforeFullGCboolgctrueproductScavenge youngest generation before each full GC.share/gc/shared/gc_globals.hpp
ScavengeRootsInCodeintxruntime2
range(0, 2)
productDIAGNOSTICshare/runtime/globals.hpp
SegmentedCodeCacheboolruntimefalseproductUse a segmented code cacheshare/runtime/globals.hpp
SelectivePhiFunctionsboolc1truedevelopcreate phi functions at loop headers only when necessaryshare/c1/c1_globals.hpp
SelfDestructTimerintxruntime0
range(0, max_intx)
productWill cause VM to terminate after a given time (in minutes) (0 means off)share/runtime/globals.hpp
SerializeVMOutputboolruntimetrueproductDIAGNOSTICshare/runtime/globals.hpp
SharedArchiveConfigFileccstrruntimeNULLproductData to add to the CDS archive fileshare/runtime/globals.hpp
SharedArchiveFileccstrruntimeNULLproductOverride the default location of the CDS archive fileshare/runtime/globals.hpp
SharedBaseAddresssize_truntimeLP64_ONLY(32*G)NOT_LP64(LINUX_ONLY(2*G) NOT_LINUX(0))
range(0, SIZE_MAX)
productAddress to allocate shared memory region for class datashare/runtime/globals.hpp
SharedClassListFileccstrruntimeNULLproductOverride the default CDS class listshare/runtime/globals.hpp
SharedSymbolTableBucketSizeuintxruntime4
range(2, 246)
productAverage number of symbols per bucket in shared tableshare/runtime/globals.hpp
ShenandoahAllocFailureALotboolgcfalseproductDIAGNOSTICshare/gc/shenandoah/shenandoah_globals.hpp
ShenandoahAllocSpikeFactoruintxgc5
range(0,100)
productEXPERIMENTALshare/gc/shenandoah/shenandoah_globals.hpp
ShenandoahAllocationThresholduintxgc0
range(0,100)
productEXPERIMENTALshare/gc/shenandoah/shenandoah_globals.hpp
ShenandoahAlwaysClearSoftRefsboolgcfalseproductEXPERIMENTALshare/gc/shenandoah/shenandoah_globals.hpp
ShenandoahCASBarrierboolgctrueproductDIAGNOSTICshare/gc/shenandoah/shenandoah_globals.hpp
ShenandoahCloneBarrierboolgctrueproductDIAGNOSTICshare/gc/shenandoah/shenandoah_globals.hpp
ShenandoahControlIntervalAdjustPerioduintxgc1000productEXPERIMENTALshare/gc/shenandoah/shenandoah_globals.hpp
ShenandoahControlIntervalMaxuintxgc10productEXPERIMENTALshare/gc/shenandoah/shenandoah_globals.hpp
ShenandoahControlIntervalMinuintxgc1productEXPERIMENTALshare/gc/shenandoah/shenandoah_globals.hpp
ShenandoahCriticalFreeThresholduintxgc1
range(0, 100)
productEXPERIMENTALshare/gc/shenandoah/shenandoah_globals.hpp
ShenandoahDegeneratedGCboolgctrueproductDIAGNOSTICshare/gc/shenandoah/shenandoah_globals.hpp
ShenandoahElasticTLABboolgctrueproductDIAGNOSTICshare/gc/shenandoah/shenandoah_globals.hpp
ShenandoahEvacReserveOverflowboolgctrueproductEXPERIMENTALshare/gc/shenandoah/shenandoah_globals.hpp
ShenandoahEvacReserveuintxgc5
range(1,100)
productEXPERIMENTALshare/gc/shenandoah/shenandoah_globals.hpp
ShenandoahEvacWastedoublegc1.2
range(1.0,100.0)
productEXPERIMENTALshare/gc/shenandoah/shenandoah_globals.hpp
ShenandoahFullGCThresholduintxgc3productEXPERIMENTALshare/gc/shenandoah/shenandoah_globals.hpp
ShenandoahGCHeuristicsccstrgcadaptiveproductGC heuristics to use. This fine-tunes the GC mode selected, by choosing when to start the GC, how much to process on each cycle, and what other features to automatically enable. Possible values are: adaptive - adapt to maintain the given amount of free heap at all times, even during the GC cycle; static - trigger GC when free heap falls below the threshold; aggressive - run GC continuously, try to evacuate everything; compact - run GC more frequently and with deeper targets to free up more memory.share/gc/shenandoah/shenandoah_globals.hpp
ShenandoahGCModeccstrgcsatbproductGC mode to use. Among other things, this defines which barriers are in in use. Possible values are: satb - snapshot-at-the-beginning concurrent GC (three pass mark-evac-update); iu - incremental-update concurrent GC (three pass mark-evac-update); passive - stop the world GC only (either degenerated or full)share/gc/shenandoah/shenandoah_globals.hpp
ShenandoahGarbageThresholduintxgc25
range(0,100)
productEXPERIMENTALshare/gc/shenandoah/shenandoah_globals.hpp
ShenandoahGuaranteedGCIntervaluintxgc5*60*1000productEXPERIMENTALshare/gc/shenandoah/shenandoah_globals.hpp
ShenandoahHumongousMovesboolgctrueproductDIAGNOSTICshare/gc/shenandoah/shenandoah_globals.hpp
ShenandoahHumongousThresholdintxgc100
range(1, 100)
productEXPERIMENTALshare/gc/shenandoah/shenandoah_globals.hpp
ShenandoahImmediateThresholduintxgc90
range(0,100)
productEXPERIMENTALshare/gc/shenandoah/shenandoah_globals.hpp
ShenandoahImplicitGCInvokesConcurrentboolgcfalseproductEXPERIMENTALshare/gc/shenandoah/shenandoah_globals.hpp
ShenandoahInitFreeThresholduintxgc70
range(0,100)
productEXPERIMENTALshare/gc/shenandoah/shenandoah_globals.hpp
ShenandoahLearningStepsuintxgc5
range(0,100)
productEXPERIMENTALshare/gc/shenandoah/shenandoah_globals.hpp
ShenandoahLoadRefBarrierboolgctrueproductDIAGNOSTICshare/gc/shenandoah/shenandoah_globals.hpp
ShenandoahLoopOptsAfterExpansionboolgctrueproductDIAGNOSTICshare/gc/shenandoah/shenandoah_globals.hpp
ShenandoahMarkLoopStrideuintxgc1000productEXPERIMENTALshare/gc/shenandoah/shenandoah_globals.hpp
ShenandoahMarkScanPrefetchintxgc32
range(0, 256)
productEXPERIMENTALshare/gc/shenandoah/shenandoah_globals.hpp
ShenandoahMaxRegionSizesize_tgc32 * MproductEXPERIMENTALshare/gc/shenandoah/shenandoah_globals.hpp
ShenandoahMinFreeThresholduintxgc10
range(0,100)
productEXPERIMENTALshare/gc/shenandoah/shenandoah_globals.hpp
ShenandoahMinRegionSizesize_tgc256 * KproductEXPERIMENTALshare/gc/shenandoah/shenandoah_globals.hpp
ShenandoahOOMDuringEvacALotboolgcfalseproductDIAGNOSTICshare/gc/shenandoah/shenandoah_globals.hpp
ShenandoahPacingCycleSlackuintxgc10
range(0, 100)
productEXPERIMENTALshare/gc/shenandoah/shenandoah_globals.hpp
ShenandoahPacingIdleSlackuintxgc2
range(0, 100)
productEXPERIMENTALshare/gc/shenandoah/shenandoah_globals.hpp
ShenandoahPacingMaxDelayuintxgc10productEXPERIMENTALshare/gc/shenandoah/shenandoah_globals.hpp
ShenandoahPacingSurchargedoublegc1.1
range(1.0, 100.0)
productEXPERIMENTALshare/gc/shenandoah/shenandoah_globals.hpp
ShenandoahPacingboolgctrueproductEXPERIMENTALshare/gc/shenandoah/shenandoah_globals.hpp
ShenandoahParallelRegionStrideuintxgc1024productEXPERIMENTALshare/gc/shenandoah/shenandoah_globals.hpp
ShenandoahPrecleanboolgctrueproductDIAGNOSTICshare/gc/shenandoah/shenandoah_globals.hpp
ShenandoahRefProcFrequencyuintxgc5productEXPERIMENTALshare/gc/shenandoah/shenandoah_globals.hpp
ShenandoahRegionSamplingRateintgc40productEXPERIMENTALshare/gc/shenandoah/shenandoah_globals.hpp
ShenandoahRegionSamplingboolgcfalseproductEXPERIMENTALshare/gc/shenandoah/shenandoah_globals.hpp
ShenandoahRegionSizesize_tgc0productEXPERIMENTALshare/gc/shenandoah/shenandoah_globals.hpp
ShenandoahSATBBarrierboolgctrueproductDIAGNOSTICshare/gc/shenandoah/shenandoah_globals.hpp
ShenandoahSATBBufferFlushIntervaluintxgc100productEXPERIMENTALshare/gc/shenandoah/shenandoah_globals.hpp
ShenandoahSATBBufferSizesize_tgc1 * K
range(1, max_uintx)
productEXPERIMENTALshare/gc/shenandoah/shenandoah_globals.hpp
ShenandoahSelfFixingboolgctrueproductDIAGNOSTICshare/gc/shenandoah/shenandoah_globals.hpp
ShenandoahStoreValEnqueueBarrierboolgcfalseproductDIAGNOSTICshare/gc/shenandoah/shenandoah_globals.hpp
ShenandoahSuspendibleWorkersboolgcfalseproductEXPERIMENTALshare/gc/shenandoah/shenandoah_globals.hpp
ShenandoahTargetNumRegionssize_tgc2048productEXPERIMENTALshare/gc/shenandoah/shenandoah_globals.hpp
ShenandoahUncommitDelayuintxgc5*60*1000productEXPERIMENTALshare/gc/shenandoah/shenandoah_globals.hpp
ShenandoahUncommitboolgctrueproductEXPERIMENTALshare/gc/shenandoah/shenandoah_globals.hpp
ShenandoahUnloadClassesFrequencyuintxgc1productEXPERIMENTALshare/gc/shenandoah/shenandoah_globals.hpp
ShenandoahVerifyLevelintxgc4productDIAGNOSTICshare/gc/shenandoah/shenandoah_globals.hpp
ShenandoahVerifyOptoBarriersboolgcfalsedevelopVerify no missing barriers in C2.share/gc/shenandoah/shenandoah_globals.hpp
ShenandoahVerifyboolgcfalseproductDIAGNOSTICshare/gc/shenandoah/shenandoah_globals.hpp
ShowCodeDetailsInExceptionMessagesboolruntimetrueproductMANAGEABLEshare/runtime/globals.hpp
ShowHiddenFramesboolruntimefalseproductDIAGNOSTICshare/runtime/globals.hpp
ShowMessageBoxOnErrorboolruntimefalseproductKeep process alive on VM fatal errorshare/runtime/globals.hpp
ShowRegistersOnAssertboolruntimetrueproductDIAGNOSTICshare/runtime/globals.hpp
ShrinkHeapInStepsboolruntimetrueproductWhen 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.share/runtime/globals.hpp
SoftMatchFailureboolc2trueInProductdevelopIf the DFA fails to match a node, print a message and bail outshare/opto/c2_globals.hpp
SoftMaxHeapSizesize_tgc0productMANAGEABLEshare/gc/shared/gc_globals.hpp
SoftRefLRUPolicyMSPerMBintxruntime1000
range(0, max_intx)
productNumber of milliseconds per MB of free space in the heapshare/runtime/globals.hpp
SoftwarePrefetchHintDistanceintaarch64-1
range(-1, 4096)
productUse prfm hint with specified distance in compiled code.Value -1 means off.cpu/aarch64/globals_aarch64.hpp
SpecTrapLimitExtraEntriesintxruntime3productEXPERIMENTALshare/runtime/globals.hpp
SpecialArraysEqualsboolc2trueproductDIAGNOSTICshare/opto/c2_globals.hpp
SpecialEncodeISOArrayboolc2trueproductDIAGNOSTICshare/opto/c2_globals.hpp
SpecialStringCompareToboolc2trueproductDIAGNOSTICshare/opto/c2_globals.hpp
SpecialStringEqualsboolc2trueproductDIAGNOSTICshare/opto/c2_globals.hpp
SpecialStringIndexOfboolc2trueproductDIAGNOSTICshare/opto/c2_globals.hpp
SplitIfBlocksboolc2trueproductClone compares and control flow through merge points to fold some branchesshare/opto/c2_globals.hpp
StackPrintLimitintxruntime100developnumber of stack frames to print in VM-level stack dumpshare/runtime/globals.hpp
StackRedPagesintxaarch64DEFAULT_STACK_RED_PAGESdefine_pd_globalcpu/aarch64/globals_aarch64.hpp
StackRedPagesintxarmDEFAULT_STACK_RED_PAGESdefine_pd_globalcpu/arm/globals_arm.hpp
StackRedPagesintxruntimeproduct_pdNumber of red zone (unrecoverable overflows) pages of size
4KB. If pages are bigger red zone is aligned up.
share/runtime/globals.hpp
StackRedPagesintxppcDEFAULT_STACK_RED_PAGESdefine_pd_globalcpu/ppc/globals_ppc.hpp
StackRedPagesintxs390DEFAULT_STACK_RED_PAGESdefine_pd_globalcpu/s390/globals_s390.hpp
StackRedPagesintxx86DEFAULT_STACK_RED_PAGESdefine_pd_globalcpu/x86/globals_x86.hpp
StackRedPagesintxzeroDEFAULT_STACK_RED_PAGESdefine_pd_globalcpu/zero/globals_zero.hpp
StackReservedPagesintxaarch64DEFAULT_STACK_RESERVED_PAGESdefine_pd_globalcpu/aarch64/globals_aarch64.hpp
StackReservedPagesintxarmDEFAULT_STACK_RESERVED_PAGESdefine_pd_globalcpu/arm/globals_arm.hpp
StackReservedPagesintxruntimeproduct_pdNumber of reserved zone (reserved to annotated methods) pages of size 4KB. If pages are bigger reserved zone is aligned up.share/runtime/globals.hpp
StackReservedPagesintxppcDEFAULT_STACK_RESERVED_PAGESdefine_pd_globalcpu/ppc/globals_ppc.hpp
StackReservedPagesintxs390DEFAULT_STACK_RESERVED_PAGESdefine_pd_globalcpu/s390/globals_s390.hpp
StackReservedPagesintxx86DEFAULT_STACK_RESERVED_PAGESdefine_pd_globalcpu/x86/globals_x86.hpp
StackReservedPagesintxzeroDEFAULT_STACK_RESERVED_PAGESdefine_pd_globalcpu/zero/globals_zero.hpp
StackShadowPagesintxaarch64DEFAULT_STACK_SHADOW_PAGESdefine_pd_globalcpu/aarch64/globals_aarch64.hpp
StackShadowPagesintxarmDEFAULT_STACK_SHADOW_PAGESdefine_pd_globalcpu/arm/globals_arm.hpp
StackShadowPagesintxruntimeproduct_pdNumber 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.
share/runtime/globals.hpp
StackShadowPagesintxppcDEFAULT_STACK_SHADOW_PAGESdefine_pd_globalcpu/ppc/globals_ppc.hpp
StackShadowPagesintxs390DEFAULT_STACK_SHADOW_PAGESdefine_pd_globalcpu/s390/globals_s390.hpp
StackShadowPagesintxx86DEFAULT_STACK_SHADOW_PAGESdefine_pd_globalcpu/x86/globals_x86.hpp
StackShadowPagesintxzeroDEFAULT_STACK_SHADOW_PAGESdefine_pd_globalcpu/zero/globals_zero.hpp
StackTraceInThrowableboolruntimetrueproductCollect backtrace in throwable when exception happensshare/runtime/globals.hpp
StackYellowPagesintxaarch64DEFAULT_STACK_YELLOW_PAGESdefine_pd_globalcpu/aarch64/globals_aarch64.hpp
StackYellowPagesintxarmDEFAULT_STACK_YELLOW_PAGESdefine_pd_globalcpu/arm/globals_arm.hpp
StackYellowPagesintxruntimeproduct_pdNumber of yellow zone (recoverable overflows) pages of size
4KB. If pages are bigger yellow zone is aligned up.
share/runtime/globals.hpp
StackYellowPagesintxppcDEFAULT_STACK_YELLOW_PAGESdefine_pd_globalcpu/ppc/globals_ppc.hpp
StackYellowPagesintxs390DEFAULT_STACK_YELLOW_PAGESdefine_pd_globalcpu/s390/globals_s390.hpp
StackYellowPagesintxx86DEFAULT_STACK_YELLOW_PAGESdefine_pd_globalcpu/x86/globals_x86.hpp
StackYellowPagesintxzeroDEFAULT_STACK_YELLOW_PAGESdefine_pd_globalcpu/zero/globals_zero.hpp
StartAggressiveSweepingAtuintxruntime10
range(0, 100)
productStart 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 cacheshare/runtime/globals.hpp
StartAttachListenerboolruntimefalseproductAlways start Attach Listener at VM startupshare/runtime/globals.hpp
StartFlightRecordingccstrruntimeNULLproductStart flight recording with optionsshare/runtime/globals.hpp
StopInterpreterAtintxruntime0developStop interpreter execution at specified bytecode numbershare/runtime/globals.hpp
StressArrayCopyMacroNodeboolc2falsedevelopPerform ArrayCopy load/store replacement during IGVN onlyshare/opto/c2_globals.hpp
StressCodeAgingboolruntimefalseproductDIAGNOSTICshare/runtime/globals.hpp
StressCodeBuffersboolruntimefalsedevelopExercise code buffer expansion and other rare state changesshare/runtime/globals.hpp
StressCompiledExceptionHandlersboolruntimefalsedevelopExercise compiled exception handlersshare/runtime/globals.hpp
StressCriticalJNINativesboolruntimefalsenotproductExercise register saving code in critical nativesshare/runtime/globals.hpp
StressDerivedPointersboolruntimefalsenotproductForce scavenge when a derived pointer is detected on stack after rtm callshare/runtime/globals.hpp
StressGCMboolc2falseproductDIAGNOSTICshare/opto/c2_globals.hpp
StressIGVNboolc2falseproductDIAGNOSTICshare/opto/c2_globals.hpp
StressLCMboolc2falseproductDIAGNOSTICshare/opto/c2_globals.hpp
StressLdcRewriteboolruntimefalseproductForce ldc -> ldc_w rewrite during RedefineClassesshare/runtime/globals.hpp
StressLinearScanboolc1falsedevelopscramble block order used by LinearScan (stress test)share/c1/c1_globals.hpp
StressLoopInvariantCodeMotionboolc1falsedevelopstress loop invariant code motionshare/c1/c1_globals.hpp
StressMethodHandleLinkerInliningboolc2falsedevelopStress inlining through method handle linkersshare/opto/c2_globals.hpp
StressRangeCheckEliminationboolc1falsedevelopstress Range Check Eliminationshare/c1/c1_globals.hpp
StressRecompilationboolc2falsedevelopRecompile each compiled method without subsuming loads or escape analysis.share/opto/c2_globals.hpp
StressReflectiveCodeboolc2falsedevelopUse inexact types at allocations, etc., to test reflectionshare/opto/c2_globals.hpp
StressRewriterboolruntimefalsedevelopStress linktime bytecode rewritingshare/runtime/globals.hpp
StressSeeduintc20
range(0, max_juint)
productDIAGNOSTICshare/opto/c2_globals.hpp
StringDeduplicationAgeThresholduintxruntime3
range(1, markWord::max_age)
productA string must reach this age (or be promoted to an old region) to be considered for deduplicationshare/runtime/globals.hpp
StringDeduplicationRehashALotboolruntimefalseproductDIAGNOSTICshare/runtime/globals.hpp
StringDeduplicationResizeALotboolruntimefalseproductDIAGNOSTICshare/runtime/globals.hpp
StringTableSizeuintxruntimedefaultStringTableSize
range(minimumStringTableSize, 16777216ul /* 2^24 */)
productNumber of buckets in the interned String table (will be rounded to nearest higher power of 2)share/runtime/globals.hpp
SubsumeLoadsboolc2truedevelopAttempt to compile while subsuming loads into machine instructions.share/opto/c2_globals.hpp
SuperWordLoopUnrollAnalysisboolaarch64truedefine_pd_globalcpu/aarch64/c2_globals_aarch64.hpp
SuperWordLoopUnrollAnalysisboolarmfalsedefine_pd_globalcpu/arm/c2_globals_arm.hpp
SuperWordLoopUnrollAnalysisboolc2product_pdMap number of unrolls for main loop via Superword Level Parallelism analysisshare/opto/c2_globals.hpp
SuperWordLoopUnrollAnalysisboolppctruedefine_pd_globalcpu/ppc/c2_globals_ppc.hpp
SuperWordLoopUnrollAnalysisbools390falsedefine_pd_globalcpu/s390/c2_globals_s390.hpp
SuperWordLoopUnrollAnalysisboolx86truedefine_pd_globalcpu/x86/c2_globals_x86.hpp
SuperWordRTDepCheckboolc2falsedevelopEnable runtime dependency checks.share/opto/c2_globals.hpp
SuperWordReductionsboolc2trueproductEnable reductions support in superword.share/opto/c2_globals.hpp
SuperwordUseVSXboolppcfalseproductUse Power8 VSX instructions for superword optimization.cpu/ppc/globals_ppc.hpp
SuppressErrorAtccstrlistruntimeList of assertions (file:line) to muzzlenotproductshare/runtime/globals.hpp
SuppressFatalErrorMessageboolruntimefalseproductReport NO fatal error message (avoid deadlock)share/runtime/globals.hpp
SurvivorAlignmentInBytesintxruntime0
range(8, 256)
productEXPERIMENTALshare/runtime/globals.hpp
SurvivorPaddinguintxgc3
range(0, max_juint)
productHow much buffer to keep for survivor overflowshare/gc/shared/gc_globals.hpp
SurvivorRatiouintxgc8
range(1, max_uintx-2)
productRatio of eden/survivor space sizeshare/gc/shared/gc_globals.hpp
SuspendRetryCountintxruntime50
range(0, max_intx)
productMaximum retry count for an external suspend requestshare/runtime/globals.hpp
SuspendRetryDelayintxruntime5
range(0, max_intx)
productMilliseconds to delay per retry (* current_retry_count)share/runtime/globals.hpp
SweeperLogEntriesintxruntime1024notproductNumber of records in the ring buffer of sweeper activityshare/runtime/globals.hpp
SweeperThresholddoubleruntime0.5
range(0.0, 100.0)
productThreshold controlling when code cache sweeper is invoked.Value is percentage of ReservedCodeCacheSize.share/runtime/globals.hpp
SymbolTableSizeuintxruntimedefaultSymbolTableSize
range(minimumSymbolTableSize, 16777216ul /* 2^24 */)
productEXPERIMENTALshare/runtime/globals.hpp
TLABAllocationWeightuintxgc35
range(0, 100)
productAllocation averaging weightshare/gc/shared/gc_globals.hpp
TLABRefillWasteFractionuintxgc64
range(1, max_juint)
productMaximum TLAB waste at a refill (internal fragmentation)share/gc/shared/gc_globals.hpp
TLABSizesize_tgc0productStarting TLAB size (in bytes); zero means set ergonomicallyshare/gc/shared/gc_globals.hpp
TLABStatsDeprecated in JDK12boolgctrueproductProvide more detailed and expensive TLAB statistics.share/gc/shared/gc_globals.hpp
TLABWasteIncrementuintxgc4
range(0, max_jint)
productIncrement allowed waste at slow allocationshare/gc/shared/gc_globals.hpp
TLABWasteTargetPercentuintxgc1
range(1, 100)
productPercentage of Eden that can be wastedshare/gc/shared/gc_globals.hpp
TargetPLABWastePctuintxgc10
range(1, 100)
productTarget wasted space in last buffer as percent of overall allocationshare/gc/shared/gc_globals.hpp
TargetSurvivorRatiouintxgc50
range(0, 100)
productDesired percentage of survivor space used after scavengeshare/gc/shared/gc_globals.hpp
TenuredGenerationSizeIncrementuintxgc20
range(0, 100)
productAdaptive size percentage change in tenured generationshare/gc/shared/gc_globals.hpp
TenuredGenerationSizeSupplementDecayuintxgc2
range(1, max_uintx)
productDecay factor to TenuredGenerationSizeIncrementshare/gc/shared/gc_globals.hpp
TenuredGenerationSizeSupplementuintxgc80
range(0, 100)
productSupplement to TenuredGenerationSizeIncrement used at startupshare/gc/shared/gc_globals.hpp
TestCrashInErrorHandleruintxruntime0notproductIf > 0, provokes an error inside VM error handler (a secondary crash). see test_error_handler() in vmError.cppshare/runtime/globals.hpp
TestSafeFetchInErrorHandlerboolruntimefalsenotproductIf true, tests SafeFetch inside error handler.share/runtime/globals.hpp
TestUnresponsiveErrorHandlerboolruntimefalsenotproductIf true, simulates an unresponsive error handler.share/runtime/globals.hpp
ThreadPriorityPolicyintxruntime0
range(0, 1)
product0 : Normal. VM chooses priorities that are appropriate for normal applications. 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/BSD/macOS this policy requires root privilege or an extended capability.
share/runtime/globals.hpp
ThreadPriorityVerboseboolruntimefalseproductPrint priority changesshare/runtime/globals.hpp
ThreadStackSizeintxaixppc2048define_pd_global// 0 => use system defaultos_cpu/aix_ppc/globals_aix_ppc.hpp
ThreadStackSizeintxbsdx86320define_pd_globalos_cpu/bsd_x86/globals_bsd_x86.hpp
ThreadStackSizeintxbsdzero1536define_pd_globalos_cpu/bsd_zero/globals_bsd_zero.hpp
ThreadStackSizeintxlinuxaarch642048define_pd_global// 0 => use system defaultos_cpu/linux_aarch64/globals_linux_aarch64.hpp
ThreadStackSizeintxlinuxarm320define_pd_globalos_cpu/linux_arm/globals_linux_arm.hpp
ThreadStackSizeintxlinuxppc2048define_pd_global// 0 => use system defaultos_cpu/linux_ppc/globals_linux_ppc.hpp
ThreadStackSizeintxlinuxs3901024define_pd_global// 0 => Use system default.os_cpu/linux_s390/globals_linux_s390.hpp
ThreadStackSizeintxlinuxx86320define_pd_globalos_cpu/linux_x86/globals_linux_x86.hpp
ThreadStackSizeintxlinuxzero1536define_pd_globalos_cpu/linux_zero/globals_linux_zero.hpp
ThreadStackSizeintxruntimeproduct_pdThread Stack Size (in Kbytes)share/runtime/globals.hpp
ThreadStackSizeintxwindowsaarch640define_pd_global// 0 => use system defaultos_cpu/windows_aarch64/globals_windows_aarch64.hpp
ThreadStackSizeintxwindowsx860define_pd_global// 0 => use system defaultos_cpu/windows_x86/globals_windows_x86.hpp
ThresholdToleranceuintxgc10
range(0, 100)
productAllowed collection cost difference between generationsshare/gc/shared/gc_globals.hpp
Tier0AOTBackEdgeThresholdintxruntime60000
range(0, max_jint)
productDIAGNOSTICshare/runtime/globals.hpp
Tier0AOTCompileThresholdintxruntime2000
range(0, max_jint)
productDIAGNOSTICshare/runtime/globals.hpp
Tier0AOTInvocationThresholdintxruntime200
range(0, max_jint)
productDIAGNOSTICshare/runtime/globals.hpp
Tier0AOTMinInvocationThresholdintxruntime100
range(0, max_jint)
productDIAGNOSTICshare/runtime/globals.hpp
Tier0BackedgeNotifyFreqLogintxruntime10
range(0, 30)
productInterpreter (tier 0) invocation notification frequencyshare/runtime/globals.hpp
Tier0Delayintxruntime5
range(0, max_jint)
productDIAGNOSTICshare/runtime/globals.hpp
Tier0InvokeNotifyFreqLogintxruntime7
range(0, 30)
productInterpreter (tier 0) invocation notification frequencyshare/runtime/globals.hpp
Tier0ProfilingStartPercentageintxruntime200
range(0, max_jint)
productStart profiling in interpreter if the counters exceed tier 3 thresholds (tier 4 thresholds with CompilationMode=high-only|high-only-quick-internal)by the specified percentageshare/runtime/globals.hpp
Tier23InlineeNotifyFreqLogintxruntime20
range(0, 30)
productInlinee invocation (tiers 2 and 3) notification frequencyshare/runtime/globals.hpp
Tier2BackEdgeThresholdintxruntime0
range(0, max_jint)
productBack edge threshold at which tier 2 compilation is invokedshare/runtime/globals.hpp
Tier2BackedgeNotifyFreqLogintxruntime14
range(0, 30)
productC1 without MDO (tier 2) invocation notification frequencyshare/runtime/globals.hpp
Tier2CompileThresholdintxruntime0
range(0, max_jint)
productthreshold at which tier 2 compilation is invokedshare/runtime/globals.hpp
Tier2InvokeNotifyFreqLogintxruntime11
range(0, 30)
productC1 without MDO (tier 2) invocation notification frequencyshare/runtime/globals.hpp
Tier3AOTBackEdgeThresholdintxruntime120000
range(0, max_jint)
productBack edge threshold at which tier 3 OSR compilation is invoked if coming from AOTshare/runtime/globals.hpp
Tier3AOTCompileThresholdintxruntime15000
range(0, max_jint)
productThreshold at which tier 3 compilation is invoked (invocation minimum must be satisfied) if coming from AOTshare/runtime/globals.hpp
Tier3AOTInvocationThresholdintxruntime10000
range(0, max_jint)
productCompile if number of method invocations crosses this threshold if coming from AOTshare/runtime/globals.hpp
Tier3AOTMinInvocationThresholdintxruntime1000
range(0, max_jint)
productMinimum invocation to compile at tier 3 if coming from AOTshare/runtime/globals.hpp
Tier3BackEdgeThresholdintxruntime60000
range(0, max_jint)
productBack edge threshold at which tier 3 OSR compilation is invokedshare/runtime/globals.hpp
Tier3BackedgeNotifyFreqLogintxruntime13
range(0, 30)
productC1 with MDO profiling (tier 3) invocation notification frequencyshare/runtime/globals.hpp
Tier3CompileThresholdintxruntime2000
range(0, max_jint)
productThreshold at which tier 3 compilation is invoked (invocation minimum must be satisfied)share/runtime/globals.hpp
Tier3DelayOffintxruntime2
range(0, max_jint)
productIf C2 queue size is less than this amount per compiler thread allow methods compiled at tier 2 transition to tier 3share/runtime/globals.hpp
Tier3DelayOnintxruntime5
range(0, max_jint)
productIf C2 queue size grows over this amount per compiler thread stop compiling at tier 3 and start compiling at tier 2share/runtime/globals.hpp
Tier3InvocationThresholdintxruntime200
range(0, max_jint)
productCompile if number of method invocations crosses this thresholdshare/runtime/globals.hpp
Tier3InvokeNotifyFreqLogintxruntime10
range(0, 30)
productC1 with MDO profiling (tier 3) invocation notification frequencyshare/runtime/globals.hpp
Tier3LoadFeedbackintxruntime5
range(0, max_jint)
productTier 3 thresholds will increase twofold when C1 queue size reaches this amount per compiler threadshare/runtime/globals.hpp
Tier3MinInvocationThresholdintxruntime100
range(0, max_jint)
productMinimum invocation to compile at tier 3share/runtime/globals.hpp
Tier40BackEdgeThresholdintxruntime15000
range(0, max_jint)
productDIAGNOSTICshare/runtime/globals.hpp
Tier40CompileThresholdintxruntime10000
range(0, max_jint)
productDIAGNOSTICshare/runtime/globals.hpp
Tier40InvocationThresholdintxruntime5000
range(0, max_jint)
productDIAGNOSTICshare/runtime/globals.hpp
Tier40MinInvocationThresholdintxruntime600
range(0, max_jint)
productDIAGNOSTICshare/runtime/globals.hpp
Tier4BackEdgeThresholdintxruntime40000
range(0, max_jint)
productBack edge threshold at which tier 4 OSR compilation is invokedshare/runtime/globals.hpp
Tier4CompileThresholdintxruntime15000
range(0, max_jint)
productThreshold at which tier 4 compilation is invoked (invocation minimum must be satisfied)share/runtime/globals.hpp
Tier4InvocationThresholdintxruntime5000
range(0, max_jint)
productCompile if number of method invocations crosses this thresholdshare/runtime/globals.hpp
Tier4LoadFeedbackintxruntime3
range(0, max_jint)
productTier 4 thresholds will increase twofold when C2 queue size reaches this amount per compiler threadshare/runtime/globals.hpp
Tier4MinInvocationThresholdintxruntime600
range(0, max_jint)
productMinimum invocation to compile at tier 4share/runtime/globals.hpp
TieredCompilationboolaarch64falsedefine_pd_globalcpu/aarch64/c1_globals_aarch64.hpp
TieredCompilationboolarmfalsedefine_pd_globalcpu/arm/c2_globals_arm.hpp
TieredCompilationboolcompilerfalsedefine_pd_globalshare/compiler/compiler_globals.hpp
TieredCompilationboolruntimeproduct_pdEnable tiered compilationshare/runtime/globals.hpp
TieredCompilationboolppcfalsedefine_pd_globalcpu/ppc/c1_globals_ppc.hpp
TieredCompilationbools390trueInTiereddefine_pd_globalcpu/s390/c2_globals_s390.hpp
TieredCompilationboolx86falsedefine_pd_globalcpu/x86/c1_globals_x86.hpp
TieredCompileTaskTimeoutintxruntime50
range(0, max_intx)
productKill compile task if method was not used within given timeout in millisecondsshare/runtime/globals.hpp
TieredRateUpdateMaxTimeintxruntime25
range(0, max_intx)
productMaximum rate sampling interval (in milliseconds)share/runtime/globals.hpp
TieredRateUpdateMinTimeintxruntime1
range(0, max_intx)
productMinimum rate sampling interval (in milliseconds)share/runtime/globals.hpp
TieredStopAtLevelintxruntime4
range(0, 4)
productStop at given compilation levelshare/runtime/globals.hpp
TimeEachLinearScanboolc1falsedevelopprint detailed timing of each LinearScan runshare/c1/c1_globals.hpp
TimeLinearScanboolc1falseproductdetailed timing of LinearScan phasesshare/c1/c1_globals.hpp
TimeOopMap2boolruntimefalsedevelopTime calls to GenerateOopMap::compute_map() individuallyshare/runtime/globals.hpp
TimeOopMapboolruntimefalsedevelopTime calls to GenerateOopMap::compute_map() in sumshare/runtime/globals.hpp
TraceBytecodesAtintxruntime0developTrace bytecodes starting with specified bytecode numbershare/runtime/globals.hpp
TraceBytecodesboolruntimefalsedevelopTrace bytecode executionshare/runtime/globals.hpp
TraceCISCSpillboolc2falsenotproductTrace allocators use of cisc spillable instructionsshare/opto/c2_globals.hpp
TraceCallFixupboolruntimefalsedevelopTrace all call fixupsshare/runtime/globals.hpp
TraceCodeBlobStacksboolruntimefalsenotproductTrace stack-walk of codeblobsshare/runtime/globals.hpp
TraceCompiledICboolruntimefalsedevelopTrace changes of compiled ICshare/runtime/globals.hpp
TraceCompilerThreadsboolruntimefalseproductDIAGNOSTICshare/runtime/globals.hpp
TraceCreateZombiesboolruntimefalsedeveloptrace creation of zombie nmethodsshare/runtime/globals.hpp
TraceDeoptimizationboolruntimefalsedevelopTrace deoptimizationshare/runtime/globals.hpp
TraceDependenciesboolruntimefalsedevelopTrace dependenciesshare/runtime/globals.hpp
TraceDerivedPointersboolruntimefalsedevelopTrace traversal of derived pointers on stackshare/runtime/globals.hpp
TraceFPURegisterUsageboolc1falsedevelopTrace usage of FPU registers at start of blocks (intel only)share/c1/c1_globals.hpp
TraceFPUStackboolc1falsedevelopTrace emulation of the FPU stack (intel only)share/c1/c1_globals.hpp
TraceFinalizerRegistrationboolruntimefalsedevelopTrace registration of final referencesshare/runtime/globals.hpp
TraceFrequencyInliningboolruntimefalsedevelopTrace frequency based inliningshare/runtime/globals.hpp
TraceICBufferboolruntimefalsedevelopTrace usage of IC buffershare/runtime/globals.hpp
TraceICsboolruntimefalsedevelopTrace inline cache changesshare/runtime/globals.hpp
TraceInlineCacheClearingboolruntimefalsedevelopTrace clearing of inline caches in nmethodsshare/runtime/globals.hpp
TraceInvocationCounterOverflowboolruntimefalsenotproductTrace method invocation counter overflowshare/runtime/globals.hpp
TraceIterativeGVNboolc2falsedevelopPrint progress during Iterative Global Value Numberingshare/opto/c2_globals.hpp
TraceJVMTIObjectTaggingboolruntimefalseproductDIAGNOSTICshare/runtime/globals.hpp
TraceJVMTIccstrruntimeNULLproductTrace flags for JVMTI functions and eventsshare/runtime/globals.hpp
TraceJavaAssertionsboolruntimefalsedevelopTrace java language assertionsshare/runtime/globals.hpp
TraceLinearScanLevelintxc10
range(0, 4)
developDebug levels for the linear scan allocatorshare/c1/c1_globals.hpp
TraceLivenessGenboolruntimefalsedevelopTrace the generation of liveness analysis informationshare/runtime/globals.hpp
TraceLivenessQueryboolruntimefalsenotproductTrace queries of liveness analysis informationshare/runtime/globals.hpp
TraceLoopLimitCheckboolc2falsedevelopTrace generation of loop limits checksshare/opto/c2_globals.hpp
TraceLoopOptsboolc2falsedevelopTrace executed loop optimizationsshare/opto/c2_globals.hpp
TraceLoopPredicateboolc2falsedevelopTrace generation of loop predicatesshare/opto/c2_globals.hpp
TraceLoopUnswitchingboolc2falsenotproductTrace loop unswitchingshare/opto/c2_globals.hpp
TraceMemoryWritebackboolruntimefalsedevelopTrace memory writeback operationsshare/runtime/globals.hpp
TraceMethodReplacementboolruntimefalsedevelopPrint when methods are replaced do to recompilationshare/runtime/globals.hpp
TraceNewOopMapGenerationDetailedboolruntimefalsedevelopTrace OopMapGeneration: print detailed cell statesshare/runtime/globals.hpp
TraceNewOopMapGenerationboolruntimefalsedevelopTrace OopMapGenerationshare/runtime/globals.hpp
TraceNewVectorsboolc2falsenotproductTrace creation of Vector nodesshare/opto/c2_globals.hpp
TraceOnStackReplacementboolruntimefalsenotproductTrace on stack replacementshare/runtime/globals.hpp
TraceOopMapRewritesboolruntimefalsedevelopTrace rewriting of methods during oop map generationshare/runtime/globals.hpp
TraceOptimizeFillboolc2falsedevelopprint detailed information about fill conversionshare/opto/c2_globals.hpp
TraceOptoOutputboolc2falsenotproductTrace pipelining informationshare/opto/c2_globals.hpp
TraceOptoParseboolc2falsedevelopTrace bytecode parse and control-flow mergeshare/opto/c2_globals.hpp
TraceOptoPipeliningboolc2falsenotproductTrace pipelining informationshare/opto/c2_globals.hpp
TracePartialPeelingboolc2falsenotproductTrace partial peeling (loop rotation) informationshare/opto/c2_globals.hpp
TracePatchingboolc1falsedevelopTrace patching of field access on uninitialized classesshare/c1/c1_globals.hpp
TracePcPatchingboolruntimefalsedevelopTrace usage of frame::patch_pcshare/runtime/globals.hpp
TracePhaseCCPboolc2falsenotproductPrint progress during Conditional Constant Propagationshare/opto/c2_globals.hpp
TracePostallocExpandboolc2falsedevelopTrace expanding nodes after register allocation.share/opto/c2_globals.hpp
TracePredicateFailedTrapsboolc1falsedeveloptrace runtime traps caused by predicate failureshare/c1/c1_globals.hpp
TraceProfileInterpreterboolruntimefalsedevelopTrace profiling at the bytecode level during interpretation. This outputs the profiling information collected to improve jit compilation.share/runtime/globals.hpp
TraceProfileTripCountboolc2falsenotproductTrace profile loop trip count informationshare/opto/c2_globals.hpp
TraceRangeCheckEliminationboolc1falsedevelopTrace Range Check Eliminationshare/c1/c1_globals.hpp
TraceRangeLimitCheckboolc2falsedevelopTrace additional overflow checks in RCEshare/opto/c2_globals.hpp
TraceRelocatorboolruntimefalsedevelopTrace the bytecode relocatorshare/runtime/globals.hpp
TraceSpillingboolc2falseproductDIAGNOSTICshare/opto/c2_globals.hpp
TraceSuperWordLoopUnrollAnalysisboolc2falsenotproductTrace what Superword Level Parallelism analysis appliesshare/opto/c2_globals.hpp
TraceSuperWordboolc2falsenotproductTrace superword transformsshare/opto/c2_globals.hpp
TraceSuspendWaitFailuresboolruntimefalseproductTrace external suspend wait failuresshare/runtime/globals.hpp
TraceTrapsboolaarch64falseproductTrace all traps the signal handlercpu/aarch64/globals_aarch64.hpp
TraceTrapsboolppcfalseproductDIAGNOSTICcpu/ppc/globals_ppc.hpp
TraceTrapsbools390falseproductDIAGNOSTICcpu/s390/globals_s390.hpp
TraceTypeProfileboolc2falseproductDIAGNOSTICshare/opto/c2_globals.hpp
TrackedInitializationLimitintxc250
range(0, 65535)
productWhen initializing fields, track up to this many wordsshare/opto/c2_globals.hpp
TrapBasedICMissChecksboolppctrueproductDIAGNOSTICcpu/ppc/globals_ppc.hpp
TrapBasedNullChecksboolaarch64falsedefine_pd_globalcpu/aarch64/globals_aarch64.hpp
TrapBasedNullChecksboolarmfalsedefine_pd_global// Not neededcpu/arm/globals_arm.hpp
TrapBasedNullChecksboolruntimeproduct_pdGenerate code for null checks that uses a cmp and trap instruction raising SIGTRAP. This is only used if an access tonull (+offset) will not raise a SIGSEGV, i.e.,ImplicitNullChecks don't work (PPC64).share/runtime/globals.hpp
TrapBasedNullChecksboolppctruedefine_pd_globalcpu/ppc/globals_ppc.hpp
TrapBasedNullChecksbools390truedefine_pd_globalcpu/s390/globals_s390.hpp
TrapBasedNullChecksboolx86falsedefine_pd_global// Not needed on x86.cpu/x86/globals_x86.hpp
TrapBasedNullChecksboolzerofalsedefine_pd_globalcpu/zero/globals_zero.hpp
TrapBasedRangeChecksboolaarch64falsedefine_pd_global// Not needed.cpu/aarch64/c2_globals_aarch64.hpp
TrapBasedRangeChecksboolarmfalsedefine_pd_global// Not neededcpu/arm/c2_globals_arm.hpp
TrapBasedRangeChecksboolc2product_pdGenerate code for range checks that uses a cmp and trap instruction raising SIGTRAP. Used on PPC64.share/opto/c2_globals.hpp
TrapBasedRangeChecksboolppctruedefine_pd_globalcpu/ppc/c2_globals_ppc.hpp
TrapBasedRangeChecksbools390falsedefine_pd_global// Not needed on z/Architecture.cpu/s390/c2_globals_s390.hpp
TrapBasedRangeChecksboolx86falsedefine_pd_global// Not needed on x86.cpu/x86/c2_globals_x86.hpp
TrustFinalNonStaticFieldsboolruntimefalseproductEXPERIMENTALshare/runtime/globals.hpp
TwoOperandLIRFormboolaarch64falsedefine_pd_globalcpu/aarch64/c1_globals_aarch64.hpp
TwoOperandLIRFormboolarmfalsedefine_pd_globalcpu/arm/c1_globals_arm.hpp
TwoOperandLIRFormboolc1develop_pdtrue if LIR requires src1 and dst to match in binary LIR opsshare/c1/c1_globals.hpp
TwoOperandLIRFormboolppcfalsedefine_pd_globalcpu/ppc/c1_globals_ppc.hpp
TwoOperandLIRFormbools390truedefine_pd_globalcpu/s390/c1_globals_s390.hpp
TwoOperandLIRFormboolx86truedefine_pd_globalcpu/x86/c1_globals_x86.hpp
TypeProfileArgsLimitintxruntime2
range(0, 16)
productmax number of call arguments to consider for type profilingshare/runtime/globals.hpp
TypeProfileCastsboolruntimetruedeveloptreat casts like calls for purposes of type profilingshare/runtime/globals.hpp
TypeProfileLeveluintxaarch64111define_pd_globalcpu/aarch64/globals_aarch64.hpp
TypeProfileLeveluintxarm0define_pd_globalcpu/arm/globals_arm.hpp
TypeProfileLeveluintxruntimeproduct_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 methodsshare/runtime/globals.hpp
TypeProfileLeveluintxppc111define_pd_globalcpu/ppc/globals_ppc.hpp
TypeProfileLeveluintxs390111define_pd_globalcpu/s390/globals_s390.hpp
TypeProfileLeveluintxx86111define_pd_globalcpu/x86/globals_x86.hpp
TypeProfileLeveluintxzero0define_pd_globalcpu/zero/globals_zero.hpp
TypeProfileMajorReceiverPercentintxc290
range(0, 100)
product% of major receiver type to all profiled receiversshare/opto/c2_globals.hpp
TypeProfileParmsLimitintxruntime2
range(-1, 64)
productmax number of incoming parameters to consider for type profiling, -1 for allshare/runtime/globals.hpp
TypeProfileWidthintxruntime2
range(0, 8)
productNumber of receiver types to record in call/cast profileshare/runtime/globals.hpp
UncommonNullCastboolaarch64truedefine_pd_global// Uncommon-trap NULLs past to check castcpu/aarch64/globals_aarch64.hpp
UncommonNullCastboolarmtruedefine_pd_global// Uncommon-trap NULLs past to check castcpu/arm/globals_arm.hpp
UncommonNullCastboolruntimedevelop_pdtrack occurrences of null in casts; adjust compiler tacticsshare/runtime/globals.hpp
UncommonNullCastboolppctruedefine_pd_global// Uncommon-trap NULLs passed to check cast.cpu/ppc/globals_ppc.hpp
UncommonNullCastbools390truedefine_pd_global// Uncommon-trap NULLs passed to check cast.cpu/s390/globals_s390.hpp
UncommonNullCastboolx86truedefine_pd_global// Uncommon-trap NULLs passed to check castcpu/x86/globals_x86.hpp
UncommonNullCastboolzerotruedefine_pd_globalcpu/zero/globals_zero.hpp
UnguardOnExecutionViolationintxruntime0
range(0, 2)
productUnguard page and retry on no-execute fault (Win32 only)
0=off, 1=conservative, 2=aggressive
share/runtime/globals.hpp
UnlockDiagnosticVMOptionsboolruntimetrueInDebugproductDIAGNOSTICshare/runtime/globals.hpp
UnlockExperimentalVMOptionsboolruntimefalseproductEXPERIMENTALshare/runtime/globals.hpp
UnrollLimitForProfileCheckintxc21
range(0, max_intx)
developDon'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.share/opto/c2_globals.hpp
Use64KPagesThresholduintxaix0develop4K/64K page allocation threshold.os/aix/globals_aix.hpp
Use64KPagesboolaixtrueproductUse 64K pages if available.os/aix/globals_aix.hpp
UseAESCTRIntrinsicsboolruntimefalseproductDIAGNOSTICshare/runtime/globals.hpp
UseAESIntrinsicsboolruntimefalseproductDIAGNOSTICshare/runtime/globals.hpp
UseAESboolruntimefalseproductControl whether AES instructions are used when availableshare/runtime/globals.hpp
UseAOTStrictLoadingboolruntimefalseproductDIAGNOSTICshare/runtime/globals.hpp
UseAOTboolruntimefalseproductEXPERIMENTALshare/runtime/globals.hpp
UseAVXintxx863
range(0, 99)
productHighest supported AVX instructions set on x86/x64cpu/x86/globals_x86.hpp
UseAdaptiveGenerationSizePolicyAtMajorCollectionboolgctrueproductUse adaptive young-old sizing policies at major collectionsshare/gc/shared/gc_globals.hpp
UseAdaptiveGenerationSizePolicyAtMinorCollectionboolgctrueproductUse adaptive young-old sizing policies at minor collectionsshare/gc/shared/gc_globals.hpp
UseAdaptiveNUMAChunkSizingboolruntimetrueproductEnable adaptive chunk sizing for NUMAshare/runtime/globals.hpp
UseAdaptiveSizeDecayMajorGCCostboolgctrueproductAdaptive size decays the major cost for long major intervalsshare/gc/shared/gc_globals.hpp
UseAdaptiveSizePolicyFootprintGoalboolgctrueproductUse adaptive minimum footprint as a goalshare/gc/shared/gc_globals.hpp
UseAdaptiveSizePolicyWithSystemGCboolgcfalseproductInclude statistics from System.gc() for adaptive size policyshare/gc/shared/gc_globals.hpp
UseAdaptiveSizePolicyboolgctrueproductUse adaptive generation sizing policiesshare/gc/shared/gc_globals.hpp
UseAddressNopboolx86falseproductUse '0F 1F [addr]' NOP instructions on x86 cpuscpu/x86/globals_x86.hpp
UseAdler32IntrinsicsboolruntimefalseproductDIAGNOSTICshare/runtime/globals.hpp
UseBASE64IntrinsicsboolruntimefalseproductUse intrinsics for java.util.Base64share/runtime/globals.hpp
UseBMI1Instructionsboolx86falseproductUse BMI1 instructionscpu/x86/globals_x86.hpp
UseBMI2Instructionsboolx86falseproductUse BMI2 instructionscpu/x86/globals_x86.hpp
UseBiasedLockingDeprecated in JDK15
Obsoleted in JDK16
Expired in JDK17
boolruntimefalseproduct(Deprecated) Enable biased locking in JVMshare/runtime/globals.hpp
UseBimorphicInliningboolc2trueproductProfiling based inlining for two receiversshare/opto/c2_globals.hpp
UseBlockZeroingboolaarch64trueproductUse DC ZVA for block zeroingcpu/aarch64/globals_aarch64.hpp
UseBootstrapCallInfointruntime1productDIAGNOSTICshare/runtime/globals.hpp
UseByteReverseInstructionbools390trueproductDIAGNOSTICcpu/s390/globals_s390.hpp
UseByteReverseInstructionsboolppcfalseproductDIAGNOSTICcpu/ppc/globals_ppc.hpp
UseC1Optimizationsboolc1truedevelopTurn on C1 optimizationsshare/c1/c1_globals.hpp
UseCHAboolruntimetruedevelopEnable CHAshare/runtime/globals.hpp
UseCISCSpillboolaarch64falsedefine_pd_globalcpu/aarch64/c2_globals_aarch64.hpp
UseCISCSpillboolarmfalsedefine_pd_globalcpu/arm/c2_globals_arm.hpp
UseCISCSpillboolc2develop_pdUse ADLC supplied cisc instructions during allocationshare/opto/c2_globals.hpp
UseCISCSpillboolppcfalsedefine_pd_globalcpu/ppc/c2_globals_ppc.hpp
UseCISCSpillbools390truedefine_pd_globalcpu/s390/c2_globals_s390.hpp
UseCISCSpillboolx86truedefine_pd_globalcpu/x86/c2_globals_x86.hpp
UseCLMULboolx86falseproductControl whether CLMUL instructions can be used on x86/x64cpu/x86/globals_x86.hpp
UseCMoveUnconditionallyboolc2falseproductUse CMove (scalar and vector) ignoring profitability test.share/opto/c2_globals.hpp
UseCRC32CIntrinsicsboolruntimefalseproductDIAGNOSTICshare/runtime/globals.hpp
UseCRC32IntrinsicsboolruntimefalseproductDIAGNOSTICshare/runtime/globals.hpp
UseCRC32boolaarch64falseproductUse CRC32 instructions for CRC32 computationcpu/aarch64/globals_aarch64.hpp
UseCharacterCompareIntrinsicsboolc2falseproductDIAGNOSTICshare/opto/c2_globals.hpp
UseCodeAgingboolruntimetrueproductInsert counter to detect warm methodsshare/runtime/globals.hpp
UseCodeCacheFlushingboolruntimetrueproductRemove cold/old nmethods from the code cacheshare/runtime/globals.hpp
UseCompilerboolruntimetrueproductUse Just-In-Time compilationshare/runtime/globals.hpp
UseCompressedClassPointersboolruntimefalseproductUse 32-bit class pointers in 64-bit VM. lp64_product means flag is always constant in 32 bit VMshare/runtime/globals.hpp
UseCompressedOopsboolruntimefalseproductUse 32-bit object references in 64-bit VM. lp64_product means flag is always constant in 32 bit VMshare/runtime/globals.hpp
UseCondCardMarkboolgcfalseproductCheck for already marked card before updating card tableshare/gc/shared/gc_globals.hpp
UseContainerSupportboollinuxtrueproductEnable detection and runtime container configuration supportos/linux/globals_linux.hpp
UseCopySignIntrinsicboolruntimefalseproductDIAGNOSTICshare/runtime/globals.hpp
UseCountLeadingZerosInstructionboolx86falseproductUse count leading zeros instructioncpu/x86/globals_x86.hpp
UseCountLeadingZerosInstructionsPPC64boolppctrueproductDIAGNOSTICcpu/ppc/globals_ppc.hpp
UseCountTrailingZerosInstructionboolx86falseproductUse count trailing zeros instructioncpu/x86/globals_x86.hpp
UseCountTrailingZerosInstructionsPPC64boolppcfalseproductDIAGNOSTICcpu/ppc/globals_ppc.hpp
UseCountedLoopSafepointsboolc2falseproductForce counted loops to keep a safepointshare/opto/c2_globals.hpp
UseCounterDecayboolruntimetrueproductAdjust recompilation countersshare/runtime/globals.hpp
UseCpuAllocPathboollinuxfalseproductDIAGNOSTICos/linux/globals_linux.hpp
UseCriticalCompilerThreadPriorityboolruntimefalseproductEXPERIMENTALshare/runtime/globals.hpp
UseCriticalJavaThreadPriorityboolruntimefalseproductEXPERIMENTALshare/runtime/globals.hpp
UseDivModboolc2trueproductUse combined DivMod instruction if availableshare/opto/c2_globals.hpp
UseDynamicNumberOfCompilerThreadsboolruntimetrueproductDynamically choose the number of parallel compiler threadsshare/runtime/globals.hpp
UseDynamicNumberOfGCThreadsboolgctrueproductDynamically choose the number of threads up to a maximum of ParallelGCThreads parallel collectors will use for garbage collection workshare/gc/shared/gc_globals.hpp
UseEmptySlotsInSupersboolruntimetrueproductAllow allocating fields in empty slots of super-classesshare/runtime/globals.hpp
UseEpsilonGCboolgcfalseproductEXPERIMENTALshare/gc/shared/gc_globals.hpp
UseExplicitCommitboolaixfalseproductExplicit commit for virtual memory.os/aix/globals_aix.hpp
UseExtendedLoadAndReserveInstructionsPPC64boolppcfalseproductDIAGNOSTICcpu/ppc/globals_ppc.hpp
UseFMAboolruntimefalseproductControl whether FMA instructions are used when availableshare/runtime/globals.hpp
UseFPUForSpillingboolc2falseproductSpill integer registers to FPU instead of stack when possibleshare/opto/c2_globals.hpp
UseFastAccessorMethodsboolzerotrueproductUse fast method entry code for accessor methodscpu/zero/globals_zero.hpp
UseFastEmptyMethodsboolzerotrueproductUse fast method entry code for empty methodscpu/zero/globals_zero.hpp
UseFastJNIAccessorsboolruntimetrueproductUse optimized versions of Get<Primitive>Fieldshare/runtime/globals.hpp
UseFastLockingboolc1truedevelopUse fast inlined locking codeshare/c1/c1_globals.hpp
UseFastNewInstanceboolc1truedevelopUse fast inlined instance allocationshare/c1/c1_globals.hpp
UseFastNewObjectArrayboolc1truedevelopUse fast inlined object array allocationshare/c1/c1_globals.hpp
UseFastNewTypeArrayboolc1truedevelopUse fast inlined type array allocationshare/c1/c1_globals.hpp
UseFastSignatureHandlersboolruntimetruedevelopUse fast signature handlers for native callsshare/runtime/globals.hpp
UseFastStosbboolx86falseproductUse fast-string operation for zeroing: rep stosbcpu/x86/globals_x86.hpp
UseFastUnorderedTimeStampsboolruntimefalseproductEXPERIMENTALshare/runtime/globals.hpp
UseG1GCboolgcfalseproductUse the Garbage-First garbage collectorshare/gc/shared/gc_globals.hpp
UseGCOverheadLimitboolgctrueproductUse policy to limit of proportion of time spent in GC before an OutOfMemory error is thrownshare/gc/shared/gc_globals.hpp
UseGHASHIntrinsicsboolruntimefalseproductDIAGNOSTICshare/runtime/globals.hpp
UseGlobalValueNumberingboolc1truedevelopUse Global Value Numbering (separate phase)share/c1/c1_globals.hpp
UseHeavyMonitorsboolruntimefalseproductuse heavyweight instead of lightweight Java monitorsshare/runtime/globals.hpp
UseHugeTLBFSObsoleted in JDK12
Expired in JDK13
boollinuxfalseproductUse MAP_HUGETLB for large pagesos/linux/globals_linux.hpp
UseIncDecboolx86trueproductDIAGNOSTICcpu/x86/globals_x86.hpp
UseInlineCachesboolruntimetrueproductUse Inline Caches for virtual callsshare/runtime/globals.hpp
UseInlineDepthForSpeculativeTypesboolc2trueproductDIAGNOSTICshare/opto/c2_globals.hpp
UseInterpreterboolruntimetrueproductUse interpreter for non-compiled methodsshare/runtime/globals.hpp
UseJVMCICompilerbooljvmcifalseproductEXPERIMENTALshare/jvmci/jvmci_globals.hpp
UseJVMCINativeLibrarybooljvmcifalseproductEXPERIMENTALshare/jvmci/jvmci_globals.hpp
UseJumpTablesboolc2trueproductUse JumpTables instead of a binary search tree for switchesshare/opto/c2_globals.hpp
UseLSEboolaarch64falseproductUse LSE instructionscpu/aarch64/globals_aarch64.hpp
UseLargePagesInMetaspaceDeprecated in JDK15
Obsoleted in JDK16
Expired in JDK17
boolruntimefalseproduct(Deprecated) Use large page memory in metaspace. Only used if UseLargePages is enabled.share/runtime/globals.hpp
UseLargePagesIndividualAllocationboolaixfalsedefine_pd_globalos/aix/globals_aix.hpp
UseLargePagesIndividualAllocationboolbsdfalsedefine_pd_globalos/bsd/globals_bsd.hpp
UseLargePagesIndividualAllocationboollinuxfalsedefine_pd_globalos/linux/globals_linux.hpp
UseLargePagesIndividualAllocationboolruntimeproduct_pdAllocate large pages individually for better affinityshare/runtime/globals.hpp
UseLargePagesIndividualAllocationboolwindowstruedefine_pd_globalos/windows/globals_windows.hpp
UseLargePagesboolaixfalsedefine_pd_globalos/aix/globals_aix.hpp
UseLargePagesboolbsdfalsedefine_pd_globalos/bsd/globals_bsd.hpp
UseLargePagesboollinuxfalsedefine_pd_globalos/linux/globals_linux.hpp
UseLargePagesboolruntimeproduct_pdUse large page memoryshare/runtime/globals.hpp
UseLargePagesboolwindowsfalsedefine_pd_globalos/windows/globals_windows.hpp
UseLibmIntrinsicboolx86trueproductDIAGNOSTICcpu/x86/globals_x86.hpp
UseLinuxPosixThreadCPUClocksboollinuxtrueproductenable fast Linux Posix clocks where availableos/linux/globals_linux.hpp
UseLoadInstructionsForStackBangingPPC64boolppcfalseproductDIAGNOSTICcpu/ppc/globals_ppc.hpp
UseLocalValueNumberingboolc1truedevelopUse Local Value Numbering (embedded in GraphBuilder)share/c1/c1_globals.hpp
UseLoopCounterboolruntimetrueproductIncrement invocation counter on backward branchshare/runtime/globals.hpp
UseLoopInvariantCodeMotionboolc1trueproductSimple loop invariant code motion for short loops during GVNshare/c1/c1_globals.hpp
UseLoopPredicateboolc2trueproductGenerate a predicate to select fast/slow loop versionsshare/opto/c2_globals.hpp
UseLoopSafepointsboolruntimetruedevelopGenerate Safepoint nodes in every loopshare/runtime/globals.hpp
UseMD5IntrinsicsboolruntimefalseproductDIAGNOSTICshare/runtime/globals.hpp
UseMallocOnlyboolruntimefalsedevelopUse only malloc/free for allocation (no resource area/arena)share/runtime/globals.hpp
UseMathExactIntrinsicsboolc2trueproductDIAGNOSTICshare/opto/c2_globals.hpp
UseMaximumCompactionOnSystemGCboolgctrueproductUse maximum compaction in the Parallel Old garbage collector for a system GCshare/gc/parallel/parallel_globals.hpp
UseMontgomeryMultiplyIntrinsicboolc2falseproductDIAGNOSTICshare/opto/c2_globals.hpp
UseMontgomerySquareIntrinsicboolc2falseproductDIAGNOSTICshare/opto/c2_globals.hpp
UseMulAddIntrinsicboolc2falseproductDIAGNOSTICshare/opto/c2_globals.hpp
UseMultiplyToLenIntrinsicboolc2falseproductDIAGNOSTICshare/opto/c2_globals.hpp
UseNUMAInterleavingboolruntimefalseproductInterleave memory across NUMA nodes if availableshare/runtime/globals.hpp
UseNUMAboolruntimefalseproductUse NUMA if availableshare/runtime/globals.hpp
UseNeonboolaarch64falseproductUse Neon for CRC32 computationcpu/aarch64/globals_aarch64.hpp
UseNewCode2boolruntimefalseproductDIAGNOSTICshare/runtime/globals.hpp
UseNewCode3boolruntimefalseproductDIAGNOSTICshare/runtime/globals.hpp
UseNewCodeboolruntimefalseproductDIAGNOSTICshare/runtime/globals.hpp
UseNewLongLShiftboolx86falseproductUse optimized bitwise shift leftcpu/x86/globals_x86.hpp
UseNotificationThreadboolruntimetrueproductUse Notification Threadshare/runtime/globals.hpp
UseOSErrorReportingboolaixfalsedefine_pd_globalos/aix/globals_aix.hpp
UseOSErrorReportingboolbsdfalsedefine_pd_globalos/bsd/globals_bsd.hpp
UseOSErrorReportingboollinuxfalsedefine_pd_globalos/linux/globals_linux.hpp
UseOSErrorReportingboolruntimeproduct_pdLet VM fatal error propagate to the OS (ie. WER on Windows)share/runtime/globals.hpp
UseOSErrorReportingboolwindowsfalsedefine_pd_global// for now.os/windows/globals_windows.hpp
UseOnStackReplacementboolaarch64truedefine_pd_globalcpu/aarch64/c1_globals_aarch64.hpp
UseOnStackReplacementboolarmtruedefine_pd_globalcpu/arm/c2_globals_arm.hpp
UseOnStackReplacementboolcompilerfalsedefine_pd_globalshare/compiler/compiler_globals.hpp
UseOnStackReplacementboolruntimeproduct_pdUse on stack replacement, calls runtime if invoc. counter overflows in loopshare/runtime/globals.hpp
UseOnStackReplacementboolppctruedefine_pd_globalcpu/ppc/c1_globals_ppc.hpp
UseOnStackReplacementbools390truedefine_pd_globalcpu/s390/c2_globals_s390.hpp
UseOnStackReplacementboolx86truedefine_pd_globalcpu/x86/c1_globals_x86.hpp
UseOnlyInlinedBimorphicboolc2trueproductDon't use BimorphicInlining if can't inline a second methodshare/opto/c2_globals.hpp
UseOprofileObsoleted in JDK16
Expired in JDK17
boollinuxfalseproductenable support for Oprofile profileros/linux/globals_linux.hpp
UseOptoBiasInliningDeprecated in JDK15
Obsoleted in JDK16
Expired in JDK17
boolc2trueproduct(Deprecated) Generate biased locking code in C2 ideal graphshare/opto/c2_globals.hpp
UsePSAdaptiveSurvivorSizePolicyboolgctrueproductUse adaptive survivor sizing policiesshare/gc/shared/gc_globals.hpp
UseParallelGCboolgcfalseproductUse the Parallel garbage collector.share/gc/shared/gc_globals.hpp
UsePerfDataboolruntimetrueproductFlag to disable jvmstat instrumentation for performance testing and problem isolation purposesshare/runtime/globals.hpp
UsePopCountInstructionboolruntimefalseproductUse population count instructionshare/runtime/globals.hpp
UsePrivilegedStackboolruntimetruedevelopEnable the security JVM functionsshare/runtime/globals.hpp
UseProfiledLoopPredicateboolc2trueproductMove predicates out of loops based on profiling datashare/opto/c2_globals.hpp
UseRDPCForConstantTableBaseboolc2falseproductUse Sparc RDPC instruction for the constant table base.share/opto/c2_globals.hpp
UseRTMDeoptboolppcfalseproductPerform deopt and recompilation based on RTM abort ratiocpu/ppc/globals_ppc.hpp
UseRTMDeoptboolx86falseproductPerform deopt and recompilation based on RTM abort ratiocpu/x86/globals_x86.hpp
UseRTMForStackLocksboolppcfalseproductEXPERIMENTALcpu/ppc/globals_ppc.hpp
UseRTMForStackLocksboolx86falseproductEXPERIMENTALcpu/x86/globals_x86.hpp
UseRTMLockingboolppcfalseproductEnable RTM lock eliding for inflated locks in compiled codecpu/ppc/globals_ppc.hpp
UseRTMLockingboolx86falseproductEnable RTM lock eliding for inflated locks in compiled codecpu/x86/globals_x86.hpp
UseRTMXendForLockBusyboolppctrueproductEXPERIMENTALcpu/ppc/globals_ppc.hpp
UseRTMXendForLockBusyboolx86trueproductEXPERIMENTALcpu/x86/globals_x86.hpp
UseRotateAndMaskInstructionsPPC64boolppctrueproductDIAGNOSTICcpu/ppc/globals_ppc.hpp
UseSHA1IntrinsicsboolruntimefalseproductDIAGNOSTICshare/runtime/globals.hpp
UseSHA256IntrinsicsboolruntimefalseproductDIAGNOSTICshare/runtime/globals.hpp
UseSHA512IntrinsicsboolruntimefalseproductDIAGNOSTICshare/runtime/globals.hpp
UseSHAboolruntimefalseproductControl whether SHA instructions are used when availableshare/runtime/globals.hpp
UseSHMObsoleted in JDK12
Expired in JDK13
boollinuxfalseproductUse SYSV shared memory for large pagesos/linux/globals_linux.hpp
UseSIGTRAPboolppctrueproductAllow trap instructions that make use of SIGTRAP. Use this to switch off all optimizations requiring SIGTRAP.cpu/ppc/globals_ppc.hpp
UseSIMDForArrayEqualsboolaarch64trueproductUse SIMD instructions in generated array equals codecpu/aarch64/globals_aarch64.hpp
UseSIMDForMemoryOpsboolaarch64falseproductUse SIMD instructions in generated memory move codecpu/aarch64/globals_aarch64.hpp
UseSSE42Intrinsicsboolx86falseproductSSE4.2 versions of intrinsicscpu/x86/globals_x86.hpp
UseSSEObsoleted in JDK15
Expired in JDK16
intxx8699
range(0, 99)
productHighest supported SSE instructions set on x86/x64cpu/x86/globals_x86.hpp
UseSVEuintaarch640
range(0, 2)
productHighest supported SVE instruction set versioncpu/aarch64/globals_aarch64.hpp
UseSerialGCboolgcfalseproductUse the Serial garbage collectorshare/gc/shared/gc_globals.hpp
UseSharedSpacesboolruntimetrueproductUse shared spaces for metadatashare/runtime/globals.hpp
UseShenandoahGCboolgcfalseproductUse the Shenandoah garbage collectorshare/gc/shared/gc_globals.hpp
UseSignalChainingboolruntimetrueproductUse signal-chaining to invoke signal handlers installed by the application (Unix only)share/runtime/globals.hpp
UseSignumIntrinsicboolruntimefalseproductDIAGNOSTICshare/runtime/globals.hpp
UseSimpleArrayEqualsboolaarch64falseproductUse simpliest and shortest implementation for array equalscpu/aarch64/globals_aarch64.hpp
UseSlowPathboolc1falsedevelopFor debugging: test slow cases by always using themshare/c1/c1_globals.hpp
UseSquareToLenIntrinsicboolc2falseproductDIAGNOSTICshare/opto/c2_globals.hpp
UseStackBangingboolruntimetruedevelopuse stack banging for stack overflow checks (required for proper StackOverflow handling; disable only to measure cost of stackbanging)share/runtime/globals.hpp
UseStaticBranchPredictionForUncommonPathsPPC64boolppcfalseproductDIAGNOSTICcpu/ppc/globals_ppc.hpp
UseStaticBranchPredictionInCompareAndSwapPPC64boolppctrueproductDIAGNOSTICcpu/ppc/globals_ppc.hpp
UseStoreImmI16boolx86trueproductUse store immediate 16-bits value instruction on x86cpu/x86/globals_x86.hpp
UseStringDeduplicationboolruntimefalseproductUse string deduplicationshare/runtime/globals.hpp
UseSubwordForMaxVectorboolc2trueproductUse Subword Analysis to set maximum vector sizeshare/opto/c2_globals.hpp
UseSuperWordboolc2trueproductTransform scalar operations into superword operationsshare/opto/c2_globals.hpp
UseSwitchProfilingboolruntimetrueproductDIAGNOSTICshare/runtime/globals.hpp
UseTLABboolaarch64truedefine_pd_globalcpu/aarch64/c1_globals_aarch64.hpp
UseTLABboolarmtruedefine_pd_globalcpu/arm/c2_globals_arm.hpp
UseTLABboolcompilerfalsedefine_pd_globalshare/compiler/compiler_globals.hpp
UseTLABboolgcproduct_pdUse thread-local object allocationshare/gc/shared/gc_globals.hpp
UseTLABboolppctruedefine_pd_globalcpu/ppc/c1_globals_ppc.hpp
UseTLABbools390truedefine_pd_globalcpu/s390/c2_globals_s390.hpp
UseTLABboolx86truedefine_pd_globalcpu/x86/c1_globals_x86.hpp
UseTableRangesboolc1truedevelopFaster versions of lookup table using rangesshare/c1/c1_globals.hpp
UseThreadPrioritiesboolruntimeproduct_pdUse native thread prioritiesshare/runtime/globals.hpp
UseTransparentHugePagesboollinuxfalseproductUse MADV_HUGEPAGE for large pagesos/linux/globals_linux.hpp
UseTypeProfileboolaarch64falsedefine_pd_globalcpu/aarch64/c1_globals_aarch64.hpp
UseTypeProfileboolarmfalsedefine_pd_globalcpu/arm/c1_globals_arm.hpp
UseTypeProfileboolcompilerfalsedefine_pd_globalshare/compiler/compiler_globals.hpp
UseTypeProfileboolruntimetrueproductCheck interpreter profile for historically monomorphic callsshare/runtime/globals.hpp
UseTypeProfileboolppcfalsedefine_pd_globalcpu/ppc/c1_globals_ppc.hpp
UseTypeProfilebools390falsedefine_pd_globalcpu/s390/c1_globals_s390.hpp
UseTypeProfileboolx86falsedefine_pd_globalcpu/x86/c1_globals_x86.hpp
UseTypeSpeculationboolc2trueproductSpeculatively propagate types from profilesshare/opto/c2_globals.hpp
UseUnalignedAccessesboolruntimefalseproductDIAGNOSTICshare/runtime/globals.hpp
UseUnalignedLoadStoresboolx86falseproductUse SSE2 MOVDQU instruction for Arraycopycpu/x86/globals_x86.hpp
UseUniqueSubclassesboolc2truedevelopNarrow an abstract reference to the unique concrete subclassshare/opto/c2_globals.hpp
UseVectorByteReverseInstructionsPPC64boolppcfalseproductDIAGNOSTICcpu/ppc/globals_ppc.hpp
UseVectorCmovboolc2falseproductUse Vectorized Cmovshare/opto/c2_globals.hpp
UseVectorMacroLogicboolc2trueproductDIAGNOSTICshare/opto/c2_globals.hpp
UseVectorizedMismatchIntrinsicboolruntimefalseproductDIAGNOSTICshare/runtime/globals.hpp
UseXMMForArrayCopyboolruntimefalseproductUse SSE2 MOVQ instruction for Arraycopyshare/runtime/globals.hpp
UseXMMForObjInitboolx86falseproductUse XMM/YMM MOVDQU instruction for Object Initializationcpu/x86/globals_x86.hpp
UseXmmI2Dboolx86falseproductUse SSE2 CVTDQ2PD instruction to convert Integer to Doublecpu/x86/globals_x86.hpp
UseXmmI2Fboolx86falseproductUse SSE2 CVTDQ2PS instruction to convert Integer to Floatcpu/x86/globals_x86.hpp
UseXmmLoadAndClearUpperboolx86trueproductLoad low part of XMM register and clear upper partcpu/x86/globals_x86.hpp
UseXmmRegToRegMoveAllboolx86falseproductCopy all XMM register bits when moving value between registerscpu/x86/globals_x86.hpp
UseZGCboolgcfalseproductUse the Z garbage collectorshare/gc/shared/gc_globals.hpp
VMThreadPriorityintxruntime-1
range(-1, 127)
productThe native priority at which the VM thread should run (-1 means no change)share/runtime/globals.hpp
VMThreadStackSizeintxaixppc2048define_pd_globalos_cpu/aix_ppc/globals_aix_ppc.hpp
VMThreadStackSizeintxbsdx86512define_pd_globalos_cpu/bsd_x86/globals_bsd_x86.hpp
VMThreadStackSizeintxbsdzero512define_pd_globalos_cpu/bsd_zero/globals_bsd_zero.hpp
VMThreadStackSizeintxlinuxaarch642048define_pd_globalos_cpu/linux_aarch64/globals_linux_aarch64.hpp
VMThreadStackSizeintxlinuxarm512define_pd_globalos_cpu/linux_arm/globals_linux_arm.hpp
VMThreadStackSizeintxlinuxppc2048define_pd_globalos_cpu/linux_ppc/globals_linux_ppc.hpp
VMThreadStackSizeintxlinuxs3901024define_pd_globalos_cpu/linux_s390/globals_linux_s390.hpp
VMThreadStackSizeintxlinuxx86512define_pd_globalos_cpu/linux_x86/globals_linux_x86.hpp
VMThreadStackSizeintxlinuxzero512define_pd_globalos_cpu/linux_zero/globals_linux_zero.hpp
VMThreadStackSizeintxruntimeproduct_pdNon-Java Thread Stack Size (in Kbytes)share/runtime/globals.hpp
VMThreadStackSizeintxwindowsaarch640define_pd_globalos_cpu/windows_aarch64/globals_windows_aarch64.hpp
VMThreadStackSizeintxwindowsx860define_pd_global// 0 => use system defaultos_cpu/windows_x86/globals_windows_x86.hpp
ValueMapInitialSizeintxc111
range(1, NOT_LP64(1*K) LP64_ONLY(32*K))
productInitial size of a value mapshare/c1/c1_globals.hpp
ValueMapMaxLoopSizeintxc18
range(0, 128)
productmaximum size of a loop optimized by global value numberingshare/c1/c1_globals.hpp
ValueSearchLimitintxc21000
range(0, max_jint)
productRecursion limit in PhaseMacroExpand::value_from_mem_phishare/opto/c2_globals.hpp
VerboseboolruntimefalsedevelopPrint additional debugging information from other modesshare/runtime/globals.hpp
VerifyActivationFrameSizeboolruntimefalsedevelopVerify that activation frame didn't become smaller than its minimal sizeshare/runtime/globals.hpp
VerifyAdapterCallsboolruntimetrueInDebugproductDIAGNOSTICshare/runtime/globals.hpp
VerifyAdapterSharingboolruntimefalsedevelopVerify that the code for shared adapters is the equivalentshare/runtime/globals.hpp
VerifyAfterGCboolgcfalseproductDIAGNOSTICshare/gc/shared/gc_globals.hpp
VerifyAliasesboolc2falsedevelopperform extra checks on the results of alias analysisshare/opto/c2_globals.hpp
VerifyBeforeExitboolgctrueInDebugproductDIAGNOSTICshare/gc/shared/gc_globals.hpp
VerifyBeforeGCboolgcfalseproductDIAGNOSTICshare/gc/shared/gc_globals.hpp
VerifyBeforeIterationboolruntimefalseproductDIAGNOSTICshare/runtime/globals.hpp
VerifyCodeCacheboolruntimefalsenotproductVerify code cache on memory allocation/deallocationshare/runtime/globals.hpp
VerifyCompiledCodeboolruntimefalsedevelopInclude miscellaneous runtime verifications in nmethod code; default off because it disturbs nmethod size heuristicsshare/runtime/globals.hpp
VerifyConnectionGraphboolc2truenotproductVerify Connection Graph construction in Escape Analysisshare/opto/c2_globals.hpp
VerifyDUIteratorsboolc2truenotproductVerify the safety of all iterations of Bi-directional Edgesshare/opto/c2_globals.hpp
VerifyDataPointerboolruntimetrueInDebugdevelopVerify the method data pointer during interpreter profilingshare/runtime/globals.hpp
VerifyDependenciesboolruntimetrueInDebugdevelopExercise and verify the compilation dependency mechanismshare/runtime/globals.hpp
VerifyDuringGCboolgcfalseproductDIAGNOSTICshare/gc/shared/gc_globals.hpp
VerifyDuringStartupboolgcfalseproductDIAGNOSTICshare/gc/shared/gc_globals.hpp
VerifyFPUboolruntimefalsedevelopVerify FPU state (check for NaN's, etc.)share/runtime/globals.hpp
VerifyGCLevelintxgc0
range(0, 1)
productDIAGNOSTICshare/gc/shared/gc_globals.hpp
VerifyGCStartAtuintxgc0
range(0, max_uintx)
productDIAGNOSTICshare/gc/shared/gc_globals.hpp
VerifyGCTypeccstrlistgcDIAGNOSTICproductGC type(s) to verify when Verify*GC is enabled.Available types are collector specific.share/gc/shared/gc_globals.hpp
VerifyGraphEdgesboolc2falsenotproductVerify Bi-directional Edgesshare/opto/c2_globals.hpp
VerifyHashTableKeysboolc2truenotproductVerify the immutability of keys in the VN hash tablesshare/opto/c2_globals.hpp
VerifyIdealNodeCountboolc2falsenotproductVerify that tracked dead ideal node count is accurateshare/opto/c2_globals.hpp
VerifyIterativeGVNboolc2falsedevelopVerify Def-Use modifications during sparse Iterative Global Value Numberingshare/opto/c2_globals.hpp
VerifyJNIEnvThreadboolruntimefalsenotproductVerify JNIEnv.thread == Thread::current() when entering VM from JNIshare/runtime/globals.hpp
VerifyJNIFieldsboolruntimetrueInDebugdevelopVerify jfieldIDs for instance fieldsshare/runtime/globals.hpp
VerifyLastFrameboolruntimefalsenotproductVerify oops on last frame on entry to VMshare/runtime/globals.hpp
VerifyLoopOptimizationsboolc2falsenotproductverify major loop optimizationsshare/opto/c2_globals.hpp
VerifyMergedCPBytecodesboolruntimetrueproductVerify bytecodes after RedefineClasses constant pool mergingshare/runtime/globals.hpp
VerifyMetaspaceIntervalintruntimeDEBUG_ONLY(500) NOT_DEBUG(0)developRun periodic metaspace verifications (0 - none,
1 - always, >1 every nth interval)
share/runtime/globals.hpp
VerifyMethodHandlesboolruntimetrueInDebugproductDIAGNOSTICshare/runtime/globals.hpp
VerifyObjectStartArrayboolgctrueproductDIAGNOSTICshare/gc/shared/gc_globals.hpp
VerifyOopsboolruntimefalsedevelopDo plausibility checks for oopsshare/runtime/globals.hpp
VerifyRegisterAllocatorboolc2falsenotproductVerify Register Allocatorshare/opto/c2_globals.hpp
VerifyRememberedSetsboolgcfalseproductDIAGNOSTICshare/gc/shared/gc_globals.hpp
VerifySharedSpacesboolruntimefalseproductVerify integrity of shared spacesshare/runtime/globals.hpp
VerifyStackAtCallsboolruntimefalsedevelopVerify that the stack pointer is unchanged after callsshare/runtime/globals.hpp
VerifyStackboolruntimefalsedevelopVerify stack of each thread when it is entering a runtime callshare/runtime/globals.hpp
VerifyStringTableAtExitboolruntimefalseproductDIAGNOSTICshare/runtime/globals.hpp
VerifySubSetccstrlistgcDIAGNOSTICproductMemory 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_oopsshare/gc/shared/gc_globals.hpp
VerifyThreadboolruntimefalsedevelopWatch the thread register for corruption (SPARC only)share/runtime/globals.hpp
VitalsFileccstrruntimeNULLproductDIAGNOSTICshare/runtime/globals.hpp
VitalsLockFreeSamplingboolruntimefalseproductEXPERIMENTALshare/runtime/globals.hpp
VitalsSampleIntervaluintxruntime0productDIAGNOSTICshare/runtime/globals.hpp
WalkStackALotboolruntimefalsenotproductTrace stack (no print) at every exit from the runtime systemshare/runtime/globals.hpp
WarmCallMaxSizeintxc2999999
range(0, ((intx)MIN2((int64_t)max_intx,(int64_t)(+1.0e10))))
developsize of the largest inlinable methodshare/opto/c2_globals.hpp
WarmCallMaxWorkintxc2999999
range(0, ((intx)MIN2((int64_t)max_intx,(int64_t)(+1.0e10))))
developexecution time of the largest inlinable methodshare/opto/c2_globals.hpp
WarmCallMinCountintxc2-1
range(-1, ((intx)MIN2((int64_t)max_intx,(int64_t)(+1.0e10))))
developnumber of calls (per method invocation) to enable inliningshare/opto/c2_globals.hpp
WarmCallMinProfitintxc2-1
range(-1, ((intx)MIN2((int64_t)max_intx,(int64_t)(+1.0e10))))
developnumber of calls (per method invocation) to enable inliningshare/opto/c2_globals.hpp
WarnOnStalledSpinLockuintxruntime0notproductPrint warnings for stalled SpinLocksshare/runtime/globals.hpp
WhiteBoxAPIboolruntimefalseproductDIAGNOSTICshare/runtime/globals.hpp
WizardModeboolruntimefalsedevelopPrint much more debugging informationshare/runtime/globals.hpp
WorkStealingHardSpinsuintxgc4096productEXPERIMENTALshare/gc/shared/gc_globals.hpp
WorkStealingSleepMillisuintxgc1productEXPERIMENTALshare/gc/shared/gc_globals.hpp
WorkStealingSpinToYieldRatiouintxgc10productEXPERIMENTALshare/gc/shared/gc_globals.hpp
WorkStealingYieldsBeforeSleepuintxgc5000productEXPERIMENTALshare/gc/shared/gc_globals.hpp
YoungGenerationSizeIncrementuintxgc20
range(0, 100)
productAdaptive size percentage change in young generationshare/gc/shared/gc_globals.hpp
YoungGenerationSizeSupplementDecayuintxgc8
range(1, max_uintx)
productDecay factor to YoungedGenerationSizeSupplementshare/gc/shared/gc_globals.hpp
YoungGenerationSizeSupplementuintxgc80
range(0, 100)
productSupplement to YoungedGenerationSizeIncrement used at startupshare/gc/shared/gc_globals.hpp
YoungPLABSizesize_tgc4096productSize of young gen promotion LAB's (in HeapWords)share/gc/shared/gc_globals.hpp
ZAllocationSpikeTolerancedoublegc2.0productAllocation spike tolerance factorshare/gc/z/z_globals.hpp
ZCollectionIntervaluintgc0productForce GC at a fixed time interval (in seconds)share/gc/z/z_globals.hpp
ZFragmentationLimitdoublegc25.0productMaximum allowed heap fragmentationshare/gc/z/z_globals.hpp
ZMarkStackSpaceLimitsize_tgc8*G
range(32*M, 1024*G)
productMaximum number of bytes allocated for mark stacksshare/gc/z/z_globals.hpp
ZProactiveboolgctrueproductEnable proactive GC cyclesshare/gc/z/z_globals.hpp
ZStatisticsIntervaluintgc10
range(1, (uint)-1)
productDIAGNOSTICshare/gc/z/z_globals.hpp
ZUncommitDelayuintxgc5 * 60productUncommit memory if it has been unused for the specified amount of time (in seconds)share/gc/z/z_globals.hpp
ZUncommitboolgctrueproductUncommit unused memoryshare/gc/z/z_globals.hpp
ZVerifyForwardingboolgcfalseproductDIAGNOSTICshare/gc/z/z_globals.hpp
ZVerifyMarkingboolgctrueInDebugproductDIAGNOSTICshare/gc/z/z_globals.hpp
ZVerifyObjectsboolgcfalseproductDIAGNOSTICshare/gc/z/z_globals.hpp
ZVerifyRootsboolgctrueInDebugproductDIAGNOSTICshare/gc/z/z_globals.hpp
ZVerifyViewsboolgcfalseproductDIAGNOSTICshare/gc/z/z_globals.hpp
ZapEmptyStackFieldsbools390falsedevelopWrite 0x0101... to empty stack fields. Use this to ease stack debugging.cpu/s390/globals_s390.hpp
ZapFillerObjectsboolruntimetrueInDebugdevelopZap filler objects with 0xDEAFBABEshare/runtime/globals.hpp
ZapMemoryboolppcfalsedevelopWrite 0x0101... to empty memory. Use this to ease debugging.cpu/ppc/globals_ppc.hpp
ZapResourceAreaboolruntimetrueInDebugdevelopZap freed resource/arena space with 0xABABABABshare/runtime/globals.hpp
ZapStackSegmentsboolruntimetrueInDebugnotproductZap allocated/freed stack segments with 0xFADFADEDshare/runtime/globals.hpp
ZapUnusedHeapAreaboolruntimetrueInDebugdevelopZap unused heap space with 0xBAADBABEshare/runtime/globals.hpp
ZapVMHandleAreaboolruntimetrueInDebugnotproductZap freed VM handle space with 0xBCBCBCBCshare/runtime/globals.hpp
ZeroTLABboolgcfalseproductZero out the newly created TLABshare/gc/shared/gc_globals.hpp
ZombieALotIntervalintxruntime5notproductNumber of exits until ZombieALot kicks inshare/runtime/globals.hpp
ZombieALotboolruntimefalsenotproductCreate zombies (non-entrant) at exit from the runtime systemshare/runtime/globals.hpp
batchdisable background compilationlauncher.properties
bootclasspath/a<directories and zip/jar files separated by :> append to end of bootstrap class pathlauncher.properties
check:jniperform additional checks for JNI functionslauncher.properties
compforces compilation of methods on first invocationlauncher.properties
debugdoes nothing. Provided for backward compatibility.launcher.properties
diagshow additional diagnostic messageslauncher.properties
futureenable strictest checks, anticipating future default. This option is deprecated and may be removed in a future release.launcher.properties
hashCodeintxruntime5productEXPERIMENTALshare/runtime/globals.hpp
intinterpreted mode execution onlylauncher.properties
internalversion displays more detailed JVM version information than the -version optionlauncher.properties
log<opts>Configure or enable logging with the Java Virtual Machine (JVM) unified logging framework. Use -Xlog:help for details.launcher.properties
loggc<file>log GC status to a file with time stamps. This option is deprecated and may be removed in a future release. It is replaced by -Xlog:gc:<file>.launcher.properties
mixedmixed mode execution (default)launcher.properties
mn<size>sets the initial and maximum size (in bytes) of the heap for the young generation (nursery)launcher.properties
ms<size>set initial Java heap sizelauncher.properties
mx<size>set maximum Java heap sizelauncher.properties
noclassgcdisable class garbage collectionlauncher.properties
rsreduce use of OS signals by Java/VM (see documentation)launcher.properties
share:autouse shared class data if possible (default)launcher.properties
share:offdo not attempt to use shared class datalauncher.properties
share:onrequire using shared class data, otherwise fail. This is a testing option and may lead to intermittent failures. It should not be used in production environments.launcher.properties
showSettings:all show all settings and continuelauncher.properties
showSettings:locale show all locale related settings and continuelauncher.properties
showSettings:properties show all property settings and continuelauncher.properties
showSettings:system (Linux Only) show host system or container configuration and continuelauncher.properties
showSettings:vm show all vm related settings and continuelauncher.properties
showSettingsshow all settings and continuelauncher.properties
ss<size>set java thread stack sizelauncher.properties
verify
sets the mode of the bytecode verifier
Note that option -Xverify:none is deprecated and
may be removed in a future release.
launcher.properties