https://chriswhocodes.com/vm-options-explorer.html
Byte-Me
FullJEP
JEPMap
JEPSearch
hsdis
JITWatch
JaCoLine
VM Options Explorer
VM Intrinsics Explorer
GC Explorer
Optimizing Java
Thank You!
VM Options Explorer - OpenJDK11 HotSpot
OpenJDK HotSpot
Options added/removed between JDKs
OpenJDK options also hosted on foojay.io
6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
Alibaba Dragonwell
8 11 17 21 25
Magnifying Magnifying Magnifying Magnifying Magnifying
glass glass glass glass glass
Amazon Corretto
8 11 17 19 20 21 22 24 25 26
Magnifying Magnifying Magnifying Magnifying Magnifying Magnifying Magnifying Magnifying Magnifying Magnifying
glass glass glass glass glass glass glass glass glass glass
Azul Systems Zulu
8 11 13 15 16 17 18 19 20 21 22 24 25 26
Magnifying Magnifying Magnifying Magnifying Magnifying Magnifying Magnifying Magnifying Magnifying Magnifying Magnifying Magnifying Magnifying Magnifying
glass glass glass glass glass glass glass glass glass glass glass glass glass glass
BellSoft Liberica
8 11 17 18 19 20 21 22 25 26
Magnifying Magnifying Magnifying Magnifying Magnifying Magnifying Magnifying Magnifying Magnifying Magnifying
glass glass glass glass glass glass glass glass glass glass
Eclipse Temurin
8 11 17 18 19 20 21 22 25
Magnifying Magnifying Magnifying Magnifying Magnifying Magnifying Magnifying Magnifying Magnifying
glass glass glass glass glass glass glass glass glass
GraalVM 22.3.1
11 17 19
CE EE CE EE CE EE
EE-only EE-only EE-only
GraalVM native-image 22.3.1
11 17 19
CE EE CE EE CE EE
EE-only EE-only EE-only
JDK-based GraalVM
17 21 22 24 25
JDK Native JDK Native JDK Native JDK Native JDK Native
JetBrains Runtime
11 17 21
Magnifying glass Magnifying glass Magnifying glass
Microsoft
11 16 17 21 25
Magnifying Magnifying Magnifying Magnifying Magnifying
glass glass glass glass glass
OpenJ9
OpenJ9
Oracle
6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
Magnifying Magnifying Magnifying Magnifying Magnifying Magnifying Magnifying Magnifying Magnifying Magnifying Magnifying Magnifying Magnifying Magnifying Magnifying Magnifying Magnifying Magnifying Magnifying Magnifying Magnifying
glass glass glass glass glass glass glass glass glass glass glass glass glass glass glass glass glass glass glass glass glass
SAP SapMachine
11 17 19 20 21
Magnifying Magnifying Magnifying Magnifying Magnifying
glass glass glass glass glass
---------------------------------------------------------------------
Name Since Deprecated Type OS CPU Component Default Availability Description Defined in
Since Deprecated Type OS CPU Component Availability
AOTLibrary OpenJDK9 ccstrlist runtime NULL experimental AOT library share/runtime/globals.hpp
Minimum array size in bytes to use AVX512 intrinsics
AVX3Threshold OpenJDK11 int x86 4096 diagnostic for copy, inflate and fill. When this value is set as zero cpu/x86/globals_x86.hpp
range(0, max_jint) compare operations can also use AVX512 intrinsics.
AbortVMOnCompilationFailure OpenJDK11 bool runtime false diagnostic Abort VM when method had failed to compile. share/runtime/globals.hpp
Call fatal if the exception pointed by AbortVMOnException
AbortVMOnExceptionMessage OpenJDK6 ccstr runtime NULL diagnostic has this message share/runtime/globals.hpp
Call fatal if this exception is thrown. Example:
AbortVMOnException OpenJDK6 ccstr runtime NULL diagnostic java -XX:AbortVMOnException=java.lang.NullPointerException Foo share/runtime/globals.hpp
AbortVMOnSafepointTimeout OpenJDK11 bool runtime false diagnostic Abort upon failure to reach safepoint (see SafepointTimeout) share/runtime/globals.hpp
AbortVMOnVMOperationTimeoutDelay OpenJDK11 intx runtime 1000 diagnostic Delay in milliseconds for option AbortVMOnVMOperationTimeout share/runtime/globals.hpp
range(0, max_intx)
AbortVMOnVMOperationTimeout OpenJDK11 bool runtime false diagnostic Abort upon failure to complete VM operation promptly share/runtime/globals.hpp
ActiveProcessorCount OpenJDK10 int gc -1 product Specify the CPU count the VM should use and report as active share/gc/shared/
gc_globals.hpp
AdaptiveSizeDecrementScaleFactor OpenJDK6 uintx gc 4 product Adaptive size scale down factor for shrinking share/gc/shared/
range(1, max_uintx) gc_globals.hpp
Obsoleted
AdaptiveSizeMajorGCDecayTimeScale OpenJDK6 in JDK26 uintx gc 10 product Time scale over which major costs decay share/gc/shared/
Expired in range(0, max_uintx) gc_globals.hpp
JDK27
Obsoleted If collection costs are within margin, reduce both by full
AdaptiveSizePolicyCollectionCostMargin OpenJDK6 in JDK23 uintx gc 50 product delta share/gc/shared/
Expired in range(0, 100) gc_globals.hpp
JDK24
AdaptiveSizePolicyGCTimeLimitThreshold OpenJDK6 uintx gc 5 develop Number of consecutive collections before gc time limit fires share/gc/shared/
range(1, max_uintx) gc_globals.hpp
Obsoleted
AdaptiveSizePolicyInitializingSteps OpenJDK6 in JDK26 uintx gc 20 product Number of steps where heuristics is used before data is used share/gc/shared/
Expired in range(0, max_uintx) gc_globals.hpp
JDK27
Obsoleted
AdaptiveSizePolicyOutputInterval OpenJDK6 in JDK26 uintx gc 0 product Collection interval for printing information; zero means never share/gc/shared/
Expired in range(0, max_uintx) gc_globals.hpp
JDK27
AdaptiveSizePolicyReadyThreshold OpenJDK6 uintx gc 5 develop Number of collections before the adaptive sizing is started share/gc/shared/
gc_globals.hpp
AdaptiveSizePolicyWeight OpenJDK6 uintx gc 10 product Weight given to exponential resizing, between 0 and 100 share/gc/shared/
range(0, 100) gc_globals.hpp
Obsoleted
AdaptiveSizeThroughPutPolicy OpenJDK6 in JDK26 uintx gc 0 product Policy for changing generation size for throughput goals share/gc/shared/
Expired in range(0, 1) gc_globals.hpp
JDK27
Obsoleted
AdaptiveTimeWeight OpenJDK6 in JDK26 uintx gc 25 product Weight given to time in adaptive policy, between 0 and 100 share/gc/shared/
Expired in range(0, 100) gc_globals.hpp
JDK27
Deprecated
in JDK26
AggressiveHeap OpenJDK10 Obsoleted bool gc false product Optimize heap options for long-running memory intensive apps share/gc/shared/
in JDK27 gc_globals.hpp
Expired in
JDK28
Deprecated
in JDK11
AggressiveOpts OpenJDK6 Obsoleted bool runtime false product (Deprecated) Enable aggressive optimizations - see arguments.cpp share/runtime/globals.hpp
in JDK12
Expired in
JDK13
AggressiveUnboxing OpenJDK8 bool c2 false experimental Control optimizations for aggressive boxing elimination share/opto/c2_globals.hpp
Deprecated
in JDK19 0 for no aliasing, 1 for oop/field/static/array split,
AliasLevel OpenJDK6 Obsoleted intx c2 3 product share/opto/c2_globals.hpp
in JDK20 range(0, 3) 2 for class split, 3 for unique instances
Expired in
JDK21
AlignVector OpenJDK7 bool c2 true product Perform vector store/load alignment in loop share/opto/c2_globals.hpp
Path to the directoy where a temporary file will be created
AllocateHeapAt OpenJDK10 ccstr runtime NULL product to use as the backing store for Java Heap. share/runtime/globals.hpp
1 Number of lines to prefetch ahead of instance allocation
AllocateInstancePrefetchLines OpenJDK6 intx runtime range(1, 64) product pointer share/runtime/globals.hpp
Distance to prefetch ahead of allocation pointer.
AllocatePrefetchDistance OpenJDK6 intx runtime -1 product -1: use system-specific value (automatically determined share/runtime/globals.hpp
AllocatePrefetchInstr OpenJDK6 intx runtime 0 product Select instruction to prefetch ahead of allocation pointer share/runtime/globals.hpp
AllocatePrefetchLines OpenJDK6 intx runtime 3 product Number of lines to prefetch ahead of array allocation pointer share/runtime/globals.hpp
range(1, 64)
AllocatePrefetchStepSize OpenJDK6 intx runtime 16 product Step size in bytes of sequential prefetch instructions share/runtime/globals.hpp
range(1, 512)
0 = no prefetch,
1 = generate prefetch instructions for each allocation,
AllocatePrefetchStyle OpenJDK6 intx runtime 1 product share/runtime/globals.hpp
range(0, 3) 2 = use TLAB watermark to gate allocation prefetch,
3 = generate one prefetch instruction per cache line
AllowExtshm OpenJDK9 bool aix false product Allow VM to run with EXTSHM=ON. os/aix/globals_aix.hpp
Deprecated
in JDK13
AllowJNIEnvProxy OpenJDK6 Obsoleted bool runtime false product Allow JNIEnv proxies for jdbx share/runtime/globals.hpp
in JDK14
Expired in
JDK15
Deprecated
in JDK11
AllowNonVirtualCalls OpenJDK6 Obsoleted bool runtime false product Obey the ACC_SUPER flag and allow invokenonvirtual calls share/runtime/globals.hpp
in JDK12
Expired in
JDK13
Allow parallel defineClass requests for class loaders
AllowParallelDefineClass OpenJDK6 bool runtime false product registering as parallel capable share/runtime/globals.hpp
Do not complain if the application installs signal handlers
AllowUserSignalHandlers OpenJDK6 bool runtime false product (Solaris & Linux only) share/runtime/globals.hpp
AllowVectorizeOnDemand OpenJDK9 bool c2 true product Globally supress vectorization set in VectorizeMethod share/opto/c2_globals.hpp
Deprecated
in JDK26
AlwaysActAsServerClassMachine OpenJDK6 Obsoleted bool gc false product Always act like a server-class machine share/gc/shared/
in JDK27 gc_globals.hpp
Expired in
JDK28
AlwaysAtomicAccesses OpenJDK9 bool runtime false experimental Accesses to all variables should always be atomic share/runtime/globals.hpp
When using recompilation, never interpret methods
AlwaysCompileLoopMethods OpenJDK6 bool runtime false product containing loops share/runtime/globals.hpp
AlwaysIncrementalInline OpenJDK7 bool c2 false develop do all inlining incrementally share/opto/c2_globals.hpp
Deprecated
in JDK17 Require the VM to acquire the class loader lock before calling
AlwaysLockClassLoader OpenJDK6 Obsoleted bool runtime false product loadClass() even for class loaders registering share/runtime/globals.hpp
in JDK18 as parallel capable
Expired in
JDK19
AlwaysPreTouch OpenJDK6 bool gc false product Force all freshly committed pages to be pre-touched share/gc/shared/
gc_globals.hpp
AlwaysRestoreFPU OpenJDK6 bool runtime false product Restore the FPU control word after every JNI call (expensive) share/runtime/globals.hpp
AlwaysSafeConstructors OpenJDK9 bool runtime false experimental Force safe construction, as if all fields are final. share/runtime/globals.hpp
AlwaysTenure OpenJDK6 bool gc false product Always tenure objects in eden (ParallelGC only) share/gc/shared/
gc_globals.hpp
SOLARIS_ONLY(64*K) NOT_SOLARIS((size_t) Allocation less than this value will be allocated
ArrayAllocatorMallocLimit OpenJDK7 size_t runtime -1) experimental using malloc. Larger allocations will use mmap. share/runtime/globals.hpp
8 Maximum number of arraycopy elements inlined as a sequence of
ArrayCopyLoadStoreMaxElem OpenJDK9 intx c2 range(0, max_intx) product loads/stores share/opto/c2_globals.hpp
ArraycopyDstPrefetchDistance OpenJDK6 uintx sparc 0 product Distance to prefetch destination array in arraycopy cpu/sparc/globals_sparc.hpp
ArraycopySrcPrefetchDistance OpenJDK6 uintx sparc 0 product Distance to prefetch source array in arraycopy cpu/sparc/globals_sparc.hpp
Obsoleted
AssertOnSuspendWaitFailure OpenJDK6 in JDK17 bool runtime false product Assert/Guarantee on external suspend wait failure share/runtime/globals.hpp
Expired in
JDK18
AssertRangeCheckElimination OpenJDK8 bool c1 false develop Assert Range Check Elimination share/c1/c1_globals.hpp
Deprecated
in JDK10
AssumeMP OpenJDK8 Obsoleted bool runtime true product (Deprecated) Instruct the VM to assume multiple processors are available share/runtime/globals.hpp
in JDK12
Expired in
JDK13
AutoBoxCacheMax OpenJDK6 intx c2 128 product Sets max value cached by the java.lang.Integer autobox cache share/opto/c2_globals.hpp
range(0, max_jint)
AvoidUnalignedAccesses OpenJDK9 bool aarch64 false product Avoid generating unaligned memory accesses cpu/aarch64/
globals_aarch64.hpp
0 How much tracing to do of bytecode escape analysis estimates
BCEATraceLevel OpenJDK6 intx runtime range(0, 3) product (0-3) share/runtime/globals.hpp
BackgroundCompilation OpenJDK6 bool aarch64 true define_pd_global cpu/aarch64/
c1_globals_aarch64.hpp
BackgroundCompilation OpenJDK6 bool arm true define_pd_global cpu/arm/c1_globals_arm.hpp
A thread requesting compilation is not blocked during
BackgroundCompilation OpenJDK6 bool runtime product_pd compilation share/runtime/globals.hpp
BackgroundCompilation OpenJDK6 bool ppc true define_pd_global cpu/ppc/c2_globals_ppc.hpp
BackgroundCompilation OpenJDK6 bool s390 true define_pd_global cpu/s390/
c1_globals_s390.hpp
BackgroundCompilation OpenJDK6 bool sparc true define_pd_global cpu/sparc/
c2_globals_sparc.hpp
BackgroundCompilation OpenJDK6 bool x86 true define_pd_global cpu/x86/c1_globals_x86.hpp
BailoutAfterHIR OpenJDK6 bool c1 false develop bailout of compilation after building of HIR share/c1/c1_globals.hpp
BailoutAfterLIR OpenJDK6 bool c1 false develop bailout of compilation after building of LIR share/c1/c1_globals.hpp
BailoutOnExceptionHandlers OpenJDK6 bool c1 false develop bailout of compilation for methods with exception handlers share/c1/c1_globals.hpp
Compiled methods which throws/catches exceptions will be
BailoutToInterpreterForThrows OpenJDK6 bool c2 false develop deopt and intp. share/opto/c2_globals.hpp
Obsoleted
BaseFootPrintEstimate OpenJDK6 in JDK24 size_t gc 256*M product Estimate of footprint other than Java Heap share/gc/shared/
Expired in range(0, max_uintx) gc_globals.hpp
JDK25
BciProfileWidth OpenJDK6 intx runtime 2 develop Number of return bci's to record in ret profile share/runtime/globals.hpp
Deprecated
in JDK15 Threshold of number of revocations per type to try to
BiasedLockingBulkRebiasThreshold OpenJDK6 Obsoleted intx runtime 20 product rebias all objects in the heap of that type share/runtime/globals.hpp
in JDK18 range(0, max_intx)
Expired in
JDK19
Deprecated
in JDK15 Threshold of number of revocations per type to permanently
BiasedLockingBulkRevokeThreshold OpenJDK6 Obsoleted intx runtime 40 product revoke biases of all objects in the heap of that type share/runtime/globals.hpp
in JDK18 range(0, max_intx)
Expired in
JDK19
Deprecated
in JDK15 Decay time (in milliseconds) to re-enable bulk rebiasing of a
BiasedLockingDecayTime OpenJDK6 Obsoleted intx runtime 25000 product type after previous bulk rebias share/runtime/globals.hpp
in JDK18 range(500, max_intx)
Expired in
JDK19
Deprecated
in JDK15 0
BiasedLockingStartupDelay OpenJDK6 Obsoleted intx runtime range(0, (intx)(max_jint- product Number of milliseconds to wait before enabling biased locking share/runtime/globals.hpp
in JDK18 (max_jint%PeriodicTask::interval_gran)))
Expired in
JDK19
Minimal number of lookupswitch entries for rewriting to binary
BinarySwitchThreshold OpenJDK6 intx runtime 5 develop switch share/runtime/globals.hpp
BindCMSThreadToCPU OpenJDK6 bool gc false diagnostic Bind CMS Thread to CPU if possible share/gc/cms/
cms_globals.hpp
Obsoleted
BindGCTaskThreadsToCPUs OpenJDK6 in JDK14 bool gc false product Bind GCTaskThreads to CPUs if possible share/gc/shared/
Expired in gc_globals.hpp
JDK16
BlockCopyLowLimit OpenJDK6 intx sparc 2048 product Minimum size in bytes when block copy will be used cpu/sparc/globals_sparc.hpp
range(1, max_jint)
BlockLayoutByFrequency OpenJDK6 bool c2 true product Use edge frequencies to drive block ordering share/opto/c2_globals.hpp
20 Miniumum %% of a successor (predecessor) for which block
BlockLayoutMinDiamondPercentage OpenJDK6 intx c2 range(0, 100) product layout a will allow a fork (join) in a single chain share/opto/c2_globals.hpp
BlockLayoutRotateLoops OpenJDK6 bool c2 true product Allow back branches to be fall throughs in the block layout share/opto/c2_globals.hpp
Maintain _unallocated_block in BlockOffsetArray share/gc/shared/
BlockOffsetArrayUseUnallocatedBlock OpenJDK6 bool gc false diagnostic (currently applicable only to CMS collector) gc_globals.hpp
BlockZeroingLowLimit OpenJDK6 intx aarch64 256 product Minimum size in bytes when block zeroing will be used cpu/aarch64/
range(1, max_jint) globals_aarch64.hpp
BlockZeroingLowLimit OpenJDK6 intx sparc 2048 product Minimum size in bytes when block zeroing will be used cpu/sparc/globals_sparc.hpp
range(1, max_jint)
BootstrapJVMCI OpenJDK9 bool jvmci false experimental Bootstrap JVMCI before running Java main method share/jvmci/
jvmci_globals.hpp
Obsoleted
BranchOnRegister OpenJDK6 in JDK15 bool c2 false product Use Sparc V9 branch-on-register opcodes share/opto/c2_globals.hpp
Expired in
JDK16
BreakAtNode OpenJDK6 intx c2 0 notproduct Break at construction of this Node (either _idx or _debug_idx) share/opto/c2_globals.hpp
BreakAtWarning OpenJDK6 bool runtime false develop Execute breakpoint upon encountering VM warning share/runtime/globals.hpp
BytecodeVerificationLocal OpenJDK6 bool runtime false product Enable the Java bytecode verifier for local classes share/runtime/globals.hpp
BytecodeVerificationRemote OpenJDK6 bool runtime true product Enable the Java bytecode verifier for remote classes share/runtime/globals.hpp
C1Breakpoint OpenJDK6 bool c1 false develop Sets a breakpoint at entry of each compiled method share/c1/c1_globals.hpp
C1OptimizeVirtualCallProfiling OpenJDK6 bool c1 true product Use CHA and exact type results at call sites when updating MDOs share/c1/c1_globals.hpp
C1ProfileBranches OpenJDK6 bool c1 true product Profile branches when generating code for updating MDOs share/c1/c1_globals.hpp
C1ProfileCalls OpenJDK6 bool c1 true product Profile calls when generating code for updating MDOs share/c1/c1_globals.hpp
C1ProfileCheckcasts OpenJDK6 bool c1 true product Profile checkcasts when generating code for updating MDOs share/c1/c1_globals.hpp
C1ProfileInlinedCalls OpenJDK6 bool c1 true product Profile inlined calls when generating code for updating MDOs share/c1/c1_globals.hpp
C1ProfileVirtualCalls OpenJDK6 bool c1 true product Profile virtual calls when generating code for updating MDOs share/c1/c1_globals.hpp
C1UpdateMethodData OpenJDK6 bool c1 trueInTiered product Update MethodData*s in Tier1-generated code share/c1/c1_globals.hpp
CIBreakAtOSR OpenJDK6 intx runtime -1 develop The id of osr compilation to break at share/runtime/globals.hpp
CIBreakAt OpenJDK6 intx runtime -1 develop The id of compilation to break at share/runtime/globals.hpp
CICompileNatives OpenJDK6 bool runtime true develop compile native methods if supported by the compiler share/runtime/globals.hpp
CICompileOSR OpenJDK6 bool aarch64 true define_pd_global cpu/aarch64/
c1_globals_aarch64.hpp
CICompileOSR OpenJDK6 bool arm true define_pd_global cpu/arm/c1_globals_arm.hpp
compile on stack replacement methods if supported by the
CICompileOSR OpenJDK6 bool runtime develop_pd compiler share/runtime/globals.hpp
CICompileOSR OpenJDK6 bool ppc true define_pd_global cpu/ppc/c2_globals_ppc.hpp
CICompileOSR OpenJDK6 bool s390 true define_pd_global cpu/s390/
c1_globals_s390.hpp
CICompileOSR OpenJDK6 bool sparc true define_pd_global cpu/sparc/
c2_globals_sparc.hpp
CICompileOSR OpenJDK6 bool x86 true define_pd_global cpu/x86/c1_globals_x86.hpp
CICompilerCountPerCPU OpenJDK6 bool runtime false product 1 compiler thread for log(N CPUs) share/runtime/globals.hpp
CICompilerCount OpenJDK6 intx runtime CI_COMPILER_COUNT product Number of compiler threads to run share/runtime/globals.hpp
range(0, max_jint)
CICountOSR OpenJDK6 bool runtime false develop use a separate counter when assigning ids to osr compilations share/runtime/globals.hpp
id of compilation to trigger assert in compiler thread for
CICrashAt OpenJDK8 intx runtime -1 notproduct the purpose of testing, e.g. generation of replay data share/runtime/globals.hpp
Fire OutOfMemoryErrors throughout CI for testing the compiler
CIFireOOMAt OpenJDK6 intx runtime -1 develop (non-negative value throws OOM after this many CI accesses share/runtime/globals.hpp
in each compile)
CIObjectFactoryVerify OpenJDK6 bool runtime false notproduct enable potentially expensive verification in ciObjectFactory share/runtime/globals.hpp
display the contents of the compile queue whenever a
CIPrintCompileQueue OpenJDK6 bool runtime false diagnostic compilation is enqueued share/runtime/globals.hpp
CIPrintCompilerName OpenJDK6 bool runtime false develop when CIPrint is active, print the name of the active compiler share/runtime/globals.hpp
CIPrintMethodCodes OpenJDK6 bool runtime false develop print method bytecodes of the compiled code share/runtime/globals.hpp
CIPrintRequests OpenJDK6 bool runtime false develop display every request for compilation share/runtime/globals.hpp
CIPrintTypeFlow OpenJDK6 bool runtime false develop print the results of ciTypeFlow analysis share/runtime/globals.hpp
The id of the first osr compilation to permit
CIStartOSR OpenJDK6 intx runtime 0 develop (CICountOSR must be on) share/runtime/globals.hpp
CIStart OpenJDK6 intx runtime 0 develop The id of the first compilation to permit share/runtime/globals.hpp
The id of the last osr compilation to permit
CIStopOSR OpenJDK6 intx runtime max_jint develop (CICountOSR must be on) share/runtime/globals.hpp
CIStop OpenJDK6 intx runtime max_jint develop The id of the last compilation to permit share/runtime/globals.hpp
CITimeEach OpenJDK6 bool runtime false develop display timing information after each successful compilation share/runtime/globals.hpp
CITimeVerbose OpenJDK9 bool runtime false develop be more verbose in compilation timings share/runtime/globals.hpp
CITime OpenJDK6 bool runtime false product collect timing information for compilation share/runtime/globals.hpp
CITraceTypeFlow OpenJDK6 bool runtime false develop detailed per-bytecode tracing of ciTypeFlow analysis share/runtime/globals.hpp
Obsoleted
CMSAbortSemantics OpenJDK6 in JDK14 bool gc false product Whether abort-on-overflow semantics is implemented share/gc/cms/
Expired in cms_globals.hpp
JDK15
Obsoleted
CMSAbortablePrecleanMinWorkPerIteration OpenJDK6 in JDK14 uintx gc 100 product Nominal minimum work per abortable preclean iteration share/gc/cms/
Expired in range(0, max_uintx) cms_globals.hpp
JDK15
100 Time that we sleep between iterations when not given share/gc/cms/
CMSAbortablePrecleanWaitMillis OpenJDK6 intx gc range(0, max_intx) manageable enough work per iteration cms_globals.hpp
Obsoleted Bitmap operations should process at most this many bits
CMSBitMapYieldQuantum OpenJDK6 in JDK14 size_t gc 10*M product between yields share/gc/cms/
Expired in range(1, max_uintx) cms_globals.hpp
JDK15
Obsoleted Percentage CMS generation occupancy at which to
CMSBootstrapOccupancy OpenJDK6 in JDK14 uintx gc 50 product initiate CMS collection for bootstrapping collection stats share/gc/cms/
Expired in range(0, 100) cms_globals.hpp
JDK15
Interval in milliseconds that CMS thread checks if it share/gc/cms/
CMSCheckInterval OpenJDK8 uintx gc 1000 develop should start a collection cycle cms_globals.hpp
Obsoleted
CMSClassUnloadingEnabled OpenJDK6 in JDK14 bool gc true product Whether class unloading enabled when using CMS GC share/gc/cms/
Expired in cms_globals.hpp
JDK15
Obsoleted When CMS class unloading is enabled, the maximum CMS cycle
CMSClassUnloadingMaxInterval OpenJDK6 in JDK14 uintx gc 0 product count for which classes may not be unloaded share/gc/cms/
Expired in range(0, max_uintx) cms_globals.hpp
JDK15
Obsoleted
CMSCleanOnEnter OpenJDK6 in JDK14 bool gc true product Clean-on-enter optimization for reducing number of dirty cards share/gc/cms/
Expired in cms_globals.hpp
JDK15
Obsoleted
CMSConcMarkMultiple OpenJDK6 in JDK14 size_t gc 32 product Size (in cards) of CMS concurrent MT marking task share/gc/cms/
Expired in range(1, SIZE_MAX / 4096) cms_globals.hpp
JDK15
Obsoleted Whether multi-threaded concurrent work enabled
CMSConcurrentMTEnabled OpenJDK6 in JDK14 bool gc true product (effective only if ParNewGC) share/gc/cms/
Expired in cms_globals.hpp
JDK15
Obsoleted Number of times the coordinator GC thread will sleep while
CMSCoordinatorYieldSleepCount OpenJDK6 in JDK14 uintx gc 10 product yielding before giving up and resuming GC share/gc/cms/
Expired in range(0, max_juint) cms_globals.hpp
JDK15
Obsoleted Always record eden chunks used for the parallel initial mark
CMSEdenChunksRecordAlways OpenJDK7 in JDK14 bool gc true product or remark of eden share/gc/cms/
Expired in cms_globals.hpp
JDK15
Obsoleted Percentage (0-100) used to weight the current sample when
CMSExpAvgFactor OpenJDK6 in JDK14 uintx gc 50 product computing exponential averages for CMS statistics share/gc/cms/
Expired in range(0, 100) cms_globals.hpp
JDK15
Obsoleted
CMSExtrapolateSweep OpenJDK6 in JDK14 bool gc false product CMS: cushion for block demand during sweep share/gc/cms/
Expired in cms_globals.hpp
JDK15
Obsoleted Percentage (0-100) used to add conservatism when computing the
CMSIncrementalSafetyFactor OpenJDK6 in JDK14 uintx gc 10 product duty cycle share/gc/cms/
Expired in range(0, 100) cms_globals.hpp
JDK15
Obsoleted
CMSIndexedFreeListReplenish OpenJDK6 in JDK14 uintx gc 4 product Replenish an indexed free list with this number of chunks share/gc/cms/
Expired in range(1, max_uintx) cms_globals.hpp
JDK15
Obsoleted Percentage CMS generation occupancy to start a CMS collection
CMSInitiatingOccupancyFraction OpenJDK6 in JDK14 intx gc -1 product cycle. A negative value means that CMSTriggerRatio is used share/gc/cms/
Expired in range(min_intx, 100) cms_globals.hpp
JDK15
Obsoleted An absolute ceiling above which CMS will always consider the
CMSIsTooFullPercentage OpenJDK6 in JDK14 uintx gc 98 product unloading of classes when class unloading is enabled share/gc/cms/
Expired in range(0, 100) cms_globals.hpp
JDK15
Obsoleted CMS: the factor by which to inflate estimated demand of large
CMSLargeCoalSurplusPercent OpenJDK6 in JDK14 double gc 0.95 product block sizes to prevent coalescing with an adjoining block share/gc/cms/
Expired in range(0.0, DBL_MAX) cms_globals.hpp
JDK15
Obsoleted CMS: the factor by which to inflate estimated demand of large
CMSLargeSplitSurplusPercent OpenJDK6 in JDK14 double gc 1.00 product block sizes to prevent splitting to supply demand for smaller share/gc/cms/
Expired in range(0.0, DBL_MAX) blocks cms_globals.hpp
JDK15
Obsoleted
CMSLoopWarn OpenJDK6 in JDK14 bool gc false product Warn in case of excessive CMS looping share/gc/cms/
Expired in cms_globals.hpp
JDK15
CMSMarkStackOverflowALot OpenJDK6 bool gc false notproduct Simulate frequent marking stack / work queue overflow share/gc/cms/
cms_globals.hpp
An 'interval' counter that determines how frequently share/gc/cms/
CMSMarkStackOverflowInterval OpenJDK6 uintx gc 1000 notproduct to simulate overflow; a smaller number increases frequency cms_globals.hpp
Obsoleted
CMSMaxAbortablePrecleanLoops OpenJDK6 in JDK14 uintx gc 0 product Maximum number of abortable preclean iterations, if > 0 share/gc/cms/
Expired in range(0, max_uintx) cms_globals.hpp
JDK15
Obsoleted
CMSMaxAbortablePrecleanTime OpenJDK6 in JDK14 intx gc 5000 product Maximum time in abortable preclean (in milliseconds) share/gc/cms/
Expired in range(0, max_intx) cms_globals.hpp
JDK15
Obsoleted Maximum size of CMS gen promotion LAB caches per worker
CMSOldPLABMax OpenJDK6 in JDK14 size_t gc 1024 product per block size share/gc/cms/
Expired in range(1, max_uintx) cms_globals.hpp
JDK15
Obsoleted Minimum size of CMS gen promotion LAB caches per worker
CMSOldPLABMin OpenJDK6 in JDK14 size_t gc 16 product per block size share/gc/cms/
Expired in range(1, max_uintx) cms_globals.hpp
JDK15
Obsoleted Nominal number of refills of CMS gen promotion LAB cache
CMSOldPLABNumRefills OpenJDK6 in JDK14 uintx gc 4 product per worker per block size share/gc/cms/
Expired in range(1, max_uintx) cms_globals.hpp
JDK15
Obsoleted The gain in the feedback loop for on-the-fly PLAB resizing
CMSOldPLABReactivityFactor OpenJDK6 in JDK14 uintx gc 2 product during a scavenge share/gc/cms/
Expired in range(1, max_uintx) cms_globals.hpp
JDK15
Obsoleted React on-the-fly during a scavenge to a sudden
CMSOldPLABResizeQuicker OpenJDK6 in JDK14 bool gc false product change in block demand rate share/gc/cms/
Expired in cms_globals.hpp
JDK15
Obsoleted The tolerance of the phase-change detector for on-the-fly
CMSOldPLABToleranceFactor OpenJDK6 in JDK14 uintx gc 4 product PLAB resizing during a scavenge share/gc/cms/
Expired in range(1, max_uintx) cms_globals.hpp
JDK15
Obsoleted Always record survivor space PLAB boundaries (effective only
CMSPLABRecordAlways OpenJDK6 in JDK14 bool gc true product if CMSParallelSurvivorRemarkEnabled) share/gc/cms/
Expired in cms_globals.hpp
JDK15
Obsoleted
CMSParallelInitialMarkEnabled OpenJDK7 in JDK14 bool gc true product Use the parallel initial mark. share/gc/cms/
Expired in cms_globals.hpp
JDK15
Obsoleted
CMSParallelRemarkEnabled OpenJDK6 in JDK14 bool gc true product Whether parallel remark enabled (only if ParNewGC) share/gc/cms/
Expired in cms_globals.hpp
JDK15
Obsoleted Whether parallel remark of survivor space
CMSParallelSurvivorRemarkEnabled OpenJDK6 in JDK14 bool gc true product enabled (effective only if CMSParallelRemarkEnabled) share/gc/cms/
Expired in cms_globals.hpp
JDK15
Obsoleted CMSPrecleanNumerator:CMSPrecleanDenominator yields convergence
CMSPrecleanDenominator OpenJDK6 in JDK14 uintx gc 3 product ratio share/gc/cms/
Expired in range(1, max_uintx) cms_globals.hpp
JDK15
Obsoleted
CMSPrecleanIter OpenJDK6 in JDK14 uintx gc 3 product Maximum number of precleaning iteration passes share/gc/cms/
Expired in range(0, 9) cms_globals.hpp
JDK15
Obsoleted CMSPrecleanNumerator:CMSPrecleanDenominator yields convergence
CMSPrecleanNumerator OpenJDK6 in JDK14 uintx gc 2 product ratio share/gc/cms/
Expired in range(0, max_uintx-1) cms_globals.hpp
JDK15
Obsoleted
CMSPrecleanRefLists1 OpenJDK6 in JDK14 bool gc true product Preclean ref lists during (initial) preclean phase share/gc/cms/
Expired in cms_globals.hpp
JDK15
Obsoleted
CMSPrecleanRefLists2 OpenJDK6 in JDK14 bool gc false product Preclean ref lists during abortable preclean phase share/gc/cms/
Expired in cms_globals.hpp
JDK15
Obsoleted
CMSPrecleanSurvivors1 OpenJDK6 in JDK14 bool gc false product Preclean survivors during (initial) preclean phase share/gc/cms/
Expired in cms_globals.hpp
JDK15
Obsoleted
CMSPrecleanSurvivors2 OpenJDK6 in JDK14 bool gc true product Preclean survivors during abortable preclean phase share/gc/cms/
Expired in cms_globals.hpp
JDK15
Obsoleted
CMSPrecleanThreshold OpenJDK6 in JDK14 uintx gc 1000 product Do not iterate again if number of dirty cards is less than this share/gc/cms/
Expired in range(100, max_uintx) cms_globals.hpp
JDK15
Obsoleted
CMSPrecleaningEnabled OpenJDK6 in JDK14 bool gc true product Whether concurrent precleaning enabled share/gc/cms/
Expired in cms_globals.hpp
JDK15
Obsoleted If logging for the 'gc' and 'promotion' tags is enabled on
CMSPrintChunksInDump OpenJDK6 in JDK14 bool gc false product trace level include more detailed information about the share/gc/cms/
Expired in free chunks cms_globals.hpp
JDK15
Obsoleted If logging for the 'gc' and 'promotion' tags is enabled on
CMSPrintObjectsInDump OpenJDK6 in JDK14 bool gc false product trace level include more detailed information about the share/gc/cms/
Expired in allocated objects cms_globals.hpp
JDK15
Obsoleted
CMSRemarkVerifyVariant OpenJDK6 in JDK14 uintx gc 1 product Choose variant (1,2) of verification following remark share/gc/cms/
Expired in range(1, 2) cms_globals.hpp
JDK15
Obsoleted
CMSReplenishIntermediate OpenJDK6 in JDK14 bool gc true product Replenish all intermediate free-list caches share/gc/cms/
Expired in cms_globals.hpp
JDK15
Obsoleted
CMSRescanMultiple OpenJDK6 in JDK14 size_t gc 32 product Size (in cards) of CMS parallel rescan task share/gc/cms/
Expired in range(1, SIZE_MAX / 4096) cms_globals.hpp
JDK15
Obsoleted
CMSSamplingGrain OpenJDK6 in JDK14 uintx gc 16*K product The minimum distance between eden samples for CMS (see above) share/gc/cms/
Expired in range(ObjectAlignmentInBytes, max_uintx) cms_globals.hpp
JDK15
Obsoleted
CMSScavengeBeforeRemark OpenJDK6 in JDK14 bool gc false product Attempt scavenge before the CMS remark step share/gc/cms/
Expired in cms_globals.hpp
JDK15
Obsoleted The Eden occupancy percentage (0-100) at which
CMSScheduleRemarkEdenPenetration OpenJDK6 in JDK14 uintx gc 50 product to try and schedule remark pause share/gc/cms/
Expired in range(0, 100) cms_globals.hpp
JDK15
Obsoleted
CMSScheduleRemarkEdenSizeThreshold OpenJDK6 in JDK14 size_t gc 2*M product If Eden size is below this, do not try to schedule remark share/gc/cms/
Expired in range(0, max_uintx) cms_globals.hpp
JDK15
Obsoleted Start sampling eden top at least before young gen
CMSScheduleRemarkSamplingRatio OpenJDK6 in JDK14 uintx gc 5 product occupancy reaches 1/ of the size at which share/gc/cms/
Expired in range(1, max_uintx) we plan to schedule remark cms_globals.hpp
JDK15
Obsoleted CMS: the factor by which to inflate estimated demand of small
CMSSmallCoalSurplusPercent OpenJDK6 in JDK14 double gc 1.05 product block sizes to prevent coalescing with an adjoining block share/gc/cms/
Expired in range(0.0, DBL_MAX) cms_globals.hpp
JDK15
Obsoleted CMS: the factor by which to inflate estimated demand of small
CMSSmallSplitSurplusPercent OpenJDK6 in JDK14 double gc 1.10 product block sizes to prevent splitting to supply demand for smaller share/gc/cms/
Expired in range(0.0, DBL_MAX) blocks cms_globals.hpp
JDK15
Obsoleted When satisfying batched demand, split blocks from the
CMSSplitIndexedFreeListBlocks OpenJDK6 in JDK14 bool gc true product IndexedFreeList whose size is a multiple of requested size share/gc/cms/
Expired in cms_globals.hpp
JDK15
Check if the coalesced range is already in the share/gc/cms/
CMSTestInFreeList OpenJDK6 bool gc false develop free lists as claimed cms_globals.hpp
-1 Commence a CMS collection cycle (at least) every so many share/gc/cms/
CMSTriggerInterval OpenJDK8 intx gc range(-1, max_intx) manageable milliseconds (0 permanently, -1 disabled) cms_globals.hpp
Obsoleted Percentage of MinHeapFreeRatio in CMS generation that is
CMSTriggerRatio OpenJDK6 in JDK14 uintx gc 80 product allocated before a CMS collection cycle commences share/gc/cms/
Expired in range(0, 100) cms_globals.hpp
JDK15
Check that all the garbage collected was returned to the share/gc/cms/
CMSVerifyReturnedBytes OpenJDK6 bool gc false notproduct free lists cms_globals.hpp
CMSWaitDuration OpenJDK6 intx gc 2000 manageable Time in milliseconds that CMS thread waits for young GC share/gc/cms/
range(min_jint, max_jint) cms_globals.hpp
Obsoleted
CMSWorkQueueDrainThreshold OpenJDK6 in JDK14 uintx gc 10 product Don't drain below this size per parallel worker/thief share/gc/cms/
Expired in range(1, max_juint) cms_globals.hpp
JDK15
Obsoleted Number of times a GC thread (minus the coordinator)
CMSYieldSleepCount OpenJDK6 in JDK14 uintx gc 0 product will sleep while yielding before giving up and resuming GC share/gc/cms/
Expired in range(0, max_juint) cms_globals.hpp
JDK15
Obsoleted
CMSYield OpenJDK6 in JDK14 bool gc true product Yield between steps of CMS share/gc/cms/
Expired in cms_globals.hpp
JDK15
Obsoleted
CMSYoungGenPerWorker OpenJDK6 in JDK14 uintx aarch64 64*M define_pd_global // default max size of CMS young gen, per GC worker thread cpu/aarch64/
Expired in globals_aarch64.hpp
JDK15
Obsoleted
CMSYoungGenPerWorker OpenJDK6 in JDK14 size_t arm 16*M define_pd_global // default max size of CMS young gen, per GC worker thread cpu/arm/globals_arm.hpp
Expired in
JDK15
Obsoleted The maximum size of young gen chosen by default per GC worker
CMSYoungGenPerWorker OpenJDK6 in JDK14 size_t gc product_pd thread available share/gc/cms/
Expired in cms_globals.hpp
JDK15
Obsoleted
CMSYoungGenPerWorker OpenJDK6 in JDK14 size_t ppc 16*M define_pd_global // Default max size of CMS young gen, per GC worker thread. cpu/ppc/globals_ppc.hpp
Expired in
JDK15
Obsoleted
CMSYoungGenPerWorker OpenJDK6 in JDK14 size_t s390 16*M define_pd_global // Default max size of CMS young gen, per GC worker thread. cpu/s390/globals_s390.hpp
Expired in
JDK15
Obsoleted
CMSYoungGenPerWorker OpenJDK6 in JDK14 size_t sparc 16*M define_pd_global // default max size of CMS young gen, per GC worker thread cpu/sparc/globals_sparc.hpp
Expired in
JDK15
Obsoleted
CMSYoungGenPerWorker OpenJDK6 in JDK14 size_t x86 64*M define_pd_global // default max size of CMS young gen, per GC worker thread cpu/x86/globals_x86.hpp
Expired in
JDK15
Obsoleted
CMSYoungGenPerWorker OpenJDK6 in JDK14 size_t zero 16*M define_pd_global // default max size of CMS young gen, per GC worker thread cpu/zero/globals_zero.hpp
Expired in
JDK15
Obsoleted The multiple of deviation from mean to use for buffering
CMS_FLSPadding OpenJDK6 in JDK14 uintx gc 1 product against volatility in free list demand share/gc/cms/
Expired in range(0, max_juint) cms_globals.hpp
JDK15
Obsoleted Percentage (0-100) used to weight the current sample when
CMS_FLSWeight OpenJDK6 in JDK14 uintx gc 75 product computing exponentially decaying averages for CMS FLS share/gc/cms/
Expired in range(0, 100) statistics cms_globals.hpp
JDK15
Obsoleted The multiple of deviation from mean to use for buffering
CMS_SweepPadding OpenJDK6 in JDK14 uintx gc 1 product against volatility in inter-sweep duration share/gc/cms/
Expired in range(0, max_juint) cms_globals.hpp
JDK15
Obsoleted Skip block flux-rate sampling for an epoch unless inter-sweep
CMS_SweepTimerThresholdMillis OpenJDK6 in JDK14 uintx gc 10 product duration exceeds this threshold in milliseconds share/gc/cms/
Expired in range(0, max_uintx) cms_globals.hpp
JDK15
Obsoleted Percentage (0-100) used to weight the current sample when
CMS_SweepWeight OpenJDK6 in JDK14 uintx gc 75 product computing exponentially decaying average for inter-sweep share/gc/cms/
Expired in range(0, 100) duration cms_globals.hpp
JDK15
CPUForCMSThread OpenJDK6 uintx gc 0 diagnostic When BindCMSThreadToCPU is true, the CPU to bind CMS thread to share/gc/cms/
range(0, max_juint) cms_globals.hpp
CSEArrayLength OpenJDK6 bool aarch64 false define_pd_global cpu/aarch64/
c1_globals_aarch64.hpp
CSEArrayLength OpenJDK6 bool arm true define_pd_global cpu/arm/c1_globals_arm.hpp
CSEArrayLength OpenJDK6 bool c1 develop_pd Create separate nodes for length in array accesses share/c1/c1_globals.hpp
CSEArrayLength OpenJDK6 bool ppc true define_pd_global cpu/ppc/c1_globals_ppc.hpp
CSEArrayLength OpenJDK6 bool s390 true define_pd_global cpu/s390/
c1_globals_s390.hpp
CSEArrayLength OpenJDK6 bool sparc true define_pd_global cpu/sparc/
c1_globals_sparc.hpp
CSEArrayLength OpenJDK6 bool x86 false define_pd_global cpu/x86/c1_globals_x86.hpp
CalculateClassFingerprint OpenJDK10 bool runtime false product Calculate class fingerprint share/runtime/globals.hpp
CanonicalizeNodes OpenJDK6 bool c1 true develop Canonicalize graph nodes share/c1/c1_globals.hpp
CheckCompressedOops OpenJDK6 bool runtime true notproduct Generate checks in encoding/decoding code in debug VM share/runtime/globals.hpp
When a class C is loaded, check that
(1) all intrinsics defined by the VM for class C are present
in the loaded class file and are marked with the
@HotSpotIntrinsicCandidate annotation, that
(2) there is an intrinsic registered for all loaded methods
CheckIntrinsics OpenJDK9 bool runtime true diagnostic that are annotated with the @HotSpotIntrinsicCandidate share/runtime/globals.hpp
annotation, and that
(3) no orphan methods exist for class C (i.e., methods for
which the VM declares an intrinsic but that are not declared
in the loaded class C.
Check (3) is available only in debug builds.
CheckJNICalls OpenJDK6 bool runtime false product Verify all arguments to JNI calls share/runtime/globals.hpp
CheckMemoryInitialization OpenJDK6 bool runtime false notproduct Check memory initialization share/runtime/globals.hpp
CheckUnhandledOops OpenJDK6 bool runtime false develop Check for unhandled oops in VM code share/runtime/globals.hpp
CheckZapUnusedHeapArea OpenJDK6 bool runtime false develop Check zapping of unused heap space share/runtime/globals.hpp
ClassUnloadingWithConcurrentMark OpenJDK8 bool runtime true product Do unloading of classes with a concurrent marking cycle share/runtime/globals.hpp
ClassUnloading OpenJDK6 bool runtime true product Do unloading of classes share/runtime/globals.hpp
CleanChunkPoolAsync OpenJDK6 bool runtime true develop Clean the chunk pool asynchronously share/runtime/globals.hpp
ClipInlining OpenJDK6 bool runtime true product Clip inlining if aggregate method exceeds DesiredMethodLimit share/runtime/globals.hpp
CodeCacheExpansionSize OpenJDK6 intx aarch64 32*K define_pd_global cpu/aarch64/
c1_globals_aarch64.hpp
CodeCacheExpansionSize OpenJDK6 size_t arm 32*K define_pd_global cpu/arm/c1_globals_arm.hpp
CodeCacheExpansionSize OpenJDK6 uintx runtime product_pd Code cache expansion size (in bytes) share/runtime/globals.hpp
CodeCacheExpansionSize OpenJDK6 uintx ppc 64*K define_pd_global cpu/ppc/c2_globals_ppc.hpp
CodeCacheExpansionSize OpenJDK6 uintx s390 32*K define_pd_global cpu/s390/
c1_globals_s390.hpp
CodeCacheExpansionSize OpenJDK6 uintx sparc 64*K define_pd_global cpu/sparc/
c2_globals_sparc.hpp
CodeCacheExpansionSize OpenJDK6 uintx x86 32*K define_pd_global cpu/x86/c1_globals_x86.hpp
CodeCacheMinBlockLength OpenJDK6 uintx aarch64 1 define_pd_global cpu/aarch64/
c1_globals_aarch64.hpp
CodeCacheMinBlockLength OpenJDK6 uintx arm 1 define_pd_global cpu/arm/c1_globals_arm.hpp
CodeCacheMinBlockLength OpenJDK6 uintx runtime diagnostic_pd Minimum number of segments in a code cache block share/runtime/globals.hpp
CodeCacheMinBlockLength OpenJDK6 uintx ppc 6 define_pd_global cpu/ppc/c2_globals_ppc.hpp
CodeCacheMinBlockLength OpenJDK6 uintx s390 1 define_pd_global cpu/s390/
c1_globals_s390.hpp
CodeCacheMinBlockLength OpenJDK6 uintx sparc 6 define_pd_global cpu/sparc/
c2_globals_sparc.hpp
CodeCacheMinBlockLength OpenJDK6 uintx x86 1 define_pd_global cpu/x86/c1_globals_x86.hpp
CodeCacheMinimumUseSpace OpenJDK8 uintx aarch64 400*K define_pd_global cpu/aarch64/
c1_globals_aarch64.hpp
CodeCacheMinimumUseSpace OpenJDK8 size_t arm 400*K define_pd_global cpu/arm/c1_globals_arm.hpp
CodeCacheMinimumUseSpace OpenJDK8 uintx runtime develop_pd Minimum code cache size (in bytes) required to start VM. share/runtime/globals.hpp
CodeCacheMinimumUseSpace OpenJDK8 uintx ppc 400*K define_pd_global cpu/ppc/c2_globals_ppc.hpp
CodeCacheMinimumUseSpace OpenJDK8 uintx s390 400*K define_pd_global cpu/s390/
c1_globals_s390.hpp
CodeCacheMinimumUseSpace OpenJDK8 uintx sparc 400*K define_pd_global cpu/sparc/
c2_globals_sparc.hpp
CodeCacheMinimumUseSpace OpenJDK8 uintx x86 400*K define_pd_global cpu/x86/c1_globals_x86.hpp
CodeCacheSegmentSize OpenJDK6 uintx aarch64 64 TIERED_ONLY(+64) define_pd_global // Tiered compilation has large code-entry alignment. cpu/aarch64/
globals_aarch64.hpp
CodeCacheSegmentSize OpenJDK6 uintx arm 64 TIERED_ONLY(+64) define_pd_global // Tiered compilation has large code-entry alignment. cpu/arm/globals_arm.hpp
Code cache segment size (in bytes) - smallest unit of
CodeCacheSegmentSize OpenJDK6 uintx runtime develop_pd allocation share/runtime/globals.hpp
CodeCacheSegmentSize OpenJDK6 uintx ppc 128 define_pd_global cpu/ppc/globals_ppc.hpp
CodeCacheSegmentSize OpenJDK6 uintx s390 256 define_pd_global cpu/s390/globals_s390.hpp
CodeCacheSegmentSize OpenJDK6 uintx sparc 64 TIERED_ONLY(+64) define_pd_global // Tiered compilation has large code-entry alignment. cpu/sparc/globals_sparc.hpp
CodeCacheSegmentSize OpenJDK6 uintx x86 64 TIERED_ONLY(+64) define_pd_global // Tiered compilation has large code-entry alignment. cpu/x86/globals_x86.hpp
CodeCacheSegmentSize OpenJDK6 uintx zero 64 TIERED_ONLY(+64) define_pd_global // Tiered compilation has large code-entry alignment. cpu/zero/globals_zero.hpp
CodeEntryAlignment OpenJDK6 intx aarch64 64 define_pd_global cpu/aarch64/
globals_aarch64.hpp
CodeEntryAlignment OpenJDK6 intx arm 16 define_pd_global cpu/arm/globals_arm.hpp
CodeEntryAlignment OpenJDK6 intx runtime develop_pd Code entry alignment for generated code (in bytes) share/runtime/globals.hpp
CodeEntryAlignment OpenJDK6 intx ppc 128 define_pd_global cpu/ppc/globals_ppc.hpp
CodeEntryAlignment OpenJDK6 intx s390 64 define_pd_global cpu/s390/globals_s390.hpp
CodeEntryAlignment OpenJDK6 intx sparc 32 define_pd_global cpu/sparc/globals_sparc.hpp
CodeEntryAlignment OpenJDK6 intx x86 16 define_pd_global cpu/x86/globals_x86.hpp
CodeEntryAlignment OpenJDK6 intx zero 32 define_pd_global cpu/zero/globals_zero.hpp
CollectIndexSetStatistics OpenJDK6 bool runtime false notproduct Collect information about IndexSets share/runtime/globals.hpp
CommentedAssembly OpenJDK6 bool c1 trueInDebug develop Show extra info in PrintNMethods output share/c1/c1_globals.hpp
Deprecated
in JDK14
CompactFields OpenJDK6 Obsoleted bool runtime true product Allocate nonstatic fields in gaps between previous fields share/runtime/globals.hpp
in JDK15
Expired in
JDK16
CompactStrings OpenJDK9 bool aarch64 true define_pd_global cpu/aarch64/
globals_aarch64.hpp
CompactStrings OpenJDK9 bool arm false define_pd_global cpu/arm/globals_arm.hpp
CompactStrings OpenJDK9 bool runtime product_pd Enable Strings to use single byte chars in backing store share/runtime/globals.hpp
CompactStrings OpenJDK9 bool ppc true define_pd_global cpu/ppc/globals_ppc.hpp
CompactStrings OpenJDK9 bool s390 true define_pd_global cpu/s390/globals_s390.hpp
CompactStrings OpenJDK9 bool sparc true define_pd_global cpu/sparc/globals_sparc.hpp
CompactStrings OpenJDK9 bool x86 true define_pd_global cpu/x86/globals_x86.hpp
CompactStrings OpenJDK9 bool zero true define_pd_global cpu/zero/globals_zero.hpp
Deprecated
in JDK13
CompilationPolicyChoice OpenJDK6 Obsoleted intx runtime 0 product which compilation policy (0-2) share/runtime/globals.hpp
in JDK14 range(0, 2)
Expired in
JDK15
CompileCommandFile OpenJDK6 ccstr runtime NULL product Read compiler commands from this file [.hotspot_compiler] share/runtime/globals.hpp
CompileCommand OpenJDK6 ccstrlist runtime product Prepend to .hotspot_compiler; e.g. log,java/lang/String. share/runtime/globals.hpp
CompileOnly OpenJDK6 ccstrlist runtime product List of methods (pkg/class.name) to restrict compilation to share/runtime/globals.hpp
CompileTheWorldPreloadClasses OpenJDK6 bool runtime true develop Preload all classes used by a class before start loading share/runtime/globals.hpp
CompileTheWorldSafepointInterval OpenJDK6 intx runtime 100 notproduct Force a safepoint every n compiles so sweeper can keep up share/runtime/globals.hpp
CompileTheWorldStartAt OpenJDK6 intx runtime 1 notproduct First class to consider when using +CompileTheWorld share/runtime/globals.hpp
CompileTheWorldStopAt OpenJDK6 intx runtime max_jint notproduct Last class to consider when using +CompileTheWorld share/runtime/globals.hpp
Compile all methods in all classes in bootstrap class path
CompileTheWorld OpenJDK6 bool runtime false develop (stress test) share/runtime/globals.hpp
Factor to control when first compilation happens
(both with and without tiered compilation):
values greater than 1.0 delay counter overflow,
values between 0 and 1.0 rush counter overflow,
value of 1.0 leaves compilation thresholds unchanged
CompileThresholdScaling OpenJDK9 double runtime 1.0 product value of 0.0 is equivalent to -Xint. share/runtime/globals.hpp
range(0.0, DBL_MAX)
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.
CompileThreshold OpenJDK6 intx aarch64 1500 define_pd_global cpu/aarch64/
c1_globals_aarch64.hpp
CompileThreshold OpenJDK6 intx arm 1500 define_pd_global cpu/arm/c1_globals_arm.hpp
CompileThreshold OpenJDK6 intx runtime product_pd number of interpreted method invocations before (re-)compiling share/runtime/globals.hpp
CompileThreshold OpenJDK6 intx ppc 10000 define_pd_global cpu/ppc/c2_globals_ppc.hpp
CompileThreshold OpenJDK6 intx s390 1000 define_pd_global cpu/s390/
c1_globals_s390.hpp
CompileThreshold OpenJDK6 intx sparc 10000 define_pd_global cpu/sparc/
c2_globals_sparc.hpp
CompileThreshold OpenJDK6 intx x86 1500 define_pd_global cpu/x86/c1_globals_x86.hpp
CompilerDirectivesFile OpenJDK9 ccstr runtime NULL diagnostic Read compiler directives from this file share/runtime/globals.hpp
CompilerDirectivesIgnoreCompileCommands OpenJDK9 bool runtime false diagnostic Disable backwards compatibility for compile commands. share/runtime/globals.hpp
CompilerDirectivesLimit OpenJDK9 int runtime 50 diagnostic Limit on number of compiler directives. share/runtime/globals.hpp
CompilerDirectivesPrint OpenJDK9 bool runtime false diagnostic Print compiler directives on installation. share/runtime/globals.hpp
Deprecated
in JDK11
CompilerThreadHintNoPreempt OpenJDK6 Obsoleted bool runtime false product (Solaris only) Give compiler threads an extra quanta share/runtime/globals.hpp
in JDK12
Expired in
JDK13
-1 The native priority at which compiler threads should run
CompilerThreadPriority OpenJDK6 intx runtime range(min_jint, max_jint) product (-1 means no change) share/runtime/globals.hpp
CompilerThreadStackSize OpenJDK6 intx aix ppc 4096 define_pd_global os_cpu/aix_ppc/
globals_aix_ppc.hpp
CompilerThreadStackSize OpenJDK6 intx bsd aarch64 2048 define_pd_global os_cpu/bsd_aarch64/
globals_bsd_aarch64.hpp
CompilerThreadStackSize OpenJDK6 intx bsd x86 512 define_pd_global os_cpu/bsd_x86/
globals_bsd_x86.hpp
CompilerThreadStackSize OpenJDK6 intx bsd zero 0 define_pd_global os_cpu/bsd_zero/
globals_bsd_zero.hpp
CompilerThreadStackSize OpenJDK6 intx linux aarch64 2040 define_pd_global os_cpu/linux_aarch64/
globals_linux_aarch64.hpp
CompilerThreadStackSize OpenJDK6 intx linux arm 512 define_pd_global os_cpu/linux_arm/
globals_linux_arm.hpp
CompilerThreadStackSize OpenJDK6 intx linux ppc 4096 define_pd_global os_cpu/linux_ppc/
globals_linux_ppc.hpp
CompilerThreadStackSize OpenJDK6 intx linux s390 2048 define_pd_global os_cpu/linux_s390/
globals_linux_s390.hpp
CompilerThreadStackSize OpenJDK6 intx linux x86 512 define_pd_global os_cpu/linux_x86/
globals_linux_x86.hpp
CompilerThreadStackSize OpenJDK6 intx linux zero 0 define_pd_global os_cpu/linux_zero/
globals_linux_zero.hpp
CompilerThreadStackSize OpenJDK6 intx runtime product_pd Compiler Thread Stack Size (in Kbytes) share/runtime/globals.hpp
CompilerThreadStackSize OpenJDK6 intx sparc 1024 define_pd_global cpu/sparc/globals_sparc.hpp
CompilerThreadStackSize OpenJDK6 intx solaris x86 512 define_pd_global os_cpu/solaris_x86/
globals_solaris_x86.hpp
CompilerThreadStackSize OpenJDK6 intx windows aarch64 0 define_pd_global os_cpu/windows_aarch64/
globals_windows_aarch64.hpp
CompilerThreadStackSize OpenJDK6 intx windows x86 0 define_pd_global os_cpu/windows_x86/
globals_windows_x86.hpp
1*G Maximum size of class area in Metaspace when compressed
CompressedClassSpaceSize OpenJDK8 size_t runtime range(1*M, 3*G) product class pointers are used share/runtime/globals.hpp
ComputeExactFPURegisterUsage OpenJDK6 bool c1 true develop Compute additional live set for fpu registers to simplify fpu stack merge (Intel only) share/c1/c1_globals.hpp
ConcGCThreads OpenJDK6 uint gc 0 product Number of threads concurrent gc will use share/gc/shared/
gc_globals.hpp
0 If non-zero, assert that GC threads yield within this share/gc/shared/
ConcGCYieldTimeout OpenJDK6 intx gc range(0, max_intx) develop number of milliseconds gc_globals.hpp
ConditionalMoveLimit OpenJDK6 intx aarch64 3 define_pd_global cpu/aarch64/
c2_globals_aarch64.hpp
ConditionalMoveLimit OpenJDK6 intx arm 4 define_pd_global cpu/arm/c2_globals_arm.hpp
ConditionalMoveLimit OpenJDK6 intx c2 product_pd Limit of ops to make speculative when using CMOVE share/opto/c2_globals.hpp
ConditionalMoveLimit OpenJDK6 intx ppc 3 define_pd_global cpu/ppc/c2_globals_ppc.hpp
ConditionalMoveLimit OpenJDK6 intx s390 4 define_pd_global cpu/s390/
c2_globals_s390.hpp
ConditionalMoveLimit OpenJDK6 intx sparc 4 define_pd_global cpu/sparc/
c2_globals_sparc.hpp
ConditionalMoveLimit OpenJDK6 intx x86 3 define_pd_global cpu/x86/c2_globals_x86.hpp
ContendedPaddingWidth OpenJDK8 intx runtime 128 product How many bytes to pad the fields/classes marked @Contended with share/runtime/globals.hpp
range(0, 8192)
ConvertCmpD2CmpF OpenJDK6 bool c2 true develop Convert cmpD to cmpF when one input is constant in float range share/opto/c2_globals.hpp
ConvertFloat2IntClipping OpenJDK6 bool c2 true develop Convert float2int clipping idiom to integer clipping share/opto/c2_globals.hpp
CountBytecodes OpenJDK6 bool runtime false develop Count number of bytecodes executed share/runtime/globals.hpp
CountCompiledCalls OpenJDK6 bool runtime false develop Count method invocations share/runtime/globals.hpp
CountJNICalls OpenJDK6 bool runtime false develop Count jni method invocations share/runtime/globals.hpp
CountJVMCalls OpenJDK6 bool runtime false notproduct Count jvm method invocations share/runtime/globals.hpp
CountLinearScan OpenJDK6 bool c1 false develop collect statistic counters during LinearScan share/c1/c1_globals.hpp
Count exceptions that could be replaced by branches due to
CountRemovableExceptions OpenJDK6 bool runtime false notproduct inlining share/runtime/globals.hpp
CountRuntimeCalls OpenJDK6 bool runtime false notproduct Count VM runtime calls share/runtime/globals.hpp
The minimum interval (in milliseconds) between invocation of
CounterDecayMinIntervalLength OpenJDK6 intx runtime 500 develop CounterDecay share/runtime/globals.hpp
CounterHalfLifeTime OpenJDK6 intx runtime 30 develop Half-life time of invocation counters (in seconds) share/runtime/globals.hpp
Manually make GC thread crash then dump java stack trace;
CrashGCForDumpingJavaThread OpenJDK6 bool runtime false notproduct Test only share/runtime/globals.hpp
JVM aborts, producing an error log and core/mini dump, on the
CrashOnOutOfMemoryError OpenJDK8 bool runtime false product first occurrence of an out-of-memory error share/runtime/globals.hpp
CreateCoredumpOnCrash OpenJDK9 bool runtime true product Create core/mini dump on VM fatal error share/runtime/globals.hpp
Deprecated
in JDK16
CriticalJNINatives OpenJDK6 Obsoleted bool runtime true product Check for critical JNI entry points share/runtime/globals.hpp
in JDK18
Expired in
JDK19
Power8 or later: DPFD (default prefetch depth) value of the
DSCR_DPFD_PPC64 OpenJDK9 uint64_t ppc 8 product Data Stream Control Register. cpu/ppc/globals_ppc.hpp
0: hardware default, 1: none, 2-7: min-max, 8: don't touch
Power8 or later: Specify encoded value for Data Stream Control
DSCR_PPC64 OpenJDK9 uint64_t ppc (uintx)-1 product Register cpu/ppc/globals_ppc.hpp
Power8 or later: URG (depth attainment urgency) value of the
DSCR_URG_PPC64 OpenJDK9 uint64_t ppc 8 product Data Stream Control Register. cpu/ppc/globals_ppc.hpp
0: hardware default, 1: none, 2-7: min-max, 8: don't touch
DTraceAllocProbes OpenJDK6 bool runtime false product Enable dtrace probes for object allocation share/runtime/globals.hpp
DTraceMethodProbes OpenJDK6 bool runtime false product Enable dtrace probes for method-entry and method-exit share/runtime/globals.hpp
DTraceMonitorProbes OpenJDK6 bool runtime false product Enable dtrace probes for monitor events share/runtime/globals.hpp
DebugDeoptimization OpenJDK6 bool runtime false develop Tracing various information while debugging deoptimization share/runtime/globals.hpp
DebugInlinedCalls OpenJDK6 bool c2 true diagnostic If false, restricts profiled locations to the root method only share/opto/c2_globals.hpp
Generate extra debugging information for non-safepoints in
DebugNonSafepoints OpenJDK6 bool runtime trueInDebug diagnostic nmethods share/runtime/globals.hpp
DebugVtables OpenJDK6 bool runtime false develop add debugging code to vtable dispatch share/runtime/globals.hpp
Obsoleted Set when executing debug methods in debug.cpp
Debugging OpenJDK6 in JDK16 bool runtime false product (to prevent triggering assertions) share/runtime/globals.hpp
Expired in
JDK17
When +ReduceInitialCardMarks, explicitly defer any that share/gc/shared/
DeferInitialCardMark OpenJDK6 bool gc false diagnostic may arise from new_pre_store_barrier gc_globals.hpp
Delay invoking the compiler until main application class is
DelayCompilationDuringStartup OpenJDK6 bool runtime true develop loaded share/runtime/globals.hpp
DeoptC1 OpenJDK6 bool c1 true develop Use deoptimization in C1 share/c1/c1_globals.hpp
DeoptimizeALotInterval OpenJDK6 intx runtime 5 notproduct Number of exits until DeoptimizeALot kicks in share/runtime/globals.hpp
DeoptimizeALot OpenJDK6 bool runtime false develop Deoptimize at every exit from the runtime system share/runtime/globals.hpp
DeoptimizeOnlyAt OpenJDK6 ccstrlist runtime notproduct A comma separated list of bcis to deoptimize at share/runtime/globals.hpp
DeoptimizeRandom OpenJDK6 bool runtime false product Deoptimize random frames on random exit from the runtime system share/runtime/globals.hpp
DesiredMethodLimit OpenJDK6 intx runtime 8000 develop The desired maximum method size (in bytecodes) after inlining share/runtime/globals.hpp
DisableAttachMechanism OpenJDK6 bool runtime false product Disable mechanism that allows tools to attach to this VM share/runtime/globals.hpp
DisableExplicitGC OpenJDK6 bool gc false product Ignore calls to System.gc() share/gc/shared/
gc_globals.hpp
DisableIntrinsic OpenJDK6 ccstrlist runtime diagnostic do not expand intrinsics whose (internal) names appear here share/runtime/globals.hpp
Disable the use of stack guard pages if the JVM is loaded
DisablePrimordialThreadGuardPages OpenJDK8 bool runtime false experimental on the primordial process thread share/runtime/globals.hpp
Disable starting of additional Java threads
DisableStartThread OpenJDK6 bool runtime false develop (for debugging only) share/runtime/globals.hpp
DisplayVMOutputToStderr OpenJDK6 bool runtime false product If DisplayVMOutput is true, display all VM output to stderr share/runtime/globals.hpp
DisplayVMOutputToStdout OpenJDK6 bool runtime false product If DisplayVMOutput is true, display all VM output to stdout share/runtime/globals.hpp
DisplayVMOutput OpenJDK6 bool runtime true diagnostic Display all VM output on the tty, independently of LogVMOutput share/runtime/globals.hpp
DoCEE OpenJDK6 bool c1 true develop Do Conditional Expression Elimination to simplify CFG share/c1/c1_globals.hpp
DoEscapeAnalysis OpenJDK6 bool c2 true product Perform escape analysis share/opto/c2_globals.hpp
Obsoleted
DoReserveCopyInSuperWord OpenJDK9 in JDK22 bool c2 true product Create reserve copy of graph in SuperWord. share/opto/c2_globals.hpp
Expired in
JDK23
DominatorSearchLimit OpenJDK6 intx c2 1000 diagnostic Iterations limit in Node::dominates share/opto/c2_globals.hpp
range(0, max_jint)
DontCompileHugeMethods OpenJDK6 bool runtime true product Do not compile methods > HugeMethodLimit share/runtime/globals.hpp
DontYieldALotInterval OpenJDK6 intx runtime 10 develop Interval between which yields will be dropped (milliseconds) share/runtime/globals.hpp
Deprecated
in JDK23
DontYieldALot OpenJDK6 Obsoleted bool aix ppc false define_pd_global os_cpu/aix_ppc/
in JDK24 globals_aix_ppc.hpp
Expired in
JDK25
Deprecated
in JDK23
DontYieldALot OpenJDK6 Obsoleted bool bsd aarch64 false define_pd_global os_cpu/bsd_aarch64/
in JDK24 globals_bsd_aarch64.hpp
Expired in
JDK25
Deprecated
in JDK23
DontYieldALot OpenJDK6 Obsoleted bool bsd x86 false define_pd_global os_cpu/bsd_x86/
in JDK24 globals_bsd_x86.hpp
Expired in
JDK25
Deprecated
in JDK23
DontYieldALot OpenJDK6 Obsoleted bool bsd zero false define_pd_global os_cpu/bsd_zero/
in JDK24 globals_bsd_zero.hpp
Expired in
JDK25
Deprecated
in JDK23
DontYieldALot OpenJDK6 Obsoleted bool linux aarch64 false define_pd_global os_cpu/linux_aarch64/
in JDK24 globals_linux_aarch64.hpp
Expired in
JDK25
Deprecated
in JDK23
DontYieldALot OpenJDK6 Obsoleted bool linux arm false define_pd_global os_cpu/linux_arm/
in JDK24 globals_linux_arm.hpp
Expired in
JDK25
Deprecated
in JDK23
DontYieldALot OpenJDK6 Obsoleted bool linux ppc false define_pd_global os_cpu/linux_ppc/
in JDK24 globals_linux_ppc.hpp
Expired in
JDK25
Deprecated
in JDK23
DontYieldALot OpenJDK6 Obsoleted bool linux s390 false define_pd_global os_cpu/linux_s390/
in JDK24 globals_linux_s390.hpp
Expired in
JDK25
Deprecated
in JDK23
DontYieldALot OpenJDK6 Obsoleted bool linux x86 false define_pd_global os_cpu/linux_x86/
in JDK24 globals_linux_x86.hpp
Expired in
JDK25
Deprecated
in JDK23
DontYieldALot OpenJDK6 Obsoleted bool linux zero false define_pd_global os_cpu/linux_zero/
in JDK24 globals_linux_zero.hpp
Expired in
JDK25
Deprecated
in JDK23
DontYieldALot OpenJDK6 Obsoleted bool runtime product_pd Throw away obvious excess yield calls share/runtime/globals.hpp
in JDK24
Expired in
JDK25
Deprecated
in JDK23
DontYieldALot OpenJDK6 Obsoleted bool sparc true define_pd_global // yield no more than 100 times per second cpu/sparc/globals_sparc.hpp
in JDK24
Expired in
JDK25
Deprecated
in JDK23
DontYieldALot OpenJDK6 Obsoleted bool solaris x86 true define_pd_global // Determined in the design center os_cpu/solaris_x86/
in JDK24 globals_solaris_x86.hpp
Expired in
JDK25
Deprecated
in JDK23
DontYieldALot OpenJDK6 Obsoleted bool windows aarch64 false define_pd_global os_cpu/windows_aarch64/
in JDK24 globals_windows_aarch64.hpp
Expired in
JDK25
Deprecated
in JDK23
DontYieldALot OpenJDK6 Obsoleted bool windows x86 false define_pd_global os_cpu/windows_x86/
in JDK24 globals_windows_x86.hpp
Expired in
JDK25
Dump the names all loaded classes, that could be stored into
DumpLoadedClassList OpenJDK8 ccstr runtime NULL product the CDS archive, in the specified file share/runtime/globals.hpp
If true, sets bit 2 of /proc/PID/coredump_filter, thus
DumpPrivateMappingsInCore OpenJDK11 bool linux true diagnostic resulting in file-backed private mappings of the process to os/linux/globals_linux.hpp
be dumped into the corefile.
DumpReplayDataOnError OpenJDK8 bool runtime true product Record replay data for crashing compiler threads share/runtime/globals.hpp
If true, sets bit 3 of /proc/PID/coredump_filter, thus
DumpSharedMappingsInCore OpenJDK11 bool linux true diagnostic resulting in file-backed shared mappings of the process to os/linux/globals_linux.hpp
be dumped into the corefile.
Deprecated Special mode: JVM reads a class list, loads classes, builds
DumpSharedSpaces OpenJDK6 in JDK18 bool runtime false product shared spaces, and dumps the shared spaces to a file to be share/runtime/globals.hpp
Obsoleted used in future JVM runs
in JDK19
DynamicallyResizeSystemDictionaries OpenJDK10 bool runtime true diagnostic Dynamically resize system dictionaries as needed share/runtime/globals.hpp
EagerInitialization OpenJDK6 bool runtime false develop Eagerly initialize classes if possible share/runtime/globals.hpp
EagerJVMCI OpenJDK11 bool jvmci false experimental Force eager JVMCI initialization share/jvmci/
jvmci_globals.hpp
Eagerly initialize -Xrun libraries; allows startup profiling,
EagerXrunInit OpenJDK6 bool runtime false product but not all -Xrun libraries may support the state of the VM share/runtime/globals.hpp
at this time
EliminateAllocationArraySizeLimit OpenJDK6 intx c2 64 product Array size (number of elements) limit for scalar replacement share/opto/c2_globals.hpp
range(0, max_jint)
EliminateAllocations OpenJDK6 bool c2 true product Use escape analysis to eliminate allocations share/opto/c2_globals.hpp
EliminateAutoBox OpenJDK6 bool c2 true product Control optimizations for autobox elimination share/opto/c2_globals.hpp
EliminateBlocks OpenJDK6 bool c1 true develop Eliminate unneccessary basic blocks share/c1/c1_globals.hpp
EliminateFieldAccess OpenJDK6 bool c1 true develop Optimize field loads and stores share/c1/c1_globals.hpp
EliminateLocks OpenJDK6 bool c2 true product Coarsen locks when possible share/opto/c2_globals.hpp
EliminateNestedLocks OpenJDK6 bool c2 true product Eliminate nested locks of the same object when possible share/opto/c2_globals.hpp
EliminateNullChecks OpenJDK6 bool c1 true develop Eliminate unneccessary null checks share/c1/c1_globals.hpp
Obsoleted (Unsafe, Unstable)
EmitSync OpenJDK6 in JDK12 intx runtime 0 experimental Control emission of inline sync fast-path code share/runtime/globals.hpp
Expired in
JDK13
EnableContended OpenJDK8 bool runtime true product Enable @Contended annotation support share/runtime/globals.hpp
EnableDynamicAgentLoading OpenJDK9 bool runtime true product Allow tools to load agents with the attach mechanism share/runtime/globals.hpp
EnableJVMCI OpenJDK9 bool jvmci false experimental Enable JVMCI share/jvmci/
jvmci_globals.hpp
EnableThreadSMRExtraValidityChecks OpenJDK10 bool runtime true diagnostic Enable Thread SMR extra validity checks share/runtime/globals.hpp
EnableThreadSMRStatistics OpenJDK10 bool runtime trueInDebug diagnostic Enable Thread SMR Statistics share/runtime/globals.hpp
Use timed decays to shrink TLAB sizes. This conserves memory
for the threads that allocate in bursts of different sizes, share/gc/epsilon/
EpsilonElasticTLABDecay OpenJDK11 bool gc true experimental for example the small/rare allocations coming after the initial epsilon_globals.hpp
large burst.
Use elastic policy to manage TLAB sizes. This conserves memory
for non-actively allocating threads, even when they request share/gc/epsilon/
EpsilonElasticTLAB OpenJDK11 bool gc true experimental large TLABs for themselves. Active threads would experience epsilon_globals.hpp
smaller TLABs until policy catches up.
Max TLAB size to use with Epsilon GC. Larger value improves
EpsilonMaxTLABSize OpenJDK11 size_t gc 4 * M experimental performance at the expense of per-thread memory waste. This share/gc/epsilon/
range(1, max_intx) asks TLAB machinery to cap TLAB sizes at this value. epsilon_globals.hpp
128 * M Min expansion step for heap. Larger value improves performance share/gc/epsilon/
EpsilonMinHeapExpand OpenJDK11 size_t gc range(1, max_intx) experimental at the potential expense of memory waste. epsilon_globals.hpp
Print heap occupancy stats with this number of steps.
EpsilonPrintHeapSteps OpenJDK11 size_t gc 20 experimental share/gc/epsilon/
range(0, max_intx) 0 turns the printing off. epsilon_globals.hpp
TLAB sizing policy decays to initial size after thread had not
1000 allocated for this long. Time is in milliseconds. Lower value share/gc/epsilon/
EpsilonTLABDecayTime OpenJDK11 size_t gc range(1, max_intx) experimental improves memory footprint, but penalizes actively allocating epsilon_globals.hpp
threads.
Multiplier to use when deciding on next TLAB size. Larger value
1.1 improves performance at the expense of per-thread memory waste. share/gc/epsilon/
EpsilonTLABElasticity OpenJDK11 double gc range(1.0, DBL_MAX) experimental Lower value improves memory footprint, but penalizes actively epsilon_globals.hpp
allocating threads.
Update heap occupancy counters after allocating this much
EpsilonUpdateCountersStep OpenJDK11 size_t gc 1 * M experimental memory. Higher values would make allocations faster at share/gc/epsilon/
range(1, max_intx) the expense of lower resolution in heap counters. epsilon_globals.hpp
0 Maximum ergonomically set heap size (in bytes); zero means use share/gc/shared/
ErgoHeapSizeLimit OpenJDK6 size_t gc range(0, max_uintx) product MaxRAM * MaxRAMPercentage / 100 gc_globals.hpp
ErrorFileToStderr OpenJDK11 bool runtime false product If true, error data is printed to stderr instead of a file share/runtime/globals.hpp
ErrorFileToStdout OpenJDK11 bool runtime false product If true, error data is printed to stdout instead of a file share/runtime/globals.hpp
If an error occurs, save the error data to this file
ErrorFile OpenJDK6 ccstr runtime NULL product [default: ./hs_err_pid%p.log] (%p replaced with pid) share/runtime/globals.hpp
If > 0, provokes an error after VM initialization; the value
ErrorHandlerTest OpenJDK6 uintx runtime 0 notproduct determines which error to provoke. See test_error_handler() share/runtime/globals.hpp
in vmError.cpp.
2 * 60 Timeout, in seconds, to limit the time spent on writing an
ErrorLogTimeout OpenJDK9 uint64_t runtime range(0, (uint64_t)max_jlong/1000) product error log in case of a crash. share/runtime/globals.hpp
Obsoleted
ErrorReportServer OpenJDK6 in JDK12 ccstr runtime NULL product Override built-in error report server address share/runtime/globals.hpp
Expired in
JDK13
EscapeAnalysisTimeout OpenJDK7 double c2 20. DEBUG_ONLY(+40.) product Abort EA when it reaches time limit (in sec) share/opto/c2_globals.hpp
range(0, DBL_MAX)
EstimateArgEscape OpenJDK6 bool runtime true product Analyze bytecodes to estimate escape state of arguments share/runtime/globals.hpp
ExecuteInternalVMTests OpenJDK6 bool gc false notproduct Enable execution of internal VM tests share/gc/shared/
gc_globals.hpp
ExecutingUnitTests OpenJDK9 bool gc false product Whether the JVM is running unit tests or not share/gc/shared/
gc_globals.hpp
ExitEscapeAnalysisOnTimeout OpenJDK7 bool c2 true develop Exit or throw assert in EA when it reaches time limit share/opto/c2_globals.hpp
ExitOnFullCodeCache OpenJDK6 bool runtime false notproduct Exit the VM if we fill the code cache share/runtime/globals.hpp
ExitOnOutOfMemoryError OpenJDK8 bool runtime false product JVM exits on the first occurrence of an out-of-memory error share/runtime/globals.hpp
standard exit from VM if bytecode verify error
ExitVMOnVerifyError OpenJDK6 bool runtime false notproduct (only in debug mode) share/runtime/globals.hpp
Expand the assembler
ExpandLoadingBaseDecode_NN OpenJDK9 bool s390 true product instruction required to load the base from DecodeN_NN nodes cpu/s390/globals_s390.hpp
during matching.
Expand the assembler
ExpandLoadingBaseDecode OpenJDK9 bool s390 true product instruction required to load the base from DecodeN nodes during cpu/s390/globals_s390.hpp
matching.
Expand the assembler
ExpandLoadingBaseEncode_NN OpenJDK9 bool s390 true product instruction required to load the base from EncodeP_NN nodes cpu/s390/globals_s390.hpp
during matching.
Expand the assembler
ExpandLoadingBaseEncode OpenJDK9 bool s390 true product instruction required to load the base from EncodeP nodes during cpu/s390/globals_s390.hpp
matching.
A System.gc() request invokes a concurrent collection; share/gc/shared/
ExplicitGCInvokesConcurrent OpenJDK6 bool gc false product (effective only when using concurrent collectors) gc_globals.hpp
Deprecated
in JDK19
ExtendedDTraceProbes OpenJDK6 Obsoleted bool runtime false product Enable performance-impacting dtrace probes share/runtime/globals.hpp
in JDK20
Expired in
JDK21
ExtensiveErrorReports OpenJDK11 bool runtime PRODUCT_ONLY(false) NOT_PRODUCT(true) product Error reports are more extensive. share/runtime/globals.hpp
ExtraSharedClassListFile OpenJDK8 ccstr runtime NULL product Extra classlist for building the CDS archive file share/runtime/globals.hpp
FLOATPRESSURE OpenJDK6 intx aarch64 32 define_pd_global cpu/aarch64/
c2_globals_aarch64.hpp
FLOATPRESSURE OpenJDK6 intx arm 30 define_pd_global cpu/arm/c2_globals_arm.hpp
FLOATPRESSURE OpenJDK6 intx c2 develop_pd Number of float LRG's that constitute high register pressure share/opto/c2_globals.hpp
FLOATPRESSURE OpenJDK6 intx ppc 28 define_pd_global cpu/ppc/c2_globals_ppc.hpp
FLOATPRESSURE OpenJDK6 intx s390 15 define_pd_global cpu/s390/
c2_globals_s390.hpp
FLOATPRESSURE OpenJDK6 intx sparc 52 define_pd_global // C2 on V9 gets to use all the float/double registers cpu/sparc/
c2_globals_sparc.hpp
FLOATPRESSURE OpenJDK6 intx x86 6 define_pd_global cpu/x86/c2_globals_x86.hpp
Obsoleted
FLSAlwaysCoalesceLarge OpenJDK6 in JDK14 bool gc false product CMS: larger free blocks are always available for coalescing share/gc/cms/
Expired in cms_globals.hpp
JDK15
Obsoleted CMS: aggressiveness level for coalescing, increasing
FLSCoalescePolicy OpenJDK6 in JDK14 uintx gc 2 product from 0 to 4 share/gc/cms/
Expired in range(0, 4) cms_globals.hpp
JDK15
Obsoleted CMS: the smaller the percentage the greater the coalescing
FLSLargestBlockCoalesceProximity OpenJDK6 in JDK14 double gc 0.99 product force share/gc/cms/
Expired in range(0.0, 1.0) cms_globals.hpp
JDK15
Verify that all references across the FLS boundary share/gc/cms/
FLSVerifyAllHeapReferences OpenJDK6 bool gc false diagnostic are to valid objects cms_globals.hpp
FLSVerifyDictionary OpenJDK6 bool runtime false develop Do lots of (expensive) FLS dictionary verification share/runtime/globals.hpp
FLSVerifyIndexTable OpenJDK6 bool gc false diagnostic Do lots of (expensive) FLS index table verification share/gc/cms/
cms_globals.hpp
FLSVerifyLists OpenJDK6 bool gc false diagnostic Do lots of (expensive) FreeListSpace verification share/gc/cms/
cms_globals.hpp
Obsoleted
FailOverToOldVerifier OpenJDK6 in JDK14 bool runtime true product Fail over to old verifier when split verifier fails share/runtime/globals.hpp
Expired in
JDK15
FastAllocateSizeLimit OpenJDK6 intx runtime 128*K develop /* Note: This value is zero mod 1<<13 for a cheap sparc set. */Inline allocations larger than this in doublewords must go slow share/runtime/globals.hpp
FastSuperclassLimit OpenJDK6 intx runtime 8 develop Depth of hardwired instanceof accelerator array share/runtime/globals.hpp
Deprecated 0 - type based with oops first,
in JDK14
FieldsAllocationStyle OpenJDK6 Obsoleted intx runtime 1 product 1 - with oops last, share/runtime/globals.hpp
in JDK15 range(0, 2)
Expired in 2 - oops in super and sub classes are together
JDK16
FillDelaySlots OpenJDK6 bool runtime true develop Fill delay slots (on SPARC only) share/runtime/globals.hpp
Deprecated
in JDK18 When true prevents OS-level spurious, or premature, wakeups
FilterSpuriousWakeups OpenJDK6 Obsoleted bool runtime true product from Object.wait (Ignored for Windows) share/runtime/globals.hpp
in JDK19
Expired in
JDK20
FlightRecorderOptions OpenJDK11 ccstr runtime NULL product Flight Recorder options share/runtime/globals.hpp
FlightRecorder OpenJDK11 Deprecated bool runtime false product Enable Flight Recorder share/runtime/globals.hpp
in JDK13
FoldStableValues OpenJDK8 bool runtime true diagnostic Optimize loads from stable fields (marked w/ @Stable) share/runtime/globals.hpp
Force dynamic selection of the number of share/gc/shared/
ForceDynamicNumberOfGCThreads OpenJDK6 bool gc false diagnostic parallel threads parallel gc will use to aid debugging gc_globals.hpp
ForceFloatExceptions OpenJDK6 bool runtime trueInDebug develop Force exceptions on FP stack under/overflow share/runtime/globals.hpp
Deprecated
in JDK15
ForceNUMA OpenJDK6 Obsoleted bool runtime false product Force NUMA optimizations on single-node/UMA systems share/runtime/globals.hpp
in JDK16
Expired in
JDK17
ForceTimeHighResolution OpenJDK6 bool runtime false product Using high time resolution (for Win32 only) share/runtime/globals.hpp
Make all non code cache addresses to be unreachable by
ForceUnreachable OpenJDK6 bool runtime false diagnostic forcing use of 64bit literal fixups share/runtime/globals.hpp
FreqCountInvocations OpenJDK6 intx c2 1 develop Scaling factor for branch frequencies (deprecated) share/opto/c2_globals.hpp
range(1, max_intx)
FreqInlineSize OpenJDK6 intx aarch64 325 define_pd_global cpu/aarch64/
c1_globals_aarch64.hpp
FreqInlineSize OpenJDK6 intx arm 325 define_pd_global cpu/arm/c1_globals_arm.hpp
FreqInlineSize OpenJDK6 intx runtime product_pd The maximum bytecode size of a frequent method to be inlined share/runtime/globals.hpp
FreqInlineSize OpenJDK6 intx ppc 175 define_pd_global cpu/ppc/c2_globals_ppc.hpp
FreqInlineSize OpenJDK6 intx s390 325 define_pd_global cpu/s390/
c1_globals_s390.hpp
FreqInlineSize OpenJDK6 intx sparc 175 define_pd_global cpu/sparc/
c2_globals_sparc.hpp
FreqInlineSize OpenJDK6 intx x86 325 define_pd_global cpu/x86/c1_globals_x86.hpp
Dummy object allocated with +FullGCALot, forcing all objects share/gc/shared/
FullGCALotDummies OpenJDK6 intx gc 32*K notproduct to move gc_globals.hpp
FullGCALotInterval OpenJDK6 intx gc 1 notproduct Interval between which full gc will occur with +FullGCALot share/gc/shared/
gc_globals.hpp
FullGCALotStart OpenJDK6 intx gc 0 notproduct For which invocation to start FullGCAlot share/gc/shared/
gc_globals.hpp
Force full gc at every Nth exit from the runtime system share/gc/shared/
FullGCALot OpenJDK6 bool gc false develop (N=FullGCALotInterval) gc_globals.hpp
How many completed time periods from initial mark to first
G1AdaptiveIHOPNumInitialSamples OpenJDK9 size_t gc 3 experimental mixed gc are required to use the input values for prediction share/gc/g1/g1_globals.hpp
range(1, max_intx) of the optimal occupancy to start marking.
10.0 Target duration of individual concurrent marking steps
G1ConcMarkStepDurationMillis OpenJDK6 double gc range(1.0, DBL_MAX) product in milliseconds. share/gc/g1/g1_globals.hpp
Obsoleted
G1ConcRSHotCardLimit OpenJDK6 in JDK21 uintx gc 4 product The threshold that defines (>=) a hot card. share/gc/g1/g1_globals.hpp
Expired in range(0, max_jubyte)
JDK24
Obsoleted
G1ConcRSLogCacheSize OpenJDK6 in JDK21 size_t gc 10 product Log base 2 of the length of conc RS hot-card cache. share/gc/g1/g1_globals.hpp
Expired in range(0, 27)
JDK24
Obsoleted The number of update buffers that are left in the queue by the
G1ConcRefinementGreenZone OpenJDK6 in JDK20 size_t gc 0 product concurrent processing threads. Will be selected ergonomically share/gc/g1/g1_globals.hpp
Expired in range(0, max_intx) by default.
JDK24
Obsoleted Maximum number of enqueued update buffers before mutator
G1ConcRefinementRedZone OpenJDK6 in JDK20 size_t gc 0 product threads start processing new ones instead of enqueueing them. share/gc/g1/g1_globals.hpp
Expired in range(0, max_intx) Will be selected ergonomically by default.
JDK24
Obsoleted The last concurrent refinement thread wakes up every
G1ConcRefinementServiceIntervalMillis OpenJDK6 in JDK20 uintx gc 300 product specified number of milliseconds to do miscellaneous work. share/gc/g1/g1_globals.hpp
Expired in range(0, max_jint)
JDK24
0 The number of parallel rem set update threads.
G1ConcRefinementThreads OpenJDK6 uint gc range(0, (max_jint-1)/wordSize) product Will be set ergonomically by default. share/gc/g1/g1_globals.hpp
Obsoleted Each time the rset update queue increases by this amount
in JDK20 2 activate the next refinement thread if available.
G1ConcRefinementThresholdStep OpenJDK6 Expired in size_t gc range(1, SIZE_MAX) product The actual step size will be selected ergonomically by share/gc/g1/g1_globals.hpp
JDK24 default, with this value used to determine a lower bound.
Obsoleted Number of enqueued update buffers that will
G1ConcRefinementYellowZone OpenJDK6 in JDK20 size_t gc 0 product trigger concurrent processing. Will be selected ergonomically share/gc/g1/g1_globals.hpp
Expired in range(0, max_intx) by default.
JDK24
G1ConfidencePercent OpenJDK6 uintx gc 50 product Confidence level for MMU/pause predictions share/gc/g1/g1_globals.hpp
range(0, 100)
The number of dummy regions G1 will allocate at the end of
G1DummyRegionsPerGC OpenJDK6 uintx gc 0 develop each evacuation pause in order to artificially fill up the share/gc/g1/g1_globals.hpp
heap and stress the marking implementation.
Try to reclaim dead large objects that have a few stale
G1EagerReclaimHumongousObjectsWithStaleRefs OpenJDK8 bool gc true experimental references at every young GC. share/gc/g1/g1_globals.hpp
G1EagerReclaimHumongousObjects OpenJDK8 bool gc true experimental Try to reclaim dead large objects at every young GC. share/gc/g1/g1_globals.hpp
Number of successful evacuations between evacuation failures
G1EvacuationFailureALotCount OpenJDK7 uintx gc 1000 develop occurring at object copying share/gc/g1/g1_globals.hpp
Force use of evacuation failure handling during evacuation
G1EvacuationFailureALotDuringConcMark OpenJDK7 bool gc true develop pauses when marking is in progress share/gc/g1/g1_globals.hpp
Force use of evacuation failure handling during initial mark
G1EvacuationFailureALotDuringInitialMark OpenJDK7 bool gc true develop evacuation pauses share/gc/g1/g1_globals.hpp
Force use of evacuation failure handling during mixed
G1EvacuationFailureALotDuringMixedGC OpenJDK7 bool gc true develop evacuation pauses share/gc/g1/g1_globals.hpp
Force use of evacuation failure handling during young
G1EvacuationFailureALotDuringYoungGC OpenJDK7 bool gc true develop evacuation pauses share/gc/g1/g1_globals.hpp
Total collections between forced triggering of evacuation
G1EvacuationFailureALotInterval OpenJDK7 uintx gc 5 develop failures share/gc/g1/g1_globals.hpp
Force use of evacuation failure handling during certain
G1EvacuationFailureALot OpenJDK7 bool gc false notproduct evacuation pauses share/gc/g1/g1_globals.hpp
Raise a fatal VM exit out of memory failure in the event
G1ExitOnExpansionFailure OpenJDK6 bool gc false develop that heap expansion fails due to running out of swap. share/gc/g1/g1_globals.hpp
G1ExpandByPercentOfAvailable OpenJDK6 intx gc 20 experimental When expanding, % of uncommitted space to claim. share/gc/g1/g1_globals.hpp
range(0, 100)
G1HRRSUseSparseTable OpenJDK6 bool gc true develop When true, use sparse table to save space. share/gc/g1/g1_globals.hpp
G1HeapRegionSize OpenJDK6 size_t gc 0 product Size of the G1 regions. share/gc/g1/g1_globals.hpp
range(0, 32*M)
5 Amount of space, expressed as a percentage of the heap size,
G1HeapWastePercent OpenJDK7 uintx gc range(0, 100) product that G1 is willing not to collect to avoid expensive GCs. share/gc/g1/g1_globals.hpp
50.0 The expected average occupancy of the last PLAB in
G1LastPLABAverageOccupancy OpenJDK9 double gc range(0.001, 100.0) experimental percent. share/gc/g1/g1_globals.hpp
60 Percentage (0-100) of the heap size to use as default
G1MaxNewSizePercent OpenJDK7 uintx gc range(0, 100) experimental maximum young gen size. share/gc/g1/g1_globals.hpp
-1 The maximum number of verification failures to print.
G1MaxVerifyFailures OpenJDK6 intx gc range(-1, max_jint) develop -1 means print all. share/gc/g1/g1_globals.hpp
G1MixedGCCountTarget OpenJDK7 uintx gc 8 product The target number of mixed GCs after a marking cycle. share/gc/g1/g1_globals.hpp
range(0, max_uintx)
Threshold for regions to be considered for inclusion in the
G1MixedGCLiveThresholdPercent OpenJDK7 uintx gc 85 experimental collection set of mixed GCs. share/gc/g1/g1_globals.hpp
range(0, 100) Regions with live bytes exceeding this will not be collected.
5 Percentage (0-100) of the heap size to use as default
G1NewSizePercent OpenJDK7 uintx gc range(0, 100) experimental minimum young gen size. share/gc/g1/g1_globals.hpp
10 An upper bound for the number of old CSet regions expressed
G1OldCSetRegionThresholdPercent OpenJDK6 uintx gc range(0, 100) experimental as a percentage of the heap size. share/gc/g1/g1_globals.hpp
G1PretouchAuxiliaryMemory OpenJDK9 bool gc false experimental Pre-touch large auxiliary data structures used by the GC. share/gc/g1/g1_globals.hpp
G1RSetRegionEntriesBase OpenJDK6 intx gc 256 develop Max number of regions in a fine-grain table per MB. share/gc/g1/g1_globals.hpp
range(1, max_jint/wordSize)
Obsoleted Max number of regions for which we keep bitmaps.
G1RSetRegionEntries OpenJDK6 in JDK18 intx gc 0 product Will be set ergonomically by default share/gc/g1/g1_globals.hpp
Expired in range(0, max_jint/wordSize)
JDK19
Deprecated
in JDK14 Size of a work unit of cards claimed by a worker thread
G1RSetScanBlockSize OpenJDK6 Obsoleted size_t gc 64 product during RSet scanning. share/gc/g1/g1_globals.hpp
in JDK15 range(1, max_uintx)
Expired in
JDK16
4 Max number of entries per region in a sparse table
G1RSetSparseRegionEntriesBase OpenJDK6 intx gc range(1, max_jint/wordSize) develop per MB. share/gc/g1/g1_globals.hpp
Obsoleted Max number of entries per region in a sparse table.
G1RSetSparseRegionEntries OpenJDK6 in JDK18 intx gc 0 product Will be set ergonomically by default. share/gc/g1/g1_globals.hpp
Expired in range(0, max_jint/wordSize)
JDK19
10 A target percentage of time that is allowed to be spend on
G1RSetUpdatingPauseTimePercent OpenJDK6 intx gc range(0, 100) product process RS update buffers during the collection pause. share/gc/g1/g1_globals.hpp
G1RebuildRemSetChunkSize OpenJDK11 size_t gc 256 * K experimental Chunk size used for rebuilding the remembered set. share/gc/g1/g1_globals.hpp
range(4 * K, 32 * M)
1000 The number of discovered reference objects to process before
G1RefProcDrainInterval OpenJDK6 uint gc range(1, INT_MAX) product draining concurrent marking work queues. share/gc/g1/g1_globals.hpp
10 It determines the minimum reserve we should have in the heap
G1ReservePercent OpenJDK6 uintx gc range(0, 50) product to minimize the probability of promotion failure. share/gc/g1/g1_globals.hpp
Before enqueueing them, each mutator thread tries to do some
filtering on the SATB buffers it generates. If post-filtering
G1SATBBufferEnqueueingThresholdPercent OpenJDK6 uintx gc 60 product the percentage of retained entries is over this threshold share/gc/g1/g1_globals.hpp
range(0, 100) the buffer will be enqueued for processing. A value of 0
specifies that mutator threads should not do such filtering.
G1SATBBufferSize OpenJDK6 size_t gc 1*K product Number of entries in an SATB log buffer. share/gc/g1/g1_globals.hpp
range(1, max_uintx)
G1SATBProcessCompletedThreshold OpenJDK6 intx gc 20 develop Number of completed buffers that triggers log processing. share/gc/g1/g1_globals.hpp
range(0, max_jint)
The period (in number of GCs) at which we will generate
update buffer processing info
G1SummarizeRSetStatsPeriod OpenJDK6 intx gc 0 diagnostic (0 means do not periodically generate this info); share/gc/g1/g1_globals.hpp
range(0, max_intx) it also requires that logging is enabled on the trace
level for gc+remset
Obsoleted
G1UpdateBufferSize OpenJDK6 in JDK26 size_t gc 256 product Size of an update buffer share/gc/g1/g1_globals.hpp
Expired in range(1, NOT_LP64(32*M) LP64_ONLY(1*G))
JDK27
Obsoleted Select green, yellow and red zones adaptively to meet the
G1UseAdaptiveConcRefinement OpenJDK6 in JDK20 bool gc true product the pause requirements. share/gc/g1/g1_globals.hpp
Expired in
JDK24
Adaptively adjust the initiating heap occupancy from the
initial value of InitiatingHeapOccupancyPercent. The policy
G1UseAdaptiveIHOP OpenJDK9 bool gc true product attempts to start marking in time based on application share/gc/g1/g1_globals.hpp
behavior.
Concurrently preclean java.lang.ref.references instances
G1UseReferencePrecleaning OpenJDK11 bool gc true experimental before the Remark pause. share/gc/g1/g1_globals.hpp
G1VerifyBitmaps OpenJDK8 bool gc false develop Verifies the consistency of the marking bitmaps share/gc/g1/g1_globals.hpp
G1VerifyCTCleanup OpenJDK6 bool gc false develop Verify card table cleanup. share/gc/g1/g1_globals.hpp
G1VerifyHeapRegionCodeRoots OpenJDK7 bool gc false diagnostic Verify the code root lists attached to each heap region. share/gc/g1/g1_globals.hpp
If true, perform verification of each heap region's
G1VerifyRSetsDuringFullGC OpenJDK7 bool gc false diagnostic remembered set when verifying the heap during a full GC. share/gc/g1/g1_globals.hpp
GCALotAtAllSafepoints OpenJDK6 bool gc false notproduct Enforce ScavengeALot/GCALot at all potential safepoints share/gc/shared/
gc_globals.hpp
64 Number of entries we will try to leave on the stack share/gc/shared/
GCDrainStackTargetSize OpenJDK6 uintx gc range(0, max_juint) product during parallel gc gc_globals.hpp
GCExpandToAllocateDelayMillis OpenJDK6 uintx gc 0 develop Delay between expansion and allocation (in milliseconds) share/gc/shared/
gc_globals.hpp
2 Minimum percentage of free space after a full GC before an share/gc/shared/
GCHeapFreeLimit OpenJDK6 uintx gc range(0, 100) product OutOfMemoryError is thrown (used with GCTimeLimit) gc_globals.hpp
Obsoleted How much the GC can expand the eden by while the GC locker
GCLockerEdenExpansionPercent OpenJDK6 in JDK23 uintx gc 5 product is active (as a percentage) share/gc/shared/
Expired in range(0, 100) gc_globals.hpp
JDK24
Obsoleted The exit of a JNI critical section necessitating a scavenge,
GCLockerInvokesConcurrent OpenJDK6 in JDK14 bool gc false product also kicks off a background concurrent collection share/gc/shared/
Expired in gc_globals.hpp
JDK15
2 Number of times to retry allocations when share/gc/shared/
GCLockerRetryAllocationCount OpenJDK8 uintx gc range(0, max_uintx) diagnostic blocked by the GC locker gc_globals.hpp
GCParallelVerificationEnabled OpenJDK6 bool gc true diagnostic Enable parallel memory system verification share/gc/shared/
gc_globals.hpp
GCPauseIntervalMillis OpenJDK6 uintx gc 0 product Time slice for MMU specification share/gc/shared/
gc_globals.hpp
Obsoleted
GCTaskTimeStampEntries OpenJDK6 in JDK14 uint gc 200 product Number of time stamp entries per gc worker thread share/gc/shared/
Expired in range(1, max_jint) gc_globals.hpp
JDK16
98 Limit of the proportion of time spent in GC before share/gc/shared/
GCTimeLimit OpenJDK6 uintx gc range(0, 100) product an OutOfMemoryError is thrown (used with GCHeapFreeLimit) gc_globals.hpp
GCTimeRatio OpenJDK6 uintx gc 99 product Adaptive size policy application time to GC time ratio share/gc/shared/
range(0, max_juint) gc_globals.hpp
GCWorkerDelayMillis OpenJDK8 uintx gc 0 develop Delay in scheduling GC workers (in milliseconds) share/gc/parallel/
parallel_globals.hpp
GenerateArrayStoreCheck OpenJDK6 bool c1 true develop Generates code for array store checks share/c1/c1_globals.hpp
GenerateRangeChecks OpenJDK6 bool runtime true develop Generate range checks for array accesses share/runtime/globals.hpp
generate locking/unlocking code for synchronized methods and
GenerateSynchronizationCode OpenJDK6 bool runtime true develop monitors share/runtime/globals.hpp
1000 Guarantee a safepoint (at least) every so many milliseconds
GuaranteedSafepointInterval OpenJDK6 intx runtime range(0, max_jint) diagnostic (0 means none) share/runtime/globals.hpp
HandshakeTimeout OpenJDK10 uint runtime 0 diagnostic If nonzero set a timeout in milliseconds for handshakes share/runtime/globals.hpp
HeapBaseMinAddress OpenJDK6 size_t aix ppc 2*G define_pd_global os_cpu/aix_ppc/
globals_aix_ppc.hpp
HeapBaseMinAddress OpenJDK6 uintx bsd aarch64 2*G define_pd_global os_cpu/bsd_aarch64/
globals_bsd_aarch64.hpp
HeapBaseMinAddress OpenJDK6 size_t bsd x86 2*G define_pd_global os_cpu/bsd_x86/
globals_bsd_x86.hpp
HeapBaseMinAddress OpenJDK6 size_t bsd zero 2*G define_pd_global os_cpu/bsd_zero/
globals_bsd_zero.hpp
HeapBaseMinAddress OpenJDK6 uintx linux aarch64 2*G define_pd_global os_cpu/linux_aarch64/
globals_linux_aarch64.hpp
HeapBaseMinAddress OpenJDK6 size_t linux arm 2*G define_pd_global os_cpu/linux_arm/
globals_linux_arm.hpp
HeapBaseMinAddress OpenJDK6 size_t linux ppc 2*G define_pd_global os_cpu/linux_ppc/
globals_linux_ppc.hpp
HeapBaseMinAddress OpenJDK6 size_t linux s390 2*G define_pd_global os_cpu/linux_s390/
globals_linux_s390.hpp
HeapBaseMinAddress OpenJDK6 size_t linux sparc CONST64(4)*G define_pd_global os_cpu/linux_sparc/
globals_linux_sparc.hpp
HeapBaseMinAddress OpenJDK6 size_t linux x86 2*G define_pd_global os_cpu/linux_x86/
globals_linux_x86.hpp
HeapBaseMinAddress OpenJDK6 size_t linux zero 2*G define_pd_global os_cpu/linux_zero/
globals_linux_zero.hpp
HeapBaseMinAddress OpenJDK6 size_t gc product_pd OS specific low limit for heap base address share/gc/shared/
gc_globals.hpp
HeapBaseMinAddress OpenJDK6 size_t solaris sparc CONST64(6)*G define_pd_global os_cpu/solaris_sparc/
globals_solaris_sparc.hpp
HeapBaseMinAddress OpenJDK6 size_t solaris x86 2*G define_pd_global os_cpu/solaris_x86/
globals_solaris_x86.hpp
HeapBaseMinAddress OpenJDK6 uintx windows aarch64 2*G define_pd_global os_cpu/windows_aarch64/
globals_windows_aarch64.hpp
HeapBaseMinAddress OpenJDK6 size_t windows x86 2*G define_pd_global os_cpu/windows_x86/
globals_windows_x86.hpp
HeapDumpAfterFullGC OpenJDK6 bool runtime false manageable Dump heap to file after any major stop-the-world GC share/runtime/globals.hpp
HeapDumpBeforeFullGC OpenJDK6 bool runtime false manageable Dump heap to file before any major stop-the-world GC share/runtime/globals.hpp
HeapDumpOnOutOfMemoryError OpenJDK6 bool runtime false manageable Dump heap to file when java.lang.OutOfMemoryError is thrown share/runtime/globals.hpp
When HeapDumpOnOutOfMemoryError is on, the path (filename or
HeapDumpPath OpenJDK6 ccstr runtime NULL manageable directory) of the dump file (defaults to java_pid.hprof share/runtime/globals.hpp
in the working directory)
Obsoleted
HeapFirstMaximumCompactionCount OpenJDK6 in JDK24 uintx gc 3 product The collection count for the first maximum compaction share/gc/parallel/
Expired in range(0, max_uintx) parallel_globals.hpp
JDK25
Obsoleted How often should we maximally compact the heap (not allowing
HeapMaximumCompactionInterval OpenJDK6 in JDK26 uintx gc 20 product any dead space) share/gc/parallel/
Expired in range(0, max_uintx) parallel_globals.hpp
JDK27
Heap allocation steps through preferred address regions to find
HeapSearchSteps OpenJDK9 uintx runtime 3 PPC64_ONLY(+17) product where it can allocate the heap. Number of steps to take per share/runtime/globals.hpp
range(1, max_uintx) region.
ScaleForWordSize(32*M) Size of heap (bytes) per GC thread used in calculating the share/gc/shared/
HeapSizePerGCThread OpenJDK6 size_t gc range((size_t)os::vm_page_size(), product number of GC threads gc_globals.hpp
(size_t)max_uintx)
999999 large numbers of calls (per method invocation) force hotness
HotCallCountThreshold OpenJDK6 intx c2 range(0, ((intx)MIN2((int64_t)max_intx, develop share/opto/c2_globals.hpp
(int64_t)(+1.0e10))))
999999 highly profitable inlining opportunities force hotness
HotCallProfitThreshold OpenJDK6 intx c2 range(0, ((intx)MIN2((int64_t)max_intx, develop share/opto/c2_globals.hpp
(int64_t)(+1.0e10))))
-1 trivial methods (no larger than this) force calls to be hot
HotCallTrivialSize OpenJDK6 intx c2 range(-1, ((intx)MIN2((int64_t)max_intx, develop share/opto/c2_globals.hpp
(int64_t)(+1.0e10))))
-1 trivial execution time (no larger than this) forces hotness
HotCallTrivialWork OpenJDK6 intx c2 range(-1, ((intx)MIN2((int64_t)max_intx, develop share/opto/c2_globals.hpp
(int64_t)(+1.0e10))))
100000 Number of compiled code invocations after which
HotMethodDetectionLimit OpenJDK9 intx runtime range(1, max_jint) diagnostic the method is considered as hot by the flusher share/runtime/globals.hpp
Don't compile methods larger than this if
HugeMethodLimit OpenJDK6 intx runtime 8000 develop +DontCompileHugeMethods share/runtime/globals.hpp
ICMissHistogram OpenJDK6 bool runtime false notproduct Produce histogram of IC misses share/runtime/globals.hpp
IEEEPrecision OpenJDK6 bool x86 true develop Enables IEEE precision (for INTEL only) cpu/x86/globals_x86.hpp
INTPRESSURE OpenJDK6 intx aarch64 24 define_pd_global cpu/aarch64/
c2_globals_aarch64.hpp
INTPRESSURE OpenJDK6 intx arm 12 define_pd_global cpu/arm/c2_globals_arm.hpp
INTPRESSURE OpenJDK6 intx c2 develop_pd Number of integer LRG's that constitute high register pressure share/opto/c2_globals.hpp
INTPRESSURE OpenJDK6 intx ppc 26 define_pd_global cpu/ppc/c2_globals_ppc.hpp
INTPRESSURE OpenJDK6 intx s390 10 define_pd_global // Medium size register set, 6 special purpose regs, 3 SOE regs. cpu/s390/
c2_globals_s390.hpp
INTPRESSURE OpenJDK6 intx sparc 48 define_pd_global // large register set cpu/sparc/
c2_globals_sparc.hpp
INTPRESSURE OpenJDK6 intx x86 6 define_pd_global cpu/x86/c2_globals_x86.hpp
IdealizeClearArrayNode OpenJDK9 bool aarch64 true define_pd_global cpu/aarch64/
c2_globals_aarch64.hpp
IdealizeClearArrayNode OpenJDK9 bool c2 diagnostic_pd Replace ClearArrayNode by subgraph of basic operations. share/opto/c2_globals.hpp
IdealizeClearArrayNode OpenJDK9 bool ppc true define_pd_global cpu/ppc/c2_globals_ppc.hpp
IdealizeClearArrayNode OpenJDK9 bool s390 false define_pd_global cpu/s390/
c2_globals_s390.hpp
IdealizeClearArrayNode OpenJDK9 bool sparc true define_pd_global cpu/sparc/
c2_globals_sparc.hpp
IdealizeClearArrayNode OpenJDK9 bool x86 true define_pd_global cpu/x86/c2_globals_x86.hpp
Check performance difference allowing FP
IdealizedNumerics OpenJDK6 bool c2 false develop associativity and commutativity... share/opto/c2_globals.hpp
IgnoreEmptyClassPaths OpenJDK8 bool runtime false product Ignore empty path elements in -classpath share/runtime/globals.hpp
IgnoreLibthreadGPFault OpenJDK6 bool runtime false develop Suppress workaround for libthread GP fault share/runtime/globals.hpp
IgnoreLockingAssertions OpenJDK6 bool runtime false notproduct disable locking assertions (for speed) share/runtime/globals.hpp
Suppress rewrites of bytecodes in the oopmap generator.
IgnoreRewrites OpenJDK6 bool runtime false develop This is unsafe! share/runtime/globals.hpp
IgnoreUnrecognizedVMOptions OpenJDK6 bool runtime false product Ignore unrecognized VM options share/runtime/globals.hpp
Deprecated
in JDK10 Do not quit -Xshare:dump even if we encounter unverifiable
IgnoreUnverifiableClassesDuringDump OpenJDK8 Obsoleted bool runtime true diagnostic classes. Just exclude them from the shared dictionary. share/runtime/globals.hpp
in JDK12
Expired in
JDK13
ImplicitDiv0Checks OpenJDK6 bool c1 true develop Use implicit division by zero checks share/c1/c1_globals.hpp
3 Don't do implicit null checks if NPE's in a method exceeds
ImplicitNullCheckThreshold OpenJDK6 intx c2 range(0, max_jint) develop limit share/opto/c2_globals.hpp
ImplicitNullChecks OpenJDK6 bool aarch64 true define_pd_global // Generate code for implicit null checks cpu/aarch64/
globals_aarch64.hpp
ImplicitNullChecks OpenJDK6 bool arm true define_pd_global // Generate code for implicit null checks cpu/arm/globals_arm.hpp
ImplicitNullChecks OpenJDK6 bool runtime diagnostic_pd Generate code for implicit null checks share/runtime/globals.hpp
ImplicitNullChecks OpenJDK6 bool ppc true define_pd_global // Generate code for implicit null checks. cpu/ppc/globals_ppc.hpp
ImplicitNullChecks OpenJDK6 bool s390 true define_pd_global // Generate code for implicit null checks. cpu/s390/globals_s390.hpp
ImplicitNullChecks OpenJDK6 bool sparc true define_pd_global // Generate code for implicit null checks cpu/sparc/globals_sparc.hpp
ImplicitNullChecks OpenJDK6 bool x86 true define_pd_global // Generate code for implicit null checks cpu/x86/globals_x86.hpp
ImplicitNullChecks OpenJDK6 bool zero true define_pd_global cpu/zero/globals_zero.hpp
50 Increase the compile threshold for C1 compilation if the code
IncreaseFirstTierCompileThresholdAt OpenJDK8 uintx runtime range(0, 99) product cache is filled by the specified percentage share/runtime/globals.hpp
IncrementalInline OpenJDK7 bool c2 true product do post parse inlining share/opto/c2_globals.hpp
IndexSetWatch OpenJDK6 intx c2 0 notproduct Trace all operations on this IndexSet (-1 means all, 0 none) share/opto/c2_globals.hpp
range(-1, 0)
InitArrayShortSize OpenJDK9 intx aarch64 BytesPerLong define_pd_global cpu/aarch64/
globals_aarch64.hpp
InitArrayShortSize OpenJDK9 intx arm 8*BytesPerLong define_pd_global cpu/arm/globals_arm.hpp
Threshold small size (in bytes) for clearing arrays.
InitArrayShortSize OpenJDK9 intx runtime diagnostic_pd Anything this size or smaller may get converted to discrete share/runtime/globals.hpp
scalar stores.
InitArrayShortSize OpenJDK9 intx ppc 9*BytesPerLong define_pd_global cpu/ppc/globals_ppc.hpp
InitArrayShortSize OpenJDK9 intx s390 1*BytesPerLong define_pd_global cpu/s390/globals_s390.hpp
InitArrayShortSize OpenJDK9 intx sparc 8*BytesPerLong define_pd_global cpu/sparc/globals_sparc.hpp
InitArrayShortSize OpenJDK9 intx x86 8*BytesPerLong define_pd_global cpu/x86/globals_x86.hpp
InitArrayShortSize OpenJDK9 intx zero 0 define_pd_global cpu/zero/globals_zero.hpp
Deprecated
in JDK15
InitialBootClassLoaderMetaspaceSize OpenJDK8 Obsoleted size_t runtime NOT_LP64(2200*K) LP64_ONLY(4*M) product Initial size of the boot class loader data metaspace share/runtime/globals.hpp
in JDK16 range(30*K, max_uintx/BytesPerWord)
Expired in
JDK17
InitialCodeCacheSize OpenJDK6 intx aarch64 160*K define_pd_global cpu/aarch64/
c1_globals_aarch64.hpp
InitialCodeCacheSize OpenJDK6 size_t arm 160*K define_pd_global cpu/arm/c1_globals_arm.hpp
InitialCodeCacheSize OpenJDK6 uintx runtime product_pd Initial code cache size (in bytes) share/runtime/globals.hpp
InitialCodeCacheSize OpenJDK6 uintx ppc 2048*K define_pd_global // Integral multiple of CodeCacheExpansionSize cpu/ppc/c2_globals_ppc.hpp
InitialCodeCacheSize OpenJDK6 uintx s390 160*K define_pd_global cpu/s390/
c1_globals_s390.hpp
InitialCodeCacheSize OpenJDK6 uintx sparc 2048*K define_pd_global // Integral multiple of CodeCacheExpansionSize cpu/sparc/
c2_globals_sparc.hpp
InitialCodeCacheSize OpenJDK6 uintx x86 160*K define_pd_global cpu/x86/c1_globals_x86.hpp
InitialHeapSize OpenJDK6 size_t gc 0 product Initial heap size (in bytes); zero means use ergonomics share/gc/shared/
gc_globals.hpp
Deprecated
in JDK10 Fraction (1/n) of real memory used for initial heap size.
InitialRAMFraction OpenJDK6 Obsoleted uintx gc 64 product Deprecated, use InitialRAMPercentage instead share/gc/shared/
in JDK23 range(1, max_uintx) gc_globals.hpp
Expired in
JDK24
InitialRAMPercentage OpenJDK10 double gc 1.5625 product Percentage of real memory used for initial heap size share/gc/shared/
range(0.0, 100.0) gc_globals.hpp
InitialSurvivorRatio OpenJDK6 uintx gc 8 product Initial ratio of young generation/survivor space size share/gc/shared/
range(0, max_uintx) gc_globals.hpp
InitialTenuringThreshold OpenJDK6 uintx gc 7 product Initial value for tenuring threshold share/gc/shared/
range(0, markOopDesc::max_age + 1) gc_globals.hpp
The percent occupancy (IHOP) of the current old generation
capacity above which a concurrent mark cycle will be initiated
Its value may change over time if adaptive IHOP is enabled,
otherwise the value remains constant.
InitiatingHeapOccupancyPercent OpenJDK6 uintx gc 45 product In the latter case a value of 0 will result as frequent as share/gc/shared/
range(0, 100) possible concurrent marking cycles. A value of 100 disables gc_globals.hpp
concurrent marking.
Fragmentation waste in the old generation is not considered
free space in this calculation. (G1 collector only)
Inject thread creation failures for
InjectCompilerCreationFailure OpenJDK11 bool runtime false develop UseDynamicNumberOfCompilerThreads share/runtime/globals.hpp
Inject thread creation failures for share/gc/shared/
InjectGCWorkerCreationFailure OpenJDK9 bool gc false diagnostic UseDynamicNumberOfGCThreads gc_globals.hpp
InlineAccessors OpenJDK6 bool c2 true develop inline accessor methods (get/set) share/opto/c2_globals.hpp
Inline arraycopy native that is known to be part of
InlineArrayCopy OpenJDK6 bool runtime true diagnostic base library DLL share/runtime/globals.hpp
InlineCacheBufferSize OpenJDK11 size_t runtime 10*K experimental InlineCacheBuffer size share/runtime/globals.hpp
InlineClassNatives OpenJDK6 bool runtime true diagnostic Inline Class.isInstance, etc share/runtime/globals.hpp
File containing inlining replay information
InlineDataFile OpenJDK8 ccstr runtime NULL product [default: ./inline_pid%p.log] (%p replaced with pid) share/runtime/globals.hpp
Obsoleted
InlineFrequencyCount OpenJDK6 in JDK18 intx aarch64 100 define_pd_global cpu/aarch64/
Expired in globals_aarch64.hpp
JDK19
Obsoleted
InlineFrequencyCount OpenJDK6 in JDK18 intx arm 50 define_pd_global cpu/arm/globals_arm.hpp
Expired in
JDK19
Obsoleted Count of call site execution necessary to trigger frequent
InlineFrequencyCount OpenJDK6 in JDK18 intx runtime diagnostic_pd inlining share/runtime/globals.hpp
Expired in
JDK19
Obsoleted
InlineFrequencyCount OpenJDK6 in JDK18 intx ppc 100 define_pd_global cpu/ppc/globals_ppc.hpp
Expired in
JDK19
Obsoleted
InlineFrequencyCount OpenJDK6 in JDK18 intx s390 100 define_pd_global cpu/s390/globals_s390.hpp
Expired in
JDK19
Obsoleted
InlineFrequencyCount OpenJDK6 in JDK18 intx sparc 50 define_pd_global // we can use more inlining on the SPARC cpu/sparc/globals_sparc.hpp
Expired in
JDK19
Obsoleted
InlineFrequencyCount OpenJDK6 in JDK18 intx x86 100 define_pd_global cpu/x86/globals_x86.hpp
Expired in
JDK19
Obsoleted
InlineFrequencyCount OpenJDK6 in JDK18 intx zero 100 define_pd_global cpu/zero/globals_zero.hpp
Expired in
JDK19
InlineFrequencyRatio OpenJDK6 intx runtime 20 develop Ratio of call site execution to caller method invocation share/runtime/globals.hpp
range(0, max_jint)
InlineIntrinsics OpenJDK6 bool aarch64 true define_pd_global cpu/aarch64/
c1_globals_aarch64.hpp
InlineIntrinsics OpenJDK6 bool arm false define_pd_global // TODO: ARM cpu/arm/c1_globals_arm.hpp
InlineIntrinsics OpenJDK6 bool runtime develop_pd Inline intrinsics that can be statically resolved share/runtime/globals.hpp
InlineIntrinsics OpenJDK6 bool ppc true define_pd_global cpu/ppc/c2_globals_ppc.hpp
InlineIntrinsics OpenJDK6 bool s390 true define_pd_global cpu/s390/
c1_globals_s390.hpp
InlineIntrinsics OpenJDK6 bool sparc true define_pd_global cpu/sparc/
c2_globals_sparc.hpp
InlineIntrinsics OpenJDK6 bool x86 true define_pd_global cpu/x86/c1_globals_x86.hpp
InlineMathNatives OpenJDK6 bool runtime true diagnostic Inline SinD, CosD, etc. share/runtime/globals.hpp
Inline methods containing exception handlers
InlineMethodsWithExceptionHandlers OpenJDK6 bool c1 true develop (NOTE: does not work with current backend) share/c1/c1_globals.hpp
InlineNIOCheckIndex OpenJDK6 bool c1 true diagnostic Intrinsify java.nio.Buffer.checkIndex share/c1/c1_globals.hpp
InlineNatives OpenJDK6 bool runtime true diagnostic Inline natives that are known to be part of base library DLL share/runtime/globals.hpp
InlineObjectCopy OpenJDK6 bool c2 true diagnostic inline Object.clone and Arrays.copyOf[Range] intrinsics share/opto/c2_globals.hpp
Inline Object::hashCode() native that is known to be part
InlineObjectHash OpenJDK6 bool runtime true diagnostic of base library DLL share/runtime/globals.hpp
inline sun.reflect.Reflection.getCallerClass(), known to be
InlineReflectionGetCallerClass OpenJDK6 bool c2 true diagnostic part of base library DLL share/opto/c2_globals.hpp
InlineSmallCode OpenJDK6 intx aarch64 1000 define_pd_global cpu/aarch64/
globals_aarch64.hpp
InlineSmallCode OpenJDK6 intx arm 1500 define_pd_global cpu/arm/globals_arm.hpp
Only inline already compiled methods if their code size is
InlineSmallCode OpenJDK6 intx runtime product_pd less than this share/runtime/globals.hpp
InlineSmallCode OpenJDK6 intx ppc 1500 define_pd_global cpu/ppc/globals_ppc.hpp
InlineSmallCode OpenJDK6 intx s390 2000 define_pd_global cpu/s390/globals_s390.hpp
InlineSmallCode OpenJDK6 intx sparc 1500 define_pd_global cpu/sparc/globals_sparc.hpp
InlineSmallCode OpenJDK6 intx x86 1000 define_pd_global cpu/x86/globals_x86.hpp
InlineSmallCode OpenJDK6 intx zero 1000 define_pd_global cpu/zero/globals_zero.hpp
InlineSynchronizedMethods OpenJDK6 bool c1 true product Inline synchronized methods share/c1/c1_globals.hpp
InlineThreadNatives OpenJDK6 bool runtime true diagnostic Inline Thread.currentThread, etc share/runtime/globals.hpp
InlineThrowCount OpenJDK6 intx runtime 50 develop Force inlining of interpreted methods that throw this often share/runtime/globals.hpp
range(0, max_jint)
InlineThrowMaxSize OpenJDK6 intx runtime 200 develop Force inlining of throwing methods smaller than this share/runtime/globals.hpp
range(0, max_jint)
InlineUnsafeOps OpenJDK6 bool runtime true diagnostic Inline memory ops (native methods) from Unsafe share/runtime/globals.hpp
InlineWarmCalls OpenJDK6 bool c2 false develop Use a heat-based priority queue to govern inlining share/opto/c2_globals.hpp
Inline OpenJDK6 bool runtime true product Enable inlining share/runtime/globals.hpp
InsertEndGroupPPC64 OpenJDK7 bool ppc false product Insert EndGroup instructions to optimize for Power6. cpu/ppc/globals_ppc.hpp
Obsoleted
InsertMemBarAfterArraycopy OpenJDK6 in JDK16 bool c2 true product Insert memory barrier after arraycopy call share/opto/c2_globals.hpp
Expired in
JDK17
InstallMethods OpenJDK6 bool c1 true develop Install methods at the end of successful compilations share/c1/c1_globals.hpp
InstructionCountCutoff OpenJDK6 intx c1 37000 develop If GraphBuilder adds this many instructions, bails out share/c1/c1_globals.hpp
range(0, max_jint)
Start debugger when an implicit OS (e.g. NULL)
InterceptOSException OpenJDK6 bool runtime false develop exception happens share/runtime/globals.hpp
InteriorEntryAlignment OpenJDK6 intx aarch64 16 define_pd_global cpu/aarch64/
c2_globals_aarch64.hpp
InteriorEntryAlignment OpenJDK6 intx arm 16 define_pd_global // = CodeEntryAlignment cpu/arm/c2_globals_arm.hpp
Code alignment for interior entry points
InteriorEntryAlignment OpenJDK6 intx c2 product_pd in generated code (in bytes) share/opto/c2_globals.hpp
InteriorEntryAlignment OpenJDK6 intx ppc 16 define_pd_global cpu/ppc/c2_globals_ppc.hpp
InteriorEntryAlignment OpenJDK6 intx s390 2 define_pd_global cpu/s390/
c2_globals_s390.hpp
InteriorEntryAlignment OpenJDK6 intx sparc 16 define_pd_global // = CodeEntryAlignment cpu/sparc/
c2_globals_sparc.hpp
InteriorEntryAlignment OpenJDK6 intx x86 4 define_pd_global cpu/x86/c2_globals_x86.hpp
33 NON_TIERED number of method invocations/branches (expressed as
InterpreterProfilePercentage OpenJDK6 intx runtime range(0, 100) product % of CompileThreshold) before profiling in the interpreter share/runtime/globals.hpp
JVMCICounterSize OpenJDK9 intx jvmci 0 experimental Reserved size for benchmark counters share/jvmci/
range(0, 1000000) jvmci_globals.hpp
JVMCICountersExcludeCompiler OpenJDK9 bool jvmci true experimental Exclude JVMCI compiler threads from benchmark counters share/jvmci/
jvmci_globals.hpp
JVMCIHostThreads OpenJDK9 intx jvmci 1 experimental Force number of compiler threads for JVMCI host compiler share/jvmci/
range(0, max_jint)) jvmci_globals.hpp
JVMCINMethodSizeLimit OpenJDK9 intx jvmci (80*K)*wordSize experimental Maximum size of a compiled method. share/jvmci/
range(0, max_jint) jvmci_globals.hpp
JVMCIPrintProperties OpenJDK9 bool jvmci false experimental Prints properties used by the JVMCI compiler and exits share/jvmci/
jvmci_globals.hpp
JVMCIThreads OpenJDK9 intx jvmci 1 experimental Force number of JVMCI compiler threads to use share/jvmci/
range(1, max_jint) jvmci_globals.hpp
Trace level for JVMCI:
0 share/jvmci/
JVMCITraceLevel OpenJDK9 intx jvmci range(0, 6) experimental 1 means emit a message for each CompilerToVM call, jvmci_globals.hpp
levels greater than 1 provide progressively greater detail
JVMCIUseFastLocking OpenJDK9 bool jvmci true develop Use fast inlined locking code share/jvmci/
jvmci_globals.hpp
JVMInvokeMethodSlack OpenJDK6 size_t aix ppc 8192 define_pd_global os_cpu/aix_ppc/
globals_aix_ppc.hpp
JVMInvokeMethodSlack OpenJDK6 uintx bsd aarch64 8192 define_pd_global os_cpu/bsd_aarch64/
globals_bsd_aarch64.hpp
JVMInvokeMethodSlack OpenJDK6 size_t bsd x86 8192 define_pd_global os_cpu/bsd_x86/
globals_bsd_x86.hpp
JVMInvokeMethodSlack OpenJDK6 size_t bsd zero 8192 define_pd_global os_cpu/bsd_zero/
globals_bsd_zero.hpp
JVMInvokeMethodSlack OpenJDK6 uintx linux aarch64 8192 define_pd_global os_cpu/linux_aarch64/
globals_linux_aarch64.hpp
JVMInvokeMethodSlack OpenJDK6 size_t linux arm 8192 define_pd_global os_cpu/linux_arm/
globals_linux_arm.hpp
JVMInvokeMethodSlack OpenJDK6 size_t linux ppc 8192 define_pd_global os_cpu/linux_ppc/
globals_linux_ppc.hpp
JVMInvokeMethodSlack OpenJDK6 size_t linux s390 8192 define_pd_global os_cpu/linux_s390/
globals_linux_s390.hpp
JVMInvokeMethodSlack OpenJDK6 size_t linux sparc 12288 define_pd_global os_cpu/linux_sparc/
globals_linux_sparc.hpp
JVMInvokeMethodSlack OpenJDK6 size_t linux x86 8192 define_pd_global os_cpu/linux_x86/
globals_linux_x86.hpp
JVMInvokeMethodSlack OpenJDK6 size_t linux zero 8192 define_pd_global os_cpu/linux_zero/
globals_linux_zero.hpp
JVMInvokeMethodSlack OpenJDK6 size_t runtime develop_pd Stack space (bytes) required for JVM_InvokeMethod to complete share/runtime/globals.hpp
JVMInvokeMethodSlack OpenJDK6 size_t solaris sparc 12288 define_pd_global os_cpu/solaris_sparc/
globals_solaris_sparc.hpp
JVMInvokeMethodSlack OpenJDK6 size_t solaris x86 10*K define_pd_global os_cpu/solaris_x86/
globals_solaris_x86.hpp
JVMInvokeMethodSlack OpenJDK6 uintx windows aarch64 8192 define_pd_global os_cpu/windows_aarch64/
globals_windows_aarch64.hpp
JVMInvokeMethodSlack OpenJDK6 size_t windows x86 8192 define_pd_global os_cpu/windows_x86/
globals_windows_x86.hpp
Print information about Java monitor locks when the stacks are
JavaMonitorsInStackTrace OpenJDK6 bool runtime true product dumped share/runtime/globals.hpp
JavaPriority10_To_OSPriority OpenJDK6 intx runtime -1 product Map Java priorities to OS priorities share/runtime/globals.hpp
range(-1, 127)
JavaPriority1_To_OSPriority OpenJDK6 intx runtime -1 product Map Java priorities to OS priorities share/runtime/globals.hpp
range(-1, 127)
JavaPriority2_To_OSPriority OpenJDK6 intx runtime -1 product Map Java priorities to OS priorities share/runtime/globals.hpp
range(-1, 127)
JavaPriority3_To_OSPriority OpenJDK6 intx runtime -1 product Map Java priorities to OS priorities share/runtime/globals.hpp
range(-1, 127)
JavaPriority4_To_OSPriority OpenJDK6 intx runtime -1 product Map Java priorities to OS priorities share/runtime/globals.hpp
range(-1, 127)
JavaPriority5_To_OSPriority OpenJDK6 intx runtime -1 product Map Java priorities to OS priorities share/runtime/globals.hpp
range(-1, 127)
JavaPriority6_To_OSPriority OpenJDK6 intx runtime -1 product Map Java priorities to OS priorities share/runtime/globals.hpp
range(-1, 127)
JavaPriority7_To_OSPriority OpenJDK6 intx runtime -1 product Map Java priorities to OS priorities share/runtime/globals.hpp
range(-1, 127)
JavaPriority8_To_OSPriority OpenJDK6 intx runtime -1 product Map Java priorities to OS priorities share/runtime/globals.hpp
range(-1, 127)
JavaPriority9_To_OSPriority OpenJDK6 intx runtime -1 product Map Java priorities to OS priorities share/runtime/globals.hpp
range(-1, 127)
Obsoleted
LIRFillDelaySlots OpenJDK6 in JDK15 bool aarch64 false define_pd_global cpu/aarch64/
Expired in c1_globals_aarch64.hpp
JDK16
Obsoleted
LIRFillDelaySlots OpenJDK6 in JDK15 bool arm false define_pd_global cpu/arm/c1_globals_arm.hpp
Expired in
JDK16
Obsoleted
LIRFillDelaySlots OpenJDK6 in JDK15 bool c1 product_pd fill delays on on SPARC with LIR share/c1/c1_globals.hpp
Expired in
JDK16
Obsoleted
LIRFillDelaySlots OpenJDK6 in JDK15 bool ppc false define_pd_global cpu/ppc/c1_globals_ppc.hpp
Expired in
JDK16
Obsoleted
LIRFillDelaySlots OpenJDK6 in JDK15 bool s390 false define_pd_global cpu/s390/
Expired in c1_globals_s390.hpp
JDK16
Obsoleted
LIRFillDelaySlots OpenJDK6 in JDK15 bool sparc true define_pd_global cpu/sparc/
Expired in c1_globals_sparc.hpp
JDK16
Obsoleted
LIRFillDelaySlots OpenJDK6 in JDK15 bool x86 false define_pd_global cpu/x86/c1_globals_x86.hpp
Expired in
JDK16
LIRTraceExecution OpenJDK6 bool c1 false develop add LIR code which logs the execution of blocks share/c1/c1_globals.hpp
LIRTracePeephole OpenJDK6 bool c1 false develop Trace peephole optimizer share/c1/c1_globals.hpp
LargePageHeapSizeThreshold OpenJDK6 size_t runtime 128*M product Use large pages if maximum heap is at least this big share/runtime/globals.hpp
range(0, max_uintx)
LargePageSizeInBytes OpenJDK6 size_t runtime 0 product Large page size (0 to let VM choose the page size) share/runtime/globals.hpp
range(0, max_uintx)
LargePagesIndividualAllocationInjectError OpenJDK6 bool runtime false develop Fail large pages individual allocation share/runtime/globals.hpp
LiveNodeCountInliningCutoff OpenJDK7 intx c2 40000 product max number of live nodes in a method share/opto/c2_globals.hpp
range(0, max_juint / 8)
LoadExecStackDllInVMThread OpenJDK7 bool linux true product Load DLLs with executable-stack attribute in the VM Thread os/linux/globals_linux.hpp
LoadLineNumberTables OpenJDK6 bool runtime true develop Tell whether the class file parser loads line number tables share/runtime/globals.hpp
LoadLocalVariableTables OpenJDK6 bool runtime true develop Tell whether the class file parser loads local variable tables share/runtime/globals.hpp
Tell whether the class file parser loads local variable type
LoadLocalVariableTypeTables OpenJDK6 bool runtime true develop tables share/runtime/globals.hpp
LogCompilation OpenJDK6 bool runtime false diagnostic Log compilation activity in detail to LogFile share/runtime/globals.hpp
LogEventsBufferEntries OpenJDK6 uintx runtime 20 diagnostic Number of ring buffer event logs share/runtime/globals.hpp
range(1, NOT_LP64(1*K) LP64_ONLY(1*M))
LogEvents OpenJDK6 bool runtime true diagnostic Enable the various ring buffer event logs share/runtime/globals.hpp
If LogVMOutput or LogCompilation is on, save VM output to
LogFile OpenJDK6 ccstr runtime NULL diagnostic this file [default: ./hotspot_pid%p.log] (%p replaced with pid) share/runtime/globals.hpp
LogSweeper OpenJDK6 bool runtime false notproduct Keep a ring buffer of sweeper activity share/runtime/globals.hpp
LogTouchedMethods OpenJDK9 bool runtime false diagnostic Log methods which have been ever touched in runtime share/runtime/globals.hpp
LogVMOutput OpenJDK6 bool runtime false diagnostic Save VM output to LogFile share/runtime/globals.hpp
LongCompileThreshold OpenJDK6 intx runtime 50 develop Used with +TraceLongCompiles share/runtime/globals.hpp
LoopMaxUnroll OpenJDK7 intx c2 16 product Maximum number of unrolls for main loop share/opto/c2_globals.hpp
range(0, max_jint)
LoopOptsCount OpenJDK6 intx c2 43 product Set level of loop optimization for tier 1 compiles share/opto/c2_globals.hpp
range(5, 43)
LoopPercentProfileLimit OpenJDK9 intx aarch64 10 define_pd_global cpu/aarch64/
c2_globals_aarch64.hpp
LoopPercentProfileLimit OpenJDK9 intx c2 product_pd Unroll loop bodies with % node count of profile limit share/opto/c2_globals.hpp
LoopPercentProfileLimit OpenJDK9 intx ppc 10 define_pd_global cpu/ppc/c2_globals_ppc.hpp
LoopPercentProfileLimit OpenJDK9 intx s390 10 define_pd_global cpu/s390/
c2_globals_s390.hpp
LoopPercentProfileLimit OpenJDK9 intx sparc 10 define_pd_global cpu/sparc/
c2_globals_sparc.hpp
LoopPercentProfileLimit OpenJDK9 intx x86 10 define_pd_global cpu/x86/c2_globals_x86.hpp
LoopStripMiningIterShortLoop OpenJDK10 uintx c2 0 product Loop with fewer iterations are not strip mined share/opto/c2_globals.hpp
range(0, max_juint)
LoopStripMiningIter OpenJDK10 uintx c2 0 product Number of iterations in strip mined loop share/opto/c2_globals.hpp
range(0, max_juint)
LoopUnrollLimit OpenJDK6 intx aarch64 60 define_pd_global cpu/aarch64/
c2_globals_aarch64.hpp
LoopUnrollLimit OpenJDK6 intx c2 product_pd Unroll loop bodies with node count less than this share/opto/c2_globals.hpp
LoopUnrollLimit OpenJDK6 intx ppc 60 define_pd_global cpu/ppc/c2_globals_ppc.hpp
LoopUnrollLimit OpenJDK6 intx s390 60 define_pd_global cpu/s390/
c2_globals_s390.hpp
LoopUnrollLimit OpenJDK6 intx sparc 60 define_pd_global // Design center runs on 1.3.1 cpu/sparc/
c2_globals_sparc.hpp
LoopUnrollLimit OpenJDK6 intx x86 50 define_pd_global // Design center runs on 1.3.1 cpu/x86/c2_globals_x86.hpp
4 Minimum number of unroll loop bodies before checking progress
LoopUnrollMin OpenJDK6 intx c2 range(0, max_jint) product of rounds of unroll,optimize,.. share/opto/c2_globals.hpp
LoopUnswitching OpenJDK6 bool c2 true product Enable loop unswitching (a form of invariant test hoisting) share/opto/c2_globals.hpp
MVCLEThreshold OpenJDK9 size_t s390 +2*(4*K) product Threshold above which page-aligned MVCLE copy/init is used. cpu/s390/globals_s390.hpp
MallocCatchPtr OpenJDK6 intx runtime -1 develop Hit breakpoint when mallocing/freeing this pointer share/runtime/globals.hpp
0 If non-zero, maximum number of words that malloc/realloc can
MallocMaxTestWords OpenJDK8 uintx runtime range(0, max_uintx) diagnostic allocate (for testing only) share/runtime/globals.hpp
ManagementServer OpenJDK6 bool runtime false product Create JMX Management Server share/runtime/globals.hpp
MarkStackSizeMax OpenJDK6 size_t gc NOT_LP64(4*M) LP64_ONLY(512*M) product Maximum size of marking stack share/gc/shared/
range(1, (max_jint - 1)) gc_globals.hpp
MarkStackSize OpenJDK6 size_t gc NOT_LP64(32*K) LP64_ONLY(4*M) product Size of marking stack share/gc/shared/
gc_globals.hpp
4 How often should we fully compact the heap (ignoring the dead share/gc/shared/
MarkSweepAlwaysCompactCount OpenJDK6 uint gc range(1, max_juint) product space parameters) gc_globals.hpp
Percentage (0-100) of the old gen allowed as dead wood.
Serial mark sweep treats this as both the minimum and maximum
value.
5 CMS uses this value only if it falls back to mark sweep. share/gc/shared/
MarkSweepDeadRatio OpenJDK6 uintx gc range(0, 100) product Par compact uses a variable scale based on the density of the gc_globals.hpp
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.
MaxBCEAEstimateLevel OpenJDK6 intx runtime 5 product Maximum number of nested calls that are analyzed by BC EA share/runtime/globals.hpp
range(0, max_jint)
MaxBCEAEstimateSize OpenJDK6 intx runtime 150 product Maximum bytecode size of a method to be analyzed by BC EA share/runtime/globals.hpp
range(0, max_jint)
MaxDirectMemorySize OpenJDK6 uint64_t runtime 0 product Maximum total size of NIO direct-buffer allocations share/runtime/globals.hpp
range(0, max_jlong)
MaxElementPrintSize OpenJDK6 intx runtime 256 notproduct maximum number of elements to print share/runtime/globals.hpp
MaxExpectedDataSegmentSize OpenJDK9 uintx aix 8*G product Maximum expected Data Segment Size. os/aix/globals_aix.hpp
MaxFDLimit OpenJDK6 bool runtime true product Bump the number of file descriptors to maximum in Solaris share/runtime/globals.hpp
100 maximum number of nested calls that are forced for inlining
MaxForceInlineLevel OpenJDK7 intx runtime range(0, max_jint) develop (using CompileCommand or marked w/ @ForceInline) share/runtime/globals.hpp
Deprecated
in JDK8 Adaptive size policy maximum GC minor pause time goal
MaxGCMinorPauseMillis OpenJDK6 Obsoleted uintx gc max_uintx product in millisecond share/gc/shared/
in JDK23 range(0, max_uintx) gc_globals.hpp
Expired in
JDK24
max_uintx - 1 Adaptive size policy maximum GC pause time goal in millisecond, share/gc/shared/
MaxGCPauseMillis OpenJDK6 uintx gc range(1, max_uintx - 1) product or (G1 Only) the maximum GC time per MMU time slice gc_globals.hpp
The maximum percentage of heap free after GC to avoid shrinking.
MaxHeapFreeRatio OpenJDK6 uintx runtime 70 manageable For most GCs this applies to the old generation. In G1 and share/runtime/globals.hpp
range(0, 100) ParallelGC it applies to the whole heap.
MaxHeapSize OpenJDK6 size_t gc ScaleForWordSize(96*M) product Maximum heap size (in bytes) share/gc/shared/
gc_globals.hpp
MaxInlineLevel OpenJDK6 intx runtime 15 product maximum number of nested calls that are inlined share/runtime/globals.hpp
range(0, max_jint)
MaxInlineSize OpenJDK6 intx runtime 35 product The maximum bytecode size of a method to be inlined share/runtime/globals.hpp
range(0, max_jint)
The maximum number of interpreted frames to skip when searching
MaxInterpretedSearchLength OpenJDK6 intx runtime 3 develop for recompilee share/runtime/globals.hpp
Maximum allowable local JNI handle capacity to
MaxJNILocalCapacity OpenJDK8 intx runtime 65536 product EnsureLocalCapacity() and PushLocalFrame(), share/runtime/globals.hpp
range(min_intx, max_intx) where <= 0 is unlimited, default: 65536
1024 The maximum number of lines in the stack trace for Java
MaxJavaStackTraceDepth OpenJDK6 intx runtime range(0, max_jint/2) product exceptions (0 means all) share/runtime/globals.hpp
MaxJumpTableSize OpenJDK6 intx c2 65000 product Maximum number of targets in a generated jump table share/opto/c2_globals.hpp
range(0, max_intx)
MaxJumpTableSparseness OpenJDK6 intx c2 5 product Maximum sparseness for jumptables share/opto/c2_globals.hpp
range(0, max_intx / 4)
MaxLabelRootDepth OpenJDK6 intx c2 1100 product Maximum times call Label_Root to prevent stack overflow share/opto/c2_globals.hpp
range(100, max_jint)
(OptoLoopAlignment-1) Align a loop if padding size in bytes is less or equal to this
MaxLoopPad OpenJDK6 intx c2 range(0, max_jint) product value share/opto/c2_globals.hpp
MaxMetaspaceExpansion OpenJDK8 size_t runtime ScaleForWordSize(4*M) product The maximum expansion of Metaspace without full GC (in bytes) share/runtime/globals.hpp
range(0, max_uintx)
70 The maximum percentage of Metaspace free after GC to avoid
MaxMetaspaceFreeRatio OpenJDK8 uintx runtime range(0, 100) product shrinking share/runtime/globals.hpp
MaxMetaspaceSize OpenJDK8 size_t runtime max_uintx product Maximum size of Metaspaces (in bytes) share/runtime/globals.hpp
max_uintx Maximum new generation size (in bytes), max_uintx means set share/gc/shared/
MaxNewSize OpenJDK6 size_t gc range(0, max_uintx) product ergonomically gc_globals.hpp
MaxNodeLimit OpenJDK6 intx c2 80000 product Maximum number of nodes share/opto/c2_globals.hpp
range(1000, max_jint / 3)
Deprecated
in JDK10 Maximum fraction (1/n) of real memory used for maximum heap
MaxRAMFraction OpenJDK6 Obsoleted uintx gc 4 product size. share/gc/shared/
in JDK23 range(1, max_uintx) Deprecated, use MaxRAMPercentage instead gc_globals.hpp
Expired in
JDK24
MaxRAMPercentage OpenJDK10 double gc 25.0 product Maximum percentage of real memory used for maximum heap size share/gc/shared/
range(0.0, 100.0) gc_globals.hpp
Deprecated
in JDK26
MaxRAM OpenJDK6 Obsoleted uint64_t aarch64 1ULL*G define_pd_global cpu/aarch64/
in JDK27 c1_globals_aarch64.hpp
Expired in
JDK28
Deprecated
in JDK26
MaxRAM OpenJDK6 Obsoleted uint64_t arm 1ULL*G define_pd_global cpu/arm/c1_globals_arm.hpp
in JDK27
Expired in
JDK28
Deprecated
in JDK26
MaxRAM OpenJDK6 Obsoleted uint64_t gc product_pd Real memory size (in bytes) used to set maximum heap size share/gc/shared/
in JDK27 gc_globals.hpp
Expired in
JDK28
Deprecated
in JDK26
MaxRAM OpenJDK6 Obsoleted uint64_t runtime 1ULL*G define_pd_global share/runtime/globals.hpp
in JDK27
Expired in
JDK28
Deprecated
in JDK26
MaxRAM OpenJDK6 Obsoleted uint64_t ppc 128ULL*G define_pd_global cpu/ppc/c2_globals_ppc.hpp
in JDK27
Expired in
JDK28
Deprecated
in JDK26
MaxRAM OpenJDK6 Obsoleted uint64_t s390 1ULL*G define_pd_global cpu/s390/
in JDK27 c1_globals_s390.hpp
Expired in
JDK28
Deprecated
in JDK26
MaxRAM OpenJDK6 Obsoleted uint64_t sparc 128ULL*G define_pd_global cpu/sparc/
in JDK27 c2_globals_sparc.hpp
Expired in
JDK28
Deprecated
in JDK26
MaxRAM OpenJDK6 Obsoleted uint64_t x86 1ULL*G define_pd_global cpu/x86/c1_globals_x86.hpp
in JDK27
Expired in
JDK28
The maximum number of frames to inspect when searching for
MaxRecompilationSearchLength OpenJDK6 intx runtime 10 develop recompilee share/runtime/globals.hpp
MaxRecursiveInlineLevel OpenJDK6 intx runtime 1 product maximum number of nested recursive calls that are inlined share/runtime/globals.hpp
range(0, max_jint)
MaxSubklassPrintSize OpenJDK6 intx runtime 4 notproduct maximum number of subklasses to print when printing klass share/runtime/globals.hpp
MaxTenuringThreshold OpenJDK6 uintx gc 15 product Maximum value for tenuring threshold share/gc/shared/
range(0, markOopDesc::max_age + 1) gc_globals.hpp
MaxTrivialSize OpenJDK6 intx runtime 6 product The maximum bytecode size of a trivial method to be inlined share/runtime/globals.hpp
range(0, max_jint)
64 Max vector size in bytes,
MaxVectorSize OpenJDK7 intx c2 range(0, max_jint) product actual size could be less depending on elements type share/opto/c2_globals.hpp
Maximum fraction (1/n) of virtual memory used for ergonomically share/gc/shared/
MaxVirtMemFraction OpenJDK7 uintx gc 2 develop determining maximum heap size gc_globals.hpp
MemProfilingInterval OpenJDK6 intx runtime 500 notproduct Time between each invocation of the MemProfiler share/runtime/globals.hpp
MemProfiling OpenJDK6 bool runtime false develop Write memory usage profiling to log file share/runtime/globals.hpp
MetadataAllocationFailALotInterval OpenJDK8 uintx gc 1000 develop Metadata allocation failure a lot interval share/gc/shared/
gc_globals.hpp
Fail metadata allocations at intervals controlled by share/gc/shared/
MetadataAllocationFailALot OpenJDK8 bool gc false develop MetadataAllocationFailALotInterval gc_globals.hpp
MetaspaceSize OpenJDK8 uintx aarch64 12*M define_pd_global cpu/aarch64/
c1_globals_aarch64.hpp
MetaspaceSize OpenJDK8 size_t arm 12*M define_pd_global cpu/arm/c1_globals_arm.hpp
Initial threshold (in bytes) at which a garbage collection
MetaspaceSize OpenJDK8 size_t runtime product_pd is done to reduce Metaspace usage share/runtime/globals.hpp
MetaspaceSize OpenJDK8 size_t ppc ScaleForWordSize(16*M) define_pd_global cpu/ppc/c2_globals_ppc.hpp
MetaspaceSize OpenJDK8 size_t s390 12*M define_pd_global cpu/s390/
c1_globals_s390.hpp
MetaspaceSize OpenJDK8 size_t sparc ScaleForWordSize(16*M) define_pd_global cpu/sparc/
c2_globals_sparc.hpp
MetaspaceSize OpenJDK8 size_t x86 12*M define_pd_global cpu/x86/c1_globals_x86.hpp
MethodFlushing OpenJDK6 bool runtime true product Reclamation of zombie and not-entrant methods share/runtime/globals.hpp
MethodHistogramCutoff OpenJDK6 intx runtime 100 develop The cutoff value for method invocation histogram (+CountCalls) share/runtime/globals.hpp
MethodProfileWidth OpenJDK9 intx jvmci 0 experimental Number of methods to record in call profile share/jvmci/
jvmci_globals.hpp
MinHeapDeltaBytes OpenJDK6 size_t runtime ScaleForWordSize(128*K) product The minimum change in heap space due to GC (in bytes) share/runtime/globals.hpp
range(0, max_uintx)
The minimum percentage of heap free after GC to avoid expansion.
MinHeapFreeRatio OpenJDK6 uintx runtime 40 manageable For most GCs this applies to the old generation. In G1 and share/runtime/globals.hpp
range(0, 100) ParallelGC it applies to the whole heap.
Deprecated
in JDK18 The minimum invocation count a method needs to have to be
MinInliningThreshold OpenJDK6 Obsoleted intx runtime 250 product inlined share/runtime/globals.hpp
in JDK19 range(0, max_jint)
Expired in
JDK20
MinJumpTableSize OpenJDK6 intx aarch64 10 define_pd_global cpu/aarch64/
c2_globals_aarch64.hpp
MinJumpTableSize OpenJDK6 intx c2 product_pd Minimum number of targets in a generated jump table share/opto/c2_globals.hpp
MinJumpTableSize OpenJDK6 intx ppc 10 define_pd_global cpu/ppc/c2_globals_ppc.hpp
MinJumpTableSize OpenJDK6 intx s390 18 define_pd_global cpu/s390/
c2_globals_s390.hpp
MinJumpTableSize OpenJDK6 intx sparc 5 define_pd_global cpu/sparc/
c2_globals_sparc.hpp
MinJumpTableSize OpenJDK6 intx x86 10 define_pd_global cpu/x86/c2_globals_x86.hpp
MinMetaspaceExpansion OpenJDK8 size_t runtime ScaleForWordSize(256*K) product The minimum expansion of Metaspace (in bytes) share/runtime/globals.hpp
range(0, max_uintx)
40 The minimum percentage of Metaspace free after GC to avoid
MinMetaspaceFreeRatio OpenJDK8 uintx runtime range(0, 99) product expansion share/runtime/globals.hpp
MinOopMapAllocation OpenJDK6 intx runtime 8 develop Minimum number of OopMap entries in an OopMapSet share/runtime/globals.hpp
10 Minimum number of sweeper passes before an nmethod
MinPassesBeforeFlush OpenJDK9 intx runtime range(0, max_intx) diagnostic can be flushed share/runtime/globals.hpp
Deprecated
in JDK10 Minimum fraction (1/n) of real memory used for maximum heap
MinRAMFraction OpenJDK6 Obsoleted uintx gc 2 product size on systems with small physical memory size. share/gc/shared/
in JDK23 range(1, max_uintx) Deprecated, use MinRAMPercentage instead gc_globals.hpp
Expired in
JDK24
50.0 Minimum percentage of real memory used for maximum heap share/gc/shared/
MinRAMPercentage OpenJDK10 double gc range(0.0, 100.0) product size on systems with small physical memory size gc_globals.hpp
MinSurvivorRatio OpenJDK6 uintx gc 3 product Minimum ratio of young generation/survivor space size share/gc/shared/
range(3, max_uintx) gc_globals.hpp
MinTLABSize OpenJDK6 size_t gc 2*K product Minimum allowed TLAB size (in bytes) share/gc/shared/
range(1, max_uintx/2) gc_globals.hpp
Deprecated
in JDK14
MonitorBound OpenJDK6 Obsoleted intx runtime 0 product Bound Monitor population share/runtime/globals.hpp
in JDK15 range(0, max_jint)
Expired in
JDK16
Deprecated
in JDK10
MonitorInUseLists OpenJDK6 Obsoleted bool runtime true product Track Monitors for Deflation share/runtime/globals.hpp
in JDK12
Expired in
JDK13
Percentage of used monitors before triggering cleanup
MonitorUsedDeflationThreshold OpenJDK10 intx runtime 90 experimental safepoint which deflates monitors (0 is off). share/runtime/globals.hpp
range(0, 100) The check is performed on GuaranteedSafepointInterval.
MonomorphicArrayCheck OpenJDK6 bool c2 true develop Uncommon-trap array store checks that require full type check share/opto/c2_globals.hpp
6 Maximum number of individual allocations in an inline-expanded
MultiArrayExpandLimit OpenJDK6 intx c2 range(0, max_jint) product multianewarray instruction share/opto/c2_globals.hpp
NMethodSizeLimit OpenJDK6 intx c1 (64*K)*wordSize develop Maximum size of a compiled method. share/c1/c1_globals.hpp
range(0, max_jint)
Percentage (0-100) used to weight the current sample when
NUMAChunkResizeWeight OpenJDK6 uintx runtime 20 product computing exponentially decaying average for share/runtime/globals.hpp
range(0, 100) AdaptiveNUMAChunkSizing
2*M Granularity to use for NUMA interleaving on Windows OS
NUMAInterleaveGranularity OpenJDK6 size_t runtime range(os::vm_allocation_granularity(), product share/runtime/globals.hpp
NOT_LP64(2*G) LP64_ONLY(8192*G))
Obsoleted
NUMAPageScanRate OpenJDK6 in JDK23 uintx runtime 256 product Maximum number of pages to include in the page scan procedure share/runtime/globals.hpp
Expired in range(0, max_uintx)
JDK24
NUMASpaceResizeRate OpenJDK6 size_t runtime 1*G product Do not reallocate more than this amount per collection share/runtime/globals.hpp
range(0, max_uintx)
NUMAStats OpenJDK6 bool runtime false product Print NUMA stats in detailed heap information share/runtime/globals.hpp
NativeMemoryTracking OpenJDK7 ccstr runtime off product Native memory tracking options share/runtime/globals.hpp
NearCpool OpenJDK9 Obsoleted bool aarch64 true product constant pool is close to instructions cpu/aarch64/
in JDK25 globals_aarch64.hpp
Obsoleted
NeedsDeoptSuspend OpenJDK6 in JDK13 bool aarch64 false define_pd_global // only register window machines need this cpu/aarch64/
Expired in globals_aarch64.hpp
JDK14
Obsoleted
NeedsDeoptSuspend OpenJDK6 in JDK13 bool arm false define_pd_global // only register window machines need this cpu/arm/globals_arm.hpp
Expired in
JDK14
Obsoleted
NeedsDeoptSuspend OpenJDK6 in JDK13 bool runtime product_pd True for register window machines (sparc/ia64) share/runtime/globals.hpp
Expired in
JDK14
Obsoleted
NeedsDeoptSuspend OpenJDK6 in JDK13 bool ppc false define_pd_global // Only register window machines need this. cpu/ppc/globals_ppc.hpp
Expired in
JDK14
Obsoleted
NeedsDeoptSuspend OpenJDK6 in JDK13 bool s390 false define_pd_global // Only register window machines need this. cpu/s390/globals_s390.hpp
Expired in
JDK14
Obsoleted
NeedsDeoptSuspend OpenJDK6 in JDK13 bool sparc true define_pd_global // register window machines need this cpu/sparc/globals_sparc.hpp
Expired in
JDK14
Obsoleted
NeedsDeoptSuspend OpenJDK6 in JDK13 bool x86 false define_pd_global // only register window machines need this cpu/x86/globals_x86.hpp
Expired in
JDK14
Obsoleted
NeedsDeoptSuspend OpenJDK6 in JDK13 bool zero false define_pd_global cpu/zero/globals_zero.hpp
Expired in
JDK14
NestedInliningSizeRatio OpenJDK6 intx c1 90 develop Percentage of prev. allowed inline size in recursive inlining share/c1/c1_globals.hpp
range(0, 100)
Deprecated
in JDK26
NeverActAsServerClassMachine OpenJDK6 Obsoleted bool aarch64 true define_pd_global cpu/aarch64/
in JDK27 c1_globals_aarch64.hpp
Expired in
JDK28
Deprecated
in JDK26
NeverActAsServerClassMachine OpenJDK6 Obsoleted bool arm true define_pd_global cpu/arm/c1_globals_arm.hpp
in JDK27
Expired in
JDK28
Deprecated
in JDK26
NeverActAsServerClassMachine OpenJDK6 Obsoleted bool gc product_pd Never act like a server-class machine share/gc/shared/
in JDK27 gc_globals.hpp
Expired in
JDK28
Deprecated
in JDK26
NeverActAsServerClassMachine OpenJDK6 Obsoleted bool runtime true define_pd_global share/runtime/globals.hpp
in JDK27
Expired in
JDK28
Deprecated
in JDK26
NeverActAsServerClassMachine OpenJDK6 Obsoleted bool ppc false define_pd_global cpu/ppc/c2_globals_ppc.hpp
in JDK27
Expired in
JDK28
Deprecated
in JDK26
NeverActAsServerClassMachine OpenJDK6 Obsoleted bool s390 true define_pd_global cpu/s390/
in JDK27 c1_globals_s390.hpp
Expired in
JDK28
Deprecated
in JDK26
NeverActAsServerClassMachine OpenJDK6 Obsoleted bool sparc false define_pd_global cpu/sparc/
in JDK27 c2_globals_sparc.hpp
Expired in
JDK28
Deprecated
in JDK26
NeverActAsServerClassMachine OpenJDK6 Obsoleted bool x86 true define_pd_global cpu/x86/c1_globals_x86.hpp
in JDK27
Expired in
JDK28
Never tenure objects in eden, may tenure on overflow share/gc/shared/
NeverTenure OpenJDK6 bool gc false product (ParallelGC only) gc_globals.hpp
Testing Only: Create a dedicated integer parameter before
NewCodeParameter OpenJDK6 intx runtime 0 develop putback share/runtime/globals.hpp
NewRatio OpenJDK6 uintx gc 2 product Ratio of old/new generation sizes share/gc/shared/
range(0, max_uintx-1) gc_globals.hpp
Obsoleted
NewSizeThreadIncrease OpenJDK6 in JDK27 intx aarch64 4*K define_pd_global cpu/aarch64/
Expired in c1_globals_aarch64.hpp
JDK28
Obsoleted
NewSizeThreadIncrease OpenJDK6 in JDK27 size_t arm 4*K define_pd_global cpu/arm/c1_globals_arm.hpp
Expired in
JDK28
Obsoleted Additional size added to desired new generation size per
NewSizeThreadIncrease OpenJDK6 in JDK27 size_t gc product_pd non-daemon thread (in bytes) share/gc/shared/
Expired in gc_globals.hpp
JDK28
Obsoleted
NewSizeThreadIncrease OpenJDK6 in JDK27 size_t runtime 4*K define_pd_global share/runtime/globals.hpp
Expired in
JDK28
Obsoleted
NewSizeThreadIncrease OpenJDK6 in JDK27 size_t ppc ScaleForWordSize(4*K) define_pd_global cpu/ppc/c2_globals_ppc.hpp
Expired in
JDK28
Obsoleted
NewSizeThreadIncrease OpenJDK6 in JDK27 size_t s390 16*K define_pd_global cpu/s390/
Expired in c1_globals_s390.hpp
JDK28
Obsoleted
NewSizeThreadIncrease OpenJDK6 in JDK27 size_t sparc ScaleForWordSize(4*K) define_pd_global cpu/sparc/
Expired in c2_globals_sparc.hpp
JDK28
Obsoleted
NewSizeThreadIncrease OpenJDK6 in JDK27 size_t x86 4*K define_pd_global cpu/x86/c1_globals_x86.hpp
Expired in
JDK28
NewSize OpenJDK6 size_t gc ScaleForWordSize(1*M) product Initial new generation size (in bytes) share/gc/shared/
gc_globals.hpp
10 Removes cold nmethods from code cache if > 0. Higher values
NmethodSweepActivity OpenJDK8 intx runtime range(0, 2000) product result in more aggressive sweeping share/runtime/globals.hpp
NodeCountInliningCutoff OpenJDK6 intx c2 18000 develop If parser node generation exceeds limit stop inlining share/opto/c2_globals.hpp
range(0, max_jint)
NodeCountInliningStep OpenJDK6 intx c2 1000 develop Target size of warm calls inlined between optimization passes share/opto/c2_globals.hpp
range(0, max_jint)
NodeLimitFudgeFactor OpenJDK6 intx c2 2000 product Fudge Factor for certain optimizations share/opto/c2_globals.hpp
NonNMethodCodeHeapSize OpenJDK9 intx aarch64 5*M define_pd_global cpu/aarch64/
c1_globals_aarch64.hpp
NonNMethodCodeHeapSize OpenJDK9 size_t arm 5*M define_pd_global cpu/arm/c1_globals_arm.hpp
NonNMethodCodeHeapSize OpenJDK9 uintx runtime product_pd Size of code heap with non-nmethods (in bytes) share/runtime/globals.hpp
NonNMethodCodeHeapSize OpenJDK9 uintx ppc 5*M define_pd_global cpu/ppc/c2_globals_ppc.hpp
NonNMethodCodeHeapSize OpenJDK9 uintx s390 5*M define_pd_global cpu/s390/
c1_globals_s390.hpp
NonNMethodCodeHeapSize OpenJDK9 uintx sparc 5*M define_pd_global cpu/sparc/
c2_globals_sparc.hpp
NonNMethodCodeHeapSize OpenJDK9 uintx x86 5*M define_pd_global cpu/x86/c1_globals_x86.hpp
NonProfiledCodeHeapSize OpenJDK9 intx aarch64 13*M define_pd_global cpu/aarch64/
c1_globals_aarch64.hpp
NonProfiledCodeHeapSize OpenJDK9 size_t arm 13*M define_pd_global cpu/arm/c1_globals_arm.hpp
NonProfiledCodeHeapSize OpenJDK9 uintx runtime product_pd Size of code heap with non-profiled methods (in bytes) share/runtime/globals.hpp
NonProfiledCodeHeapSize OpenJDK9 uintx ppc 21*M define_pd_global cpu/ppc/c2_globals_ppc.hpp
NonProfiledCodeHeapSize OpenJDK9 uintx s390 13*M define_pd_global cpu/s390/
c1_globals_s390.hpp
NonProfiledCodeHeapSize OpenJDK9 uintx sparc 21*M define_pd_global cpu/sparc/
c2_globals_sparc.hpp
NonProfiledCodeHeapSize OpenJDK9 uintx x86 13*M define_pd_global cpu/x86/c1_globals_x86.hpp
NumberOfLoopInstrToAlign OpenJDK6 intx c2 4 product Number of first instructions in a loop to align share/opto/c2_globals.hpp
range(0, max_jint)
OSROnlyBCI OpenJDK6 intx runtime -1 develop OSR only at this bci. Negative values mean exclude that bci share/runtime/globals.hpp
Number of object array elements to push onto the marking stack share/gc/shared/
ObjArrayMarkingStride OpenJDK6 uintx gc 2048 develop before pushing a continuation entry gc_globals.hpp
ObjectAlignmentInBytes OpenJDK6 intx runtime 8 lp64_product Default object alignment in bytes, 8 is minimum share/runtime/globals.hpp
range(8, 256)
0.5 The percentage of the used heap that the instances of a class
ObjectCountCutOffPercent OpenJDK7 double runtime range(0.0, 100.0) experimental must occupy for the class to generate a trace event share/runtime/globals.hpp
Size of old gen promotion LAB's (in HeapWords), or Number share/gc/shared/
OldPLABSize OpenJDK6 size_t gc 1024 product of blocks to attempt to claim when refilling CMS LAB's gc_globals.hpp
Obsoleted Percentage (0-100) used to weight the current sample when
OldPLABWeight OpenJDK6 in JDK14 uintx gc 50 product computing exponentially decaying average for resizing share/gc/shared/
Expired in range(0, 100) OldPLABSize gc_globals.hpp
JDK15
Deprecated
in JDK23
OldSize OpenJDK6 Obsoleted size_t gc ScaleForWordSize(4*M) product Initial tenured generation size (in bytes) share/gc/shared/
in JDK24 range(0, max_uintx) gc_globals.hpp
Expired in
JDK25
OmitStackTraceInFastThrow OpenJDK6 bool runtime true product Omit backtraces for some 'hot' exceptions in optimized code share/runtime/globals.hpp
Run user-defined commands on fatal error; see VMError.cpp
OnError OpenJDK6 ccstrlist runtime product for examples share/runtime/globals.hpp
OnOutOfMemoryError OpenJDK6 ccstrlist runtime product Run user-defined commands on first java.lang.OutOfMemoryError share/runtime/globals.hpp
OnStackReplacePercentage OpenJDK6 intx aarch64 933 define_pd_global cpu/aarch64/
c1_globals_aarch64.hpp
OnStackReplacePercentage OpenJDK6 intx arm 933 define_pd_global cpu/arm/c1_globals_arm.hpp
NON_TIERED number of method invocations/branches (expressed as
OnStackReplacePercentage OpenJDK6 intx runtime product_pd % of CompileThreshold) before (re-)compiling OSR code share/runtime/globals.hpp
OnStackReplacePercentage OpenJDK6 intx ppc 140 define_pd_global cpu/ppc/c2_globals_ppc.hpp
OnStackReplacePercentage OpenJDK6 intx s390 1400 define_pd_global cpu/s390/
c1_globals_s390.hpp
OnStackReplacePercentage OpenJDK6 intx sparc 140 define_pd_global cpu/sparc/
c2_globals_sparc.hpp
OnStackReplacePercentage OpenJDK6 intx x86 933 define_pd_global cpu/x86/c1_globals_x86.hpp
OptimizeExpensiveOps OpenJDK7 bool c2 true diagnostic Find best control for expensive operations share/opto/c2_globals.hpp
OptimizeFill OpenJDK6 bool c2 true PPC64_ONLY(&& false) product convert fill/copy loops into intrinsic share/opto/c2_globals.hpp
OptimizeIfOps OpenJDK6 bool c1 true develop Optimize multiple IfOps share/c1/c1_globals.hpp
OptimizePollingPageLocation OpenJDK7 bool aix true product Optimize the location of the polling page used for Safepoints os/aix/globals_aix.hpp
OptimizePtrCompare OpenJDK6 bool c2 true product Use escape analysis to optimize pointers compare share/opto/c2_globals.hpp
OptimizeSinglePrecision OpenJDK6 bool aarch64 true define_pd_global cpu/aarch64/
c1_globals_aarch64.hpp
OptimizeSinglePrecision OpenJDK6 bool arm true define_pd_global cpu/arm/c1_globals_arm.hpp
OptimizeSinglePrecision OpenJDK6 bool ppc false define_pd_global cpu/ppc/c1_globals_ppc.hpp
OptimizeSinglePrecision OpenJDK6 bool s390 false define_pd_global cpu/s390/
c1_globals_s390.hpp
OptimizeSinglePrecision OpenJDK6 bool sparc false define_pd_global cpu/sparc/
c1_globals_sparc.hpp
OptimizeSinglePrecision OpenJDK6 bool x86 true define_pd_global cpu/x86/c1_globals_x86.hpp
OptimizeStringConcat OpenJDK6 bool c2 true product Optimize the construction of Strings by StringBuilder share/opto/c2_globals.hpp
OptimizeUnsafes OpenJDK6 bool c1 true develop Optimize raw unsafe ops share/c1/c1_globals.hpp
OptoBlockListSize OpenJDK6 intx c2 8 develop Starting allocation size of Block_List data structures share/opto/c2_globals.hpp
range(0, max_jint)
OptoBreakpointC2R OpenJDK6 bool c2 false notproduct insert breakpoint at runtime stub entry share/opto/c2_globals.hpp
OptoBreakpointOSR OpenJDK6 bool c2 false notproduct insert breakpoint at osr method entry share/opto/c2_globals.hpp
OptoBreakpoint OpenJDK6 bool c2 false develop insert breakpoint at method entry share/opto/c2_globals.hpp
OptoBundling OpenJDK6 bool aarch64 false define_pd_global cpu/aarch64/
c2_globals_aarch64.hpp
OptoBundling OpenJDK6 bool c2 product_pd Generate nops to fill i-cache lines share/opto/c2_globals.hpp
OptoBundling OpenJDK6 bool ppc false define_pd_global cpu/ppc/c2_globals_ppc.hpp
OptoBundling OpenJDK6 bool s390 false define_pd_global cpu/s390/
c2_globals_s390.hpp
OptoBundling OpenJDK6 bool sparc false define_pd_global cpu/sparc/
c2_globals_sparc.hpp
OptoBundling OpenJDK6 bool x86 false define_pd_global cpu/x86/c2_globals_x86.hpp
OptoCoalesce OpenJDK6 bool c2 true develop Use Conservative Copy Coalescing in the Register Allocator share/opto/c2_globals.hpp
OptoLoopAlignment OpenJDK6 intx aarch64 16 define_pd_global cpu/aarch64/
globals_aarch64.hpp
OptoLoopAlignment OpenJDK6 intx arm 16 define_pd_global cpu/arm/globals_arm.hpp
OptoLoopAlignment OpenJDK6 intx runtime product_pd Align inner loops to zero relative to this modulus share/runtime/globals.hpp
OptoLoopAlignment OpenJDK6 intx ppc 16 define_pd_global cpu/ppc/globals_ppc.hpp
OptoLoopAlignment OpenJDK6 intx s390 2 define_pd_global cpu/s390/globals_s390.hpp
OptoLoopAlignment OpenJDK6 intx sparc 16 define_pd_global // = 4*wordSize cpu/sparc/globals_sparc.hpp
OptoLoopAlignment OpenJDK6 intx x86 16 define_pd_global cpu/x86/globals_x86.hpp
OptoLoopAlignment OpenJDK6 intx zero 16 define_pd_global cpu/zero/globals_zero.hpp
OptoNoExecute OpenJDK6 bool c2 false notproduct Attempt to parse and compile but do not execute generated code share/opto/c2_globals.hpp
OptoNodeListSize OpenJDK6 intx c2 4 develop Starting allocation size of Node_List data structures share/opto/c2_globals.hpp
range(0, max_jint)
OptoPeepholeAt OpenJDK6 intx c2 -1 develop Apply peephole optimizations to this peephole rule share/opto/c2_globals.hpp
OptoPeephole OpenJDK6 bool aarch64 false define_pd_global cpu/aarch64/
c2_globals_aarch64.hpp
OptoPeephole OpenJDK6 bool c2 develop_pd Apply peephole optimizations after register allocation share/opto/c2_globals.hpp
OptoPeephole OpenJDK6 bool ppc false define_pd_global cpu/ppc/c2_globals_ppc.hpp
OptoPeephole OpenJDK6 bool s390 false define_pd_global cpu/s390/
c2_globals_s390.hpp
OptoPeephole OpenJDK6 bool sparc false define_pd_global cpu/sparc/
c2_globals_sparc.hpp
OptoPeephole OpenJDK6 bool x86 true define_pd_global cpu/x86/c2_globals_x86.hpp
0 Insert this many extra nop instructions
OptoPrologueNops OpenJDK6 intx c2 range(0, 128) develop in the prologue of every nmethod share/opto/c2_globals.hpp
OptoRegScheduling OpenJDK9 bool aarch64 false define_pd_global cpu/aarch64/
c2_globals_aarch64.hpp
OptoRegScheduling OpenJDK9 bool c2 product_pd Instruction Scheduling before register allocation for pressure share/opto/c2_globals.hpp
OptoRegScheduling OpenJDK9 bool ppc false define_pd_global cpu/ppc/c2_globals_ppc.hpp
OptoRegScheduling OpenJDK9 bool s390 false define_pd_global cpu/s390/
c2_globals_s390.hpp
OptoRegScheduling OpenJDK9 bool sparc false define_pd_global cpu/sparc/
c2_globals_sparc.hpp
OptoRegScheduling OpenJDK9 bool x86 true define_pd_global cpu/x86/c2_globals_x86.hpp
OptoRemoveUseless OpenJDK6 bool c2 true develop Remove useless nodes after parsing share/opto/c2_globals.hpp
OptoScheduling OpenJDK6 bool aarch64 false define_pd_global cpu/aarch64/
c2_globals_aarch64.hpp
OptoScheduling OpenJDK6 bool c2 product_pd Instruction Scheduling after register allocation share/opto/c2_globals.hpp
OptoScheduling OpenJDK6 bool ppc false define_pd_global cpu/ppc/c2_globals_ppc.hpp
OptoScheduling OpenJDK6 bool s390 false define_pd_global cpu/s390/
c2_globals_s390.hpp
OptoScheduling OpenJDK6 bool sparc true define_pd_global cpu/sparc/
c2_globals_sparc.hpp
OptoScheduling OpenJDK6 bool x86 false define_pd_global cpu/x86/c2_globals_x86.hpp
75 Percentage (0-100) used to weight the current sample when share/gc/shared/
PLABWeight OpenJDK6 uintx gc range(0, 100) product computing exponentially decaying average for ResizePLAB gc_globals.hpp
PSAdaptiveSizePolicyResizeVirtualSpaceAlot OpenJDK6 intx gc -1 develop Resize the virtual spaces of the young or old generations share/gc/shared/
range(-1, 1) gc_globals.hpp
Deprecated
in JDK26
PSChunkLargeArrays OpenJDK6 Obsoleted bool gc true product Process large arrays in chunks share/gc/parallel/
in JDK27 parallel_globals.hpp
Expired in
JDK28
50 Scan a subset of object array and push remainder, if array is share/gc/shared/
ParGCArrayScanChunk OpenJDK6 int gc range(1, max_jint/3) product bigger than this gc_globals.hpp
256 The number of cards in each chunk of the parallel chunks used share/gc/cms/
ParGCCardsPerStrideChunk OpenJDK6 intx gc range(1, max_intx) diagnostic during card table scanning cms_globals.hpp
Obsoleted
ParGCDesiredObjsFromOverflowList OpenJDK6 in JDK14 uintx gc 20 product The desired number of objects to claim from the overflow list share/gc/cms/
Expired in range(0, max_uintx) cms_globals.hpp
JDK15
2 The number of strides per worker thread that we divide up the share/gc/cms/
ParGCStridesPerThread OpenJDK6 uintx gc range(1, max_uintx) diagnostic card table scanning work into cms_globals.hpp
Obsoleted Eagerly trim the local overflow lists
ParGCTrimOverflow OpenJDK6 in JDK14 bool gc true product (when ParGCUseLocalOverflow) share/gc/cms/
Expired in cms_globals.hpp
JDK15
Obsoleted
ParGCUseLocalOverflow OpenJDK6 in JDK14 bool gc false product Instead of a global overflow list, use local overflow stacks share/gc/cms/
Expired in cms_globals.hpp
JDK15
ParGCWorkQueueOverflowALot OpenJDK6 bool gc false notproduct Simulate work queue overflow in ParNew share/gc/cms/
cms_globals.hpp
An `interval' counter that determines how frequently share/gc/cms/
ParGCWorkQueueOverflowInterval OpenJDK6 uintx gc 1000 notproduct we simulate overflow; a smaller number increases frequency cms_globals.hpp
ParallelGCBufferWastePct OpenJDK6 uintx gc 10 product Wasted fraction of parallel allocation buffer share/gc/shared/
range(0, 100) gc_globals.hpp
ParallelGCThreads OpenJDK6 uint gc 0 product Number of parallel threads parallel gc will use share/gc/shared/
gc_globals.hpp
Obsoleted The mean used by the parallel compact dead wood
ParallelOldDeadWoodLimiterMean OpenJDK6 in JDK23 size_t gc 50 product limiter (a number between 0-100) share/gc/parallel/
Expired in range(0, 100) parallel_globals.hpp
JDK24
Obsoleted The standard deviation used by the parallel compact dead wood
ParallelOldDeadWoodLimiterStdDev OpenJDK6 in JDK23 size_t gc 80 product limiter (a number between 0-100) share/gc/parallel/
Expired in range(0, 100) parallel_globals.hpp
JDK24
Deprecated
in JDK26
ParallelRefProcBalancingEnabled OpenJDK6 Obsoleted bool gc true product Enable balancing of reference processing queues share/gc/shared/
in JDK27 gc_globals.hpp
Expired in
JDK28
Deprecated
in JDK26
ParallelRefProcEnabled OpenJDK6 Obsoleted bool gc false product Enable parallel reference processing whenever possible share/gc/shared/
in JDK27 gc_globals.hpp
Expired in
JDK28
PartialPeelAtUnsignedTests OpenJDK6 bool c2 true product Partial peel at unsigned tests if no signed test exists share/opto/c2_globals.hpp
PartialPeelLoop OpenJDK6 bool c2 true product Partial peel (rotate) loops share/opto/c2_globals.hpp
PartialPeelNewPhiDelta OpenJDK6 intx c2 0 product Additional phis that can be created by partial peeling share/opto/c2_globals.hpp
range(0, max_jint)
PatchALot OpenJDK6 bool c1 false develop Marks all fields as having unloaded classes share/c1/c1_globals.hpp
PauseAtExit OpenJDK6 bool runtime false diagnostic Pause and wait for keypress on exit if a debugger is attached share/runtime/globals.hpp
The file to create and for whose removal to await when pausing
PauseAtStartupFile OpenJDK6 ccstr runtime NULL diagnostic at startup. (default: ./vm.paused.) share/runtime/globals.hpp
Causes the VM to pause at startup time and wait for the pause
PauseAtStartup OpenJDK6 bool runtime false diagnostic file to be removed (default: ./vm.paused.) share/runtime/globals.hpp
Obsoleted
PausePadding OpenJDK6 in JDK26 uintx gc 1 product How much buffer to keep for pause time share/gc/shared/
Expired in range(0, max_juint) gc_globals.hpp
JDK27
PerBytecodeRecompilationCutoff OpenJDK6 intx runtime 200 product Per-BCI limit on repeated recompilation (-1=>'Inf') share/runtime/globals.hpp
range(-1, max_intx)
PerBytecodeTrapLimit OpenJDK6 intx runtime 4 product Limit on traps (of one kind) at a particular BCI share/runtime/globals.hpp
range(0, max_jint)
PerMethodRecompilationCutoff OpenJDK6 intx runtime 400 product After recompiling N times, stay in the interpreter (-1=>'Inf') share/runtime/globals.hpp
range(-1, max_intx)
5000 Limit on speculative traps (of one kind) in a method
PerMethodSpecTrapLimit OpenJDK8 intx runtime range(0, max_jint) experimental (includes inlines) share/runtime/globals.hpp
PerMethodTrapLimit OpenJDK6 intx runtime 100 product Limit on traps (of one kind) in a method (includes inlines) share/runtime/globals.hpp
range(0, max_jint)
PerfAllowAtExitRegistration OpenJDK6 bool runtime false product Allow registration of atexit() methods share/runtime/globals.hpp
PerfBypassFileSystemCheck OpenJDK6 bool runtime false product Bypass Win32 file system criteria checks (Windows Only) share/runtime/globals.hpp
32*K Size of performance data memory region. Will be rounded
PerfDataMemorySize OpenJDK6 intx runtime range(128, 32*64*K) product up to a multiple of the native os page size. share/runtime/globals.hpp
Obsoleted 50
PerfDataSamplingInterval OpenJDK6 in JDK25 intx runtime range(PeriodicTask::min_interval, product Data sampling interval (in milliseconds) share/runtime/globals.hpp
Expired in max_jint)
JDK26
Save PerfData memory to the specified absolute pathname.
PerfDataSaveFile OpenJDK6 ccstr runtime NULL product The string %p in the file name (if present) share/runtime/globals.hpp
will be replaced by pid
PerfDataSaveToFile OpenJDK6 bool runtime false product Save PerfData memory to hsperfdata_ file on exit share/runtime/globals.hpp
PerfDisableSharedMem OpenJDK6 bool runtime false product Store performance data in standard memory share/runtime/globals.hpp
PerfMaxStringConstLength OpenJDK6 intx runtime 1024 product Maximum PerfStringConstant string length before truncation share/runtime/globals.hpp
range(32, 32*K)
PinAllInstructions OpenJDK6 bool c1 false develop All instructions are pinned share/c1/c1_globals.hpp
PoisonOSREntry OpenJDK6 bool c2 true develop Detect abnormal calls to OSR code share/opto/c2_globals.hpp
PostLoopMultiversioning OpenJDK9 bool c2 false experimental Multi versioned post loops to eliminate range checks share/opto/c2_globals.hpp
Specify the PowerPC family version in use. If not provided,
PowerArchitecturePPC64 OpenJDK7 uintx ppc 0 product HotSpot will determine it automatically. Host family version cpu/ppc/globals_ppc.hpp
is the maximum value allowed (instructions are not emulated).
PreTouchParallelChunkSize OpenJDK9 size_t gc 1 * G product Per-thread chunk size for parallel memory pre-touch. share/gc/shared/
range(1, SIZE_MAX / 2) gc_globals.hpp
PreallocatedOutOfMemoryErrorCount OpenJDK6 uintx runtime 4 develop Number of OutOfMemoryErrors preallocated with backtrace share/runtime/globals.hpp
Deprecated
in JDK19 Calculate the container CPU availability based on the value
PreferContainerQuotaForCPUCount OpenJDK11 Obsoleted bool linux true product of quotas (if set), when true. Otherwise, use the CPU os/linux/globals_linux.hpp
in JDK20 shares value, provided it is less than quota.
Expired in
JDK21
PreferInterpreterNativeStubs OpenJDK6 bool aarch64 false define_pd_global cpu/aarch64/
c1_globals_aarch64.hpp
PreferInterpreterNativeStubs OpenJDK6 bool arm false define_pd_global cpu/arm/c1_globals_arm.hpp
Use always interpreter stubs for native methods invoked via
PreferInterpreterNativeStubs OpenJDK6 bool runtime product_pd interpreter share/runtime/globals.hpp
PreferInterpreterNativeStubs OpenJDK6 bool ppc false define_pd_global cpu/ppc/c2_globals_ppc.hpp
PreferInterpreterNativeStubs OpenJDK6 bool s390 false define_pd_global cpu/s390/
c1_globals_s390.hpp
PreferInterpreterNativeStubs OpenJDK6 bool sparc false define_pd_global cpu/sparc/
c2_globals_sparc.hpp
PreferInterpreterNativeStubs OpenJDK6 bool x86 false define_pd_global cpu/x86/c1_globals_x86.hpp
PreferLAoverADD OpenJDK9 bool s390 false product Use LA/LAY instructions over ADD instructions (z/Architecture). cpu/s390/globals_s390.hpp
PrefetchCopyIntervalInBytes OpenJDK6 intx gc -1 product How far ahead to prefetch destination area (<= 0 means off) share/gc/shared/
range(-1, max_jint) gc_globals.hpp
Obsoleted
PrefetchFieldsAhead OpenJDK6 in JDK19 intx gc -1 product How many fields ahead to prefetch in oop scan (<= 0 means off) share/gc/shared/
Expired in range(-1, max_jint) gc_globals.hpp
JDK20
PrefetchScanIntervalInBytes OpenJDK6 intx gc -1 product How far ahead to prefetch scan area (<= 0 means off) share/gc/shared/
range(-1, max_jint) gc_globals.hpp
Deprecated
in JDK23 Preserve RuntimeInvisibleAnnotations as well
PreserveAllAnnotations OpenJDK6 Obsoleted bool runtime false product as RuntimeVisibleAnnotations share/runtime/globals.hpp
in JDK24
Expired in
JDK25
PreserveFramePointer OpenJDK8 bool aarch64 false define_pd_global cpu/aarch64/
globals_aarch64.hpp
PreserveFramePointer OpenJDK8 bool arm false define_pd_global cpu/arm/globals_arm.hpp
Use the FP register for holding the frame pointer
PreserveFramePointer OpenJDK8 bool runtime product_pd and not as a general purpose register. share/runtime/globals.hpp
PreserveFramePointer OpenJDK8 bool ppc false define_pd_global cpu/ppc/globals_ppc.hpp
PreserveFramePointer OpenJDK8 bool s390 false define_pd_global cpu/s390/globals_s390.hpp
PreserveFramePointer OpenJDK8 bool sparc false define_pd_global cpu/sparc/globals_sparc.hpp
PreserveFramePointer OpenJDK8 bool x86 false define_pd_global cpu/x86/globals_x86.hpp
PreserveFramePointer OpenJDK8 bool zero false define_pd_global cpu/zero/globals_zero.hpp
Obsoleted Maximum size in bytes of objects allocated in DefNew
PretenureSizeThreshold OpenJDK6 in JDK26 size_t gc 0 product generation; zero means no maximum share/gc/shared/
Expired in range(0, max_uintx) gc_globals.hpp
JDK27
PrintAOTStatistics OpenJDK9 bool runtime false notproduct Print AOT statistics share/runtime/globals.hpp
PrintAOT OpenJDK9 bool runtime false experimental Print used AOT klasses and methods share/runtime/globals.hpp
PrintAdapterHandlers OpenJDK6 bool runtime false diagnostic Print code generated for i2c/c2i adapters share/runtime/globals.hpp
PrintAssemblyOptions OpenJDK6 ccstr runtime NULL diagnostic Print options string passed to disassembler.so share/runtime/globals.hpp
PrintAssembly OpenJDK6 bool runtime false diagnostic Print assembly code (using external disassembler.so) share/runtime/globals.hpp
PrintBailouts OpenJDK6 bool c1 false develop Print bailout and its reason share/c1/c1_globals.hpp
Deprecated
in JDK15
PrintBiasedLockingStatistics OpenJDK6 Obsoleted bool runtime false diagnostic Print statistics of biased locking in JVM share/runtime/globals.hpp
in JDK18
Expired in
JDK19
PrintBlockElimination OpenJDK6 bool c1 false develop Print basic block elimination share/c1/c1_globals.hpp
PrintBootstrap OpenJDK9 bool jvmci true experimental Print JVMCI bootstrap progress and summary share/jvmci/
jvmci_globals.hpp
PrintBytecodeHistogram OpenJDK6 bool runtime false develop Print histogram of the executed bytecodes share/runtime/globals.hpp
PrintBytecodePairHistogram OpenJDK6 bool runtime false develop Print histogram of the executed bytecode pairs share/runtime/globals.hpp
PrintC1Statistics OpenJDK6 bool c1 false notproduct Print Compiler1 statistics share/c1/c1_globals.hpp
PrintCEE OpenJDK6 bool c1 false develop Print Conditional Expression Elimination share/c1/c1_globals.hpp
PrintCFG0 OpenJDK6 bool c1 false notproduct Print control flow graph after construction share/c1/c1_globals.hpp
PrintCFG1 OpenJDK6 bool c1 false notproduct Print control flow graph after optimizations share/c1/c1_globals.hpp
PrintCFG2 OpenJDK6 bool c1 false notproduct Print control flow graph before code generation share/c1/c1_globals.hpp
PrintCFGBlockFreq OpenJDK6 bool c2 false develop Print CFG block freqencies share/opto/c2_globals.hpp
PrintCFGToFile OpenJDK6 bool c1 false develop print control flow graph to a separate file during compilation share/c1/c1_globals.hpp
PrintCFG OpenJDK6 bool c1 false notproduct Print control flow graph after each change share/c1/c1_globals.hpp
PrintCanonicalization OpenJDK6 bool c1 false develop Print graph node canonicalization share/c1/c1_globals.hpp
PrintClassHistogram OpenJDK6 bool runtime false manageable Print a histogram of class instances share/runtime/globals.hpp
PrintCodeCache2 OpenJDK6 bool runtime false develop Print detailed usage information on the code cache when exiting share/runtime/globals.hpp
PrintCodeCacheExtension OpenJDK6 bool runtime false develop Print extension of code cache share/runtime/globals.hpp
Print the code cache memory usage each time a method is
PrintCodeCacheOnCompilation OpenJDK8 bool runtime false product compiled share/runtime/globals.hpp
PrintCodeCache OpenJDK6 bool runtime false product Print the code cache memory usage when exiting share/runtime/globals.hpp
PrintCommandLineFlags OpenJDK6 bool runtime false product Print flags specified on command line or set by ergonomics share/runtime/globals.hpp
PrintCompilation2 OpenJDK6 bool runtime false diagnostic Print additional statistics per compilation share/runtime/globals.hpp
PrintCompilation OpenJDK6 bool runtime false product Print compilations share/runtime/globals.hpp
PrintConcurrentLocks OpenJDK6 bool runtime false manageable Print java.util.concurrent locks in thread dump share/runtime/globals.hpp
PrintDebugInfo OpenJDK6 bool runtime false develop Print debug information for all nmethods when generated share/runtime/globals.hpp
PrintDeoptimizationDetails OpenJDK9 bool runtime false develop Print more information about deoptimization share/runtime/globals.hpp
PrintDependencies OpenJDK6 bool runtime false develop Print dependency information for all nmethods when generated share/runtime/globals.hpp
PrintDominators OpenJDK6 bool c2 false develop Print out dominator trees for GVN share/opto/c2_globals.hpp
PrintEliminateAllocations OpenJDK6 bool c2 false notproduct Print out when allocations are eliminated share/opto/c2_globals.hpp
PrintEliminateLocks OpenJDK6 bool c2 false notproduct Print out when locks are eliminated share/opto/c2_globals.hpp
PrintEscapeAnalysis OpenJDK6 bool c2 false notproduct Print the results of escape analysis share/opto/c2_globals.hpp
PrintExceptionHandlers OpenJDK6 bool runtime false develop Print exception handler tables for all nmethods when generated share/runtime/globals.hpp
PrintExtendedThreadInfo OpenJDK11 bool runtime false product Print more information in thread dump share/runtime/globals.hpp
PrintFieldLayout OpenJDK8 bool runtime false notproduct Print field layout for each class share/runtime/globals.hpp
PrintFlagsFinal OpenJDK6 bool runtime false product Print all VM flags after argument and ergonomic processing share/runtime/globals.hpp
PrintFlagsInitial OpenJDK6 bool runtime false product Print all VM flags before argument processing and exit VM share/runtime/globals.hpp
PrintFlagsRanges OpenJDK9 bool runtime false product Print VM flags and their ranges and exit VM share/runtime/globals.hpp
Print all VM flags with default values and descriptions and
PrintFlagsWithComments OpenJDK6 bool runtime false notproduct exit share/runtime/globals.hpp
PrintFrameConverterAssembly OpenJDK6 bool c2 false notproduct Print New compiler assembly output for frame converters share/opto/c2_globals.hpp
Print more details at garbage collection. share/gc/shared/
PrintGCDetails OpenJDK6 bool gc false product Deprecated, use -Xlog:gc* instead. gc_globals.hpp
Print message at garbage collection. share/gc/shared/
PrintGC OpenJDK6 bool gc false product Deprecated, use -Xlog:gc instead. gc_globals.hpp
PrintHeapAtSIGBREAK OpenJDK6 bool runtime true product Print heap layout in response to SIGBREAK share/runtime/globals.hpp
PrintIR0 OpenJDK6 bool c1 false notproduct Print full intermediate representation after construction share/c1/c1_globals.hpp
PrintIR1 OpenJDK6 bool c1 false notproduct Print full intermediate representation after optimizations share/c1/c1_globals.hpp
PrintIR2 OpenJDK6 bool c1 false notproduct Print full intermediate representation before code generation share/c1/c1_globals.hpp
PrintIRDuringConstruction OpenJDK6 bool c1 false notproduct Print IR as it's being constructed (helpful for debugging frontend) share/c1/c1_globals.hpp
PrintIRWithLIR OpenJDK6 bool c1 false notproduct Print IR instructions with generated LIR share/c1/c1_globals.hpp
PrintIR OpenJDK6 bool c1 false notproduct Print full intermediate representation after each change share/c1/c1_globals.hpp
PrintIdealGraphAddress OpenJDK6 ccstr c2 127.0.0.1 notproduct IP address to connect to visualizer share/opto/c2_globals.hpp
File to dump ideal graph to. If set overrides the
PrintIdealGraphFile OpenJDK6 ccstr c2 NULL notproduct use of the network share/opto/c2_globals.hpp
Level of detail of the ideal graph printout.
System-wide value, -1=printing is disabled,
0 0=print nothing except IGVPrintLevel directives,
PrintIdealGraphLevel OpenJDK6 intx c2 range(-1, 4) notproduct share/opto/c2_globals.hpp
4=all details printed.
Level of detail of printouts can be set on a per-method level
as well by using CompileCommand=option.
PrintIdealGraphPort OpenJDK6 intx c2 4444 notproduct Ideal graph printer to network port share/opto/c2_globals.hpp
range(0, SHRT_MAX)
Print ideal graph to XML file / network interface.
PrintIdealGraph OpenJDK9 bool c2 false notproduct By default attempts to connect to the visualizer on a socket. share/opto/c2_globals.hpp
PrintIdealNodeCount OpenJDK7 bool c2 false notproduct Print liveness counts of ideal nodes share/opto/c2_globals.hpp
PrintIdeal OpenJDK6 bool c2 false notproduct Print ideal graph before code generation share/opto/c2_globals.hpp
PrintInitialBlockList OpenJDK6 bool c1 false notproduct Print block list of BlockListBuilder share/c1/c1_globals.hpp
PrintInlining OpenJDK6 bool runtime false diagnostic Print inlining optimizations share/runtime/globals.hpp
PrintInterpreter OpenJDK6 bool runtime false diagnostic Print the generated interpreter code share/runtime/globals.hpp
PrintIntrinsics OpenJDK6 bool c2 false diagnostic prints attempted and successful inlining of intrinsics share/opto/c2_globals.hpp
Obsoleted
PrintJNIResolving OpenJDK6 in JDK16 bool runtime false product Used to implement -v:jni share/runtime/globals.hpp
Expired in
JDK17
PrintLIRWithAssembly OpenJDK6 bool c1 false notproduct Show LIR instruction with generated assembly share/c1/c1_globals.hpp
PrintLIR OpenJDK6 bool c1 false develop print low-level IR share/c1/c1_globals.hpp
PrintLockStatistics OpenJDK6 bool c2 false notproduct Print precise statistics on the dynamic lock usage share/opto/c2_globals.hpp
PrintMallocStatistics OpenJDK6 bool runtime false develop Print malloc/free statistics share/runtime/globals.hpp
PrintMetaspaceStatisticsAtExit OpenJDK11 bool runtime false diagnostic Print metaspace statistics upon VM exit. share/runtime/globals.hpp
PrintMethodData OpenJDK6 bool runtime false diagnostic Print the results of +ProfileInterpreter at end of run share/runtime/globals.hpp
PrintMethodFlushingStatistics OpenJDK8 bool runtime false diagnostic print statistics about method flushing share/runtime/globals.hpp
PrintMethodFlushing OpenJDK6 bool runtime false develop Print the nmethods being flushed share/runtime/globals.hpp
PrintMethodHandleStubs OpenJDK6 bool runtime false diagnostic Print generated stub code for method handles share/runtime/globals.hpp
PrintMiscellaneous OpenJDK6 bool runtime false develop Print uncategorized debugging information (requires +Verbose) share/runtime/globals.hpp
PrintNMTStatistics OpenJDK7 bool runtime false diagnostic Print native memory tracking summary data if it is on share/runtime/globals.hpp
PrintNMethodStatistics OpenJDK9 bool runtime false notproduct Print a summary statistic for the generated nmethods share/runtime/globals.hpp
PrintNMethods OpenJDK6 bool runtime false diagnostic Print assembly code for nmethods when generated share/runtime/globals.hpp
PrintNativeNMethods OpenJDK6 bool runtime false diagnostic Print assembly code for native nmethods when generated share/runtime/globals.hpp
PrintNotLoaded OpenJDK6 bool c1 false develop Prints where classes are not loaded during code generation share/c1/c1_globals.hpp
PrintNullCheckElimination OpenJDK6 bool c1 false develop Print null check elimination share/c1/c1_globals.hpp
PrintOptimizePtrCompare OpenJDK6 bool c2 false notproduct Print information about optimized pointers compare share/opto/c2_globals.hpp
PrintOptimizeStringConcat OpenJDK6 bool c2 false notproduct Print information about transformations performed on Strings share/opto/c2_globals.hpp
PrintOptoAssembly OpenJDK6 bool c2 false diagnostic Print New compiler assembly output share/opto/c2_globals.hpp
PrintOptoInlining OpenJDK6 bool c2 false notproduct Print compiler2 inlining decisions share/opto/c2_globals.hpp
PrintOptoPeephole OpenJDK6 bool c2 false notproduct Print New compiler peephole replacements share/opto/c2_globals.hpp
PrintOptoStatistics OpenJDK6 bool c2 false notproduct Print New compiler statistics share/opto/c2_globals.hpp
PrintOpto OpenJDK6 bool c2 false notproduct Print compiler2 attempts share/opto/c2_globals.hpp
PrintParseStatistics OpenJDK6 bool c2 false notproduct Print nodes, transforms and new values made per bytecode parsed share/opto/c2_globals.hpp
PrintPhiFunctions OpenJDK6 bool c1 false notproduct Print phi functions when they are created and simplified share/c1/c1_globals.hpp
Deprecated
in JDK15
PrintPreciseBiasedLockingStatistics OpenJDK6 Obsoleted bool c2 false diagnostic Print per-lock-site statistics of biased locking in JVM share/opto/c2_globals.hpp
in JDK18
Expired in
JDK19
PrintPreciseRTMLockingStatistics OpenJDK8 bool c2 false diagnostic Print per-lock-site statistics of rtm locking in JVM share/opto/c2_globals.hpp
PrintRelocations OpenJDK6 bool runtime false develop Print relocation information for all nmethods when generated share/runtime/globals.hpp
PrintRewrites OpenJDK6 bool runtime false notproduct Print methods that are being rewritten share/runtime/globals.hpp
Deprecated
in JDK11 (Deprecated) Total number of safepoint statistics collected
PrintSafepointStatisticsCount OpenJDK6 Obsoleted intx runtime 300 product before printing them out share/runtime/globals.hpp
in JDK12 range(1, max_intx)
Expired in
JDK13
Deprecated
in JDK11 (Deprecated) Print safepoint statistics only when safepoint takes
PrintSafepointStatisticsTimeout OpenJDK6 Obsoleted intx runtime -1 product more than PrintSafepointSatisticsTimeout in millis share/runtime/globals.hpp
in JDK12
Expired in
JDK13
Deprecated
in JDK11
PrintSafepointStatistics OpenJDK6 Obsoleted bool runtime false product (Deprecated) Print statistics about safepoint synchronization share/runtime/globals.hpp
in JDK12
Expired in
JDK13
PrintSharedArchiveAndExit OpenJDK8 bool runtime false product Print shared archive file contents share/runtime/globals.hpp
Obsoleted If PrintSharedArchiveAndExit is true, also print the shared
PrintSharedDictionary OpenJDK8 in JDK20 bool runtime false product dictionary share/runtime/globals.hpp
Expired in
JDK21
PrintSignatureHandlers OpenJDK6 bool runtime false diagnostic Print code generated for native method signature handlers share/runtime/globals.hpp
PrintSimpleStubs OpenJDK6 bool c1 false notproduct Print SimpleStubs share/c1/c1_globals.hpp
PrintStringTableStatistics OpenJDK6 bool runtime false product print statistics about the StringTable and SymbolTable share/runtime/globals.hpp
PrintStubCode OpenJDK6 bool runtime false diagnostic Print generated stub code share/runtime/globals.hpp
PrintSymbolTableSizeHistogram OpenJDK6 bool runtime false notproduct print histogram of the symbol table share/runtime/globals.hpp
PrintSystemDictionaryAtExit OpenJDK6 bool runtime false notproduct Print the system dictionary at exit share/runtime/globals.hpp
PrintTieredEvents OpenJDK6 bool runtime false product Print tiered events notifications share/runtime/globals.hpp
PrintTouchedMethodsAtExit OpenJDK9 bool runtime false diagnostic Print all methods that have been ever touched in runtime share/runtime/globals.hpp
PrintUnsafeOptimization OpenJDK6 bool c1 false develop Print optimization of raw unsafe ops share/c1/c1_globals.hpp
PrintVMMessages OpenJDK6 bool runtime true develop Print VM messages on console share/runtime/globals.hpp
PrintVMOptions OpenJDK6 bool runtime false product Print flags that appeared on the command line share/runtime/globals.hpp
Deprecated
in JDK15
PrintVMQWaitTime OpenJDK6 Obsoleted bool runtime false product Print out the waiting time in VM operation queue share/runtime/globals.hpp
in JDK16
Expired in
JDK17
PrintValueNumbering OpenJDK6 bool c1 false develop Print Value Numbering share/c1/c1_globals.hpp
PrintVtableStats OpenJDK6 bool runtime false notproduct print vtables stats at end of run share/runtime/globals.hpp
PrintWarnings OpenJDK6 bool runtime true product Print JVM warnings to output stream share/runtime/globals.hpp
Obsoleted
ProcessDistributionStride OpenJDK6 in JDK23 uintx runtime 4 product Stride through processors when distributing processes share/runtime/globals.hpp
Expired in range(0, max_juint)
JDK24
ProfileDynamicTypes OpenJDK6 bool c2 true diagnostic do extra type profiling and use it more aggressively share/opto/c2_globals.hpp
ProfileInterpreter OpenJDK6 bool aarch64 false define_pd_global cpu/aarch64/
c1_globals_aarch64.hpp
ProfileInterpreter OpenJDK6 bool arm false define_pd_global cpu/arm/c1_globals_arm.hpp
ProfileInterpreter OpenJDK6 bool runtime product_pd Profile at the bytecode level during interpretation share/runtime/globals.hpp
ProfileInterpreter OpenJDK6 bool ppc true define_pd_global cpu/ppc/c2_globals_ppc.hpp
ProfileInterpreter OpenJDK6 bool s390 false define_pd_global cpu/s390/
c1_globals_s390.hpp
ProfileInterpreter OpenJDK6 bool sparc true define_pd_global cpu/sparc/
c2_globals_sparc.hpp
ProfileInterpreter OpenJDK6 bool x86 false define_pd_global cpu/x86/c1_globals_x86.hpp
Obsoleted Number of ticks between printing of interval profile
ProfileIntervalsTicks OpenJDK6 in JDK13 intx runtime 100 product (+ProfileIntervals) share/runtime/globals.hpp
Expired in range(0, max_intx)
JDK14
Obsoleted
ProfileIntervals OpenJDK6 in JDK13 bool runtime false product Print profiles for each interval (see ProfileIntervalsTicks) share/runtime/globals.hpp
Expired in
JDK14
20 number of method invocations/branches (expressed as % of
ProfileMaturityPercentage OpenJDK6 intx runtime range(0, 100) product CompileThreshold) before using the method's profile share/runtime/globals.hpp
ProfileTraps OpenJDK6 bool aarch64 false define_pd_global cpu/aarch64/
c1_globals_aarch64.hpp
ProfileTraps OpenJDK6 bool arm false define_pd_global cpu/arm/c1_globals_arm.hpp
ProfileTraps OpenJDK6 bool runtime develop_pd Profile deoptimization traps at the bytecode level share/runtime/globals.hpp
ProfileTraps OpenJDK6 bool ppc true define_pd_global cpu/ppc/c2_globals_ppc.hpp
ProfileTraps OpenJDK6 bool s390 false define_pd_global cpu/s390/
c1_globals_s390.hpp
ProfileTraps OpenJDK6 bool sparc true define_pd_global cpu/sparc/
c2_globals_sparc.hpp
ProfileTraps OpenJDK6 bool x86 false define_pd_global cpu/x86/c1_globals_x86.hpp
Obsoleted Profile ticks that fall within VM (either in the VM Thread
ProfileVM OpenJDK6 in JDK13 bool runtime false product or VM code called through stubs) share/runtime/globals.hpp
Expired in
JDK14
ProfiledCodeHeapSize OpenJDK9 intx aarch64 14*M define_pd_global cpu/aarch64/
c1_globals_aarch64.hpp
ProfiledCodeHeapSize OpenJDK9 size_t arm 14*M define_pd_global cpu/arm/c1_globals_arm.hpp
ProfiledCodeHeapSize OpenJDK9 uintx runtime product_pd Size of code heap with profiled methods (in bytes) share/runtime/globals.hpp
ProfiledCodeHeapSize OpenJDK9 uintx ppc 22*M define_pd_global cpu/ppc/c2_globals_ppc.hpp
ProfiledCodeHeapSize OpenJDK9 uintx s390 14*M define_pd_global cpu/s390/
c1_globals_s390.hpp
ProfiledCodeHeapSize OpenJDK9 uintx sparc 22*M define_pd_global cpu/sparc/
c2_globals_sparc.hpp
ProfiledCodeHeapSize OpenJDK9 uintx x86 14*M define_pd_global cpu/x86/c1_globals_x86.hpp
Obsoleted
ProfilerCheckIntervals OpenJDK6 in JDK13 bool runtime false notproduct Collect and print information on spacing of profiler ticks share/runtime/globals.hpp
Expired in
JDK14
ProfilerNodeSize OpenJDK6 intx runtime 1024 develop Size in K to allocate for the Profile Nodes of each thread share/runtime/globals.hpp
range(0, 1024)
Obsoleted
ProfilerNumberOfCompiledMethods OpenJDK6 in JDK13 intx runtime 25 diagnostic Number of compiled methods to show in profile share/runtime/globals.hpp
Expired in
JDK14
Obsoleted
ProfilerNumberOfInterpretedMethods OpenJDK6 in JDK13 intx runtime 25 diagnostic Number of interpreted methods to show in profile share/runtime/globals.hpp
Expired in
JDK14
Obsoleted
ProfilerNumberOfRuntimeStubNodes OpenJDK6 in JDK13 intx runtime 25 diagnostic Number of runtime stub nodes to show in profile share/runtime/globals.hpp
Expired in
JDK14
Obsoleted
ProfilerNumberOfStubMethods OpenJDK6 in JDK13 intx runtime 25 diagnostic Number of stub methods to show in profile share/runtime/globals.hpp
Expired in
JDK14
ProfilerPCTickThreshold OpenJDK6 intx runtime 15 develop Number of ticks in a PC buckets to be a hotspot share/runtime/globals.hpp
Obsoleted
ProfilerPrintByteCodeStatistics OpenJDK6 in JDK13 bool runtime false product Print bytecode statistics when dumping profiler output share/runtime/globals.hpp
Expired in
JDK14
Obsoleted
ProfilerRecordPC OpenJDK6 in JDK13 bool runtime false product Collect ticks for each 16 byte interval of compiled code share/runtime/globals.hpp
Expired in
JDK14
PromotedPadding OpenJDK6 uintx gc 3 product How much buffer to keep for promotion failure share/gc/shared/
range(0, max_juint) gc_globals.hpp
Number of promotion failures occurring at PLAB
PromotionFailureALotCount OpenJDK6 uintx gc 1000 develop refill attempts (ParNew) or promotion attempts share/gc/shared/
(other young collectors) gc_globals.hpp
PromotionFailureALotInterval OpenJDK6 uintx gc 5 develop Total collections between promotion failures a lot share/gc/shared/
gc_globals.hpp
Use promotion failure handling on every youngest generation share/gc/shared/
PromotionFailureALot OpenJDK6 bool gc false notproduct collection gc_globals.hpp
ProtectionDomainVerification OpenJDK6 bool runtime true develop Verify protection domain before resolution in system dictionary share/runtime/globals.hpp
0 Number of times an allocation that queues behind a GC share/gc/shared/
QueuedAllocationWarningCount OpenJDK6 uintx gc range(0, max_uintx) product will retry before printing a warning gc_globals.hpp
RTMAbortRatio OpenJDK8 int ppc 50 experimental Lock abort ratio at which to stop use RTM lock eliding cpu/ppc/globals_ppc.hpp
range(0, 100) /* natural range */
RTMAbortRatio OpenJDK8 int x86 50 experimental Lock abort ratio at which to stop use RTM lock eliding cpu/x86/globals_x86.hpp
range(0, 100) /* natural range */
RTMAbortThreshold OpenJDK8 int ppc 1000 experimental Calculate abort ratio after this number of aborts cpu/ppc/globals_ppc.hpp
range(0, max_jint)
RTMAbortThreshold OpenJDK8 int x86 1000 experimental Calculate abort ratio after this number of aborts cpu/x86/globals_x86.hpp
range(0, max_jint)
Number of milliseconds to wait before start calculating aborts
RTMLockingCalculationDelay OpenJDK8 intx ppc 0 experimental for RTM locking cpu/ppc/globals_ppc.hpp
Number of milliseconds to wait before start calculating aborts
RTMLockingCalculationDelay OpenJDK8 intx x86 0 experimental for RTM locking cpu/x86/globals_x86.hpp
10000 Lock count at which to do RTM lock eliding without
RTMLockingThreshold OpenJDK8 int ppc range(0, max_jint) experimental abort ratio calculation cpu/ppc/globals_ppc.hpp
10000 Lock count at which to do RTM lock eliding without
RTMLockingThreshold OpenJDK8 int x86 range(0, max_jint) experimental abort ratio calculation cpu/x86/globals_x86.hpp
Deprecated
in JDK23
RTMRetryCount OpenJDK8 Obsoleted int ppc 5 product Number of RTM retries on lock abort or busy cpu/ppc/globals_ppc.hpp
in JDK24 range(0, max_jint)
Expired in
JDK25
Deprecated
in JDK23
RTMRetryCount OpenJDK8 Obsoleted int x86 5 product Number of RTM retries on lock abort or busy cpu/x86/globals_x86.hpp
in JDK24 range(0, max_jint)
Expired in
JDK25
100 Spin count for lock to become free before RTM retry
RTMSpinLoopCount OpenJDK8 int ppc range(0, 32767) /* immediate operand experimental cpu/ppc/globals_ppc.hpp
limit on ppc */
RTMSpinLoopCount OpenJDK8 int x86 100 experimental Spin count for lock to become free before RTM retry cpu/x86/globals_x86.hpp
range(0, max_jint)
64 Increment total RTM attempted lock count once every n times
RTMTotalCountIncrRate OpenJDK8 int ppc range(1, 32767) /* immediate operand experimental cpu/ppc/globals_ppc.hpp
limit on ppc */
RTMTotalCountIncrRate OpenJDK8 int x86 64 experimental Increment total RTM attempted lock count once every n times cpu/x86/globals_x86.hpp
range(1, max_jint)
RangeCheckElimination OpenJDK6 bool runtime true product Eliminate range checks share/runtime/globals.hpp
ReassociateInvariants OpenJDK6 bool c2 true product Enable reassociation of expressions with loop invariants. share/opto/c2_globals.hpp
ReduceBulkZeroing OpenJDK6 bool c2 true product When bulk-initializing, try to avoid needless zeroing share/opto/c2_globals.hpp
ReduceFieldZeroing OpenJDK6 bool c2 true product When initializing fields, try to avoid needless zeroing share/opto/c2_globals.hpp
ReduceInitialCardMarks OpenJDK6 bool c2 true product When initializing fields, try to avoid needless card marks share/opto/c2_globals.hpp
Reduce the number of parallel compiler threads when they
ReduceNumberOfCompilerThreads OpenJDK11 bool runtime true diagnostic are not used share/runtime/globals.hpp
ReduceSignalUsage OpenJDK6 bool runtime false product Reduce the use of OS signals in Java and/or the VM share/runtime/globals.hpp
Obsoleted 0 Select type of reference discovery policy:
RefDiscoveryPolicy OpenJDK6 in JDK21 intx gc range product reference-based(0) or referent-based(1) share/gc/shared/
Expired in (ReferenceProcessor::DiscoveryPolicyMin, gc_globals.hpp
JDK24
Ergonomically start one thread for this amount of
references for reference processing if share/gc/shared/
ReferencesPerThread OpenJDK11 size_t gc 1000 experimental ParallelRefProcEnabled is true. Specify 0 to disable and gc_globals.hpp
use all threads.
RegisterCostAreaRatio OpenJDK6 intx aarch64 16000 define_pd_global cpu/aarch64/
c2_globals_aarch64.hpp
Spill selection in reg allocator: scale area by (X/64K) before
RegisterCostAreaRatio OpenJDK6 intx c2 develop_pd adding cost share/opto/c2_globals.hpp
RegisterCostAreaRatio OpenJDK6 intx ppc 16000 define_pd_global cpu/ppc/c2_globals_ppc.hpp
RegisterCostAreaRatio OpenJDK6 intx s390 12000 define_pd_global cpu/s390/
c2_globals_s390.hpp
RegisterCostAreaRatio OpenJDK6 intx sparc 12000 define_pd_global cpu/sparc/
c2_globals_sparc.hpp
RegisterCostAreaRatio OpenJDK6 intx x86 16000 define_pd_global cpu/x86/c2_globals_x86.hpp
Deprecated
in JDK22 Register finalizable objects at end of Object. or
RegisterFinalizersAtInit OpenJDK6 Obsoleted bool runtime true product after allocation share/runtime/globals.hpp
in JDK23
Expired in
JDK24
Tell whether the VM should register soft/weak/final/phantom
RegisterReferences OpenJDK6 bool runtime true develop references share/runtime/globals.hpp
RelaxAccessControlCheck OpenJDK6 bool runtime false product Relax the access control checks in the verifier share/runtime/globals.hpp
RenumberLiveNodes OpenJDK8 bool c2 true develop Renumber live nodes share/opto/c2_globals.hpp
ReoptimizeCallSequences OpenJDK7 bool ppc true product Reoptimize code-sequences of calls at runtime. cpu/ppc/globals_ppc.hpp
ReoptimizeCallSequences OpenJDK7 bool s390 true product Reoptimize code-sequences of calls at runtime. cpu/s390/globals_s390.hpp
ReplayCompiles OpenJDK8 bool runtime false develop Enable replay of compilations from ReplayDataFile share/runtime/globals.hpp
File containing compilation replay information
ReplayDataFile OpenJDK8 ccstr runtime NULL product [default: ./replay_pid%p.log] (%p replaced with pid) share/runtime/globals.hpp
ReplayIgnoreInitErrors OpenJDK8 bool runtime false develop Ignore exceptions thrown during initialization for replay share/runtime/globals.hpp
Control handling of class initialization during replay:
0 - don't do anything special;
2 1 - treat all class initializers as empty;
ReplaySuppressInitializers OpenJDK8 intx runtime range(0, 3) develop share/runtime/globals.hpp
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
Deprecated
RequireSharedSpaces OpenJDK6 in JDK18 bool runtime false product Require shared spaces for metadata share/runtime/globals.hpp
Obsoleted
in JDK19
ReservedCodeCacheSize OpenJDK6 intx aarch64 32*M define_pd_global cpu/aarch64/
c1_globals_aarch64.hpp
ReservedCodeCacheSize OpenJDK6 size_t arm 32*M define_pd_global cpu/arm/c1_globals_arm.hpp
ReservedCodeCacheSize OpenJDK6 uintx runtime product_pd Reserved code cache size (in bytes) - maximum code cache size share/runtime/globals.hpp
ReservedCodeCacheSize OpenJDK6 uintx ppc 48*M define_pd_global cpu/ppc/c2_globals_ppc.hpp
ReservedCodeCacheSize OpenJDK6 uintx s390 32*M define_pd_global cpu/s390/
c1_globals_s390.hpp
ReservedCodeCacheSize OpenJDK6 uintx sparc 48*M define_pd_global cpu/sparc/
c2_globals_sparc.hpp
ReservedCodeCacheSize OpenJDK6 uintx x86 32*M define_pd_global cpu/x86/c1_globals_x86.hpp
Obsoleted
ResizeOldPLAB OpenJDK6 in JDK14 bool gc true product Dynamically resize (old gen) promotion LAB's share/gc/shared/
Expired in gc_globals.hpp
JDK15
ResizePLAB OpenJDK6 bool gc true product Dynamically resize (survivor space) promotion LAB's share/gc/shared/
gc_globals.hpp
ResizeTLAB OpenJDK6 bool aarch64 true define_pd_global cpu/aarch64/
c1_globals_aarch64.hpp
ResizeTLAB OpenJDK6 bool arm true define_pd_global cpu/arm/c1_globals_arm.hpp
ResizeTLAB OpenJDK6 bool gc product_pd Dynamically resize TLAB size for threads share/gc/shared/
gc_globals.hpp
ResizeTLAB OpenJDK6 bool runtime false define_pd_global share/runtime/globals.hpp
ResizeTLAB OpenJDK6 bool ppc true define_pd_global cpu/ppc/c2_globals_ppc.hpp
ResizeTLAB OpenJDK6 bool s390 true define_pd_global cpu/s390/
c1_globals_s390.hpp
ResizeTLAB OpenJDK6 bool sparc true define_pd_global cpu/sparc/
c2_globals_sparc.hpp
ResizeTLAB OpenJDK6 bool x86 true define_pd_global cpu/x86/c1_globals_x86.hpp
RestoreMXCSROnJNICalls OpenJDK6 bool runtime false product Restore MXCSR when returning from JNI calls share/runtime/globals.hpp
RestrictContended OpenJDK8 bool runtime true product Restrict @Contended to trusted classes share/runtime/globals.hpp
RestrictReservedStack OpenJDK9 bool runtime true product Restrict @ReservedStackAccess to trusted classes share/runtime/globals.hpp
RewriteBytecodes OpenJDK6 bool aarch64 true define_pd_global cpu/aarch64/
globals_aarch64.hpp
RewriteBytecodes OpenJDK6 bool arm true define_pd_global cpu/arm/globals_arm.hpp
RewriteBytecodes OpenJDK6 bool runtime product_pd Allow rewriting of bytecodes (bytecodes are not immutable) share/runtime/globals.hpp
RewriteBytecodes OpenJDK6 bool ppc true define_pd_global cpu/ppc/globals_ppc.hpp
RewriteBytecodes OpenJDK6 bool s390 true define_pd_global cpu/s390/globals_s390.hpp
RewriteBytecodes OpenJDK6 bool sparc true define_pd_global cpu/sparc/globals_sparc.hpp
RewriteBytecodes OpenJDK6 bool x86 true define_pd_global cpu/x86/globals_x86.hpp
RewriteBytecodes OpenJDK6 bool zero true define_pd_global cpu/zero/globals_zero.hpp
RewriteFrequentPairs OpenJDK6 bool aarch64 true define_pd_global cpu/aarch64/
globals_aarch64.hpp
RewriteFrequentPairs OpenJDK6 bool arm true define_pd_global cpu/arm/globals_arm.hpp
RewriteFrequentPairs OpenJDK6 bool runtime product_pd Rewrite frequently used bytecode pairs into a single bytecode share/runtime/globals.hpp
RewriteFrequentPairs OpenJDK6 bool ppc true define_pd_global cpu/ppc/globals_ppc.hpp
RewriteFrequentPairs OpenJDK6 bool s390 true define_pd_global cpu/s390/globals_s390.hpp
RewriteFrequentPairs OpenJDK6 bool sparc true define_pd_global cpu/sparc/globals_sparc.hpp
RewriteFrequentPairs OpenJDK6 bool x86 true define_pd_global cpu/x86/globals_x86.hpp
RewriteFrequentPairs OpenJDK6 bool zero true define_pd_global cpu/zero/globals_zero.hpp
RoundFPResults OpenJDK6 bool aarch64 true define_pd_global cpu/aarch64/
c1_globals_aarch64.hpp
RoundFPResults OpenJDK6 bool arm false define_pd_global cpu/arm/c1_globals_arm.hpp
RoundFPResults OpenJDK6 bool c1 develop_pd Indicates whether rounding is needed for floating point results share/c1/c1_globals.hpp
RoundFPResults OpenJDK6 bool ppc false define_pd_global cpu/ppc/c1_globals_ppc.hpp
RoundFPResults OpenJDK6 bool s390 false define_pd_global cpu/s390/
c1_globals_s390.hpp
RoundFPResults OpenJDK6 bool sparc false define_pd_global cpu/sparc/
c1_globals_sparc.hpp
RoundFPResults OpenJDK6 bool x86 true define_pd_global cpu/x86/c1_globals_x86.hpp
Generate a lot of safepoints. This works with
SafepointALot OpenJDK6 bool runtime false diagnostic GuaranteedSafepointInterval share/runtime/globals.hpp
SafepointTimeoutDelay OpenJDK6 intx runtime 10000 product Delay in milliseconds for option SafepointTimeout share/runtime/globals.hpp
Time out and warn or fail after SafepointTimeoutDelay
SafepointTimeout OpenJDK6 bool runtime false product milliseconds if failed to reach safepoint share/runtime/globals.hpp
ScavengeALotInterval OpenJDK6 intx gc 1 notproduct Interval between which scavenge will occur with +ScavengeALot share/gc/shared/
gc_globals.hpp
Force scavenge at every Nth exit from the runtime system share/gc/shared/
ScavengeALot OpenJDK6 bool gc false notproduct (N=ScavengeALotInterval) gc_globals.hpp
Obsoleted
ScavengeBeforeFullGC OpenJDK6 in JDK23 bool gc true product Scavenge youngest generation before each full GC. share/gc/shared/
Expired in gc_globals.hpp
JDK24
0: do not allow scavengable oops in the code cache;
ScavengeRootsInCode OpenJDK6 intx runtime 2 diagnostic 1: allow scavenging from the code cache; share/runtime/globals.hpp
range(0, 2)
2: emit as many constants as the compiler can see
SegmentedCodeCache OpenJDK9 bool runtime false product Use a segmented code cache share/runtime/globals.hpp
SelectivePhiFunctions OpenJDK6 bool c1 true develop create phi functions at loop headers only when necessary share/c1/c1_globals.hpp
0 Will cause VM to terminate after a given time (in minutes)
SelfDestructTimer OpenJDK6 intx runtime range(0, max_intx) product (0 means off) share/runtime/globals.hpp
SerializeVMOutput OpenJDK6 bool runtime true diagnostic Use a mutex to serialize output to tty and LogFile share/runtime/globals.hpp
SharedArchiveConfigFile OpenJDK10 ccstr runtime NULL product Data to add to the CDS archive file share/runtime/globals.hpp
SharedArchiveFile OpenJDK8 ccstr runtime NULL product Override the default location of the CDS archive file share/runtime/globals.hpp
LP64_ONLY(32*G)NOT_LP64(LINUX_ONLY(2*G) Address to allocate shared memory region for class data
SharedBaseAddress OpenJDK8 size_t runtime NOT_LINUX(0)) product share/runtime/globals.hpp
range(0, SIZE_MAX)
SharedClassListFile OpenJDK8 ccstr runtime NULL product Override the default CDS class list share/runtime/globals.hpp
SharedSymbolTableBucketSize OpenJDK9 uintx runtime 4 product Average number of symbols per bucket in shared table share/runtime/globals.hpp
range(2, 246)
ShenandoahAllocFailureALot OpenJDK11 bool gc false diagnostic Testing: make lots of artificial allocation failures. share/gc/shenandoah/
shenandoah_globals.hpp
How much of heap should some heuristics reserve for absorbing
5 the allocation spikes. Larger value wastes more memory in share/gc/shenandoah/
ShenandoahAllocSpikeFactor OpenJDK11 uintx gc range(0,100) experimental non-emergency cases, but provides more safety in emergency shenandoah_globals.hpp
cases. In percents of (soft) max heap size.
How many new allocations should happen since the last GC cycle
ShenandoahAllocationThreshold OpenJDK11 uintx gc 0 experimental before some heuristics trigger the collection. In percents of share/gc/shenandoah/
range(0,100) (soft) max heap size. Set to zero to effectively disable. shenandoah_globals.hpp
Unconditionally clear soft references, instead of using any
ShenandoahAlwaysClearSoftRefs OpenJDK11 bool gc false experimental other cleanup policy. This minimizes footprint at expense of share/gc/shenandoah/
more soft reference churn in applications. shenandoah_globals.hpp
ShenandoahCASBarrier OpenJDK11 bool gc true diagnostic Turn on/off CAS barriers in Shenandoah share/gc/shenandoah/
shenandoah_globals.hpp
ShenandoahCloneBarrier OpenJDK11 bool gc true diagnostic Turn on/off clone barriers in Shenandoah share/gc/shenandoah/
shenandoah_globals.hpp
Use this style to scan the code cache roots:
0 - sequential iterator; share/gc/shenandoah/
ShenandoahCodeRootsStyle OpenJDK11 uintx gc 2 diagnostic 1 - parallel iterator; shenandoah_globals.hpp
2 - parallel iterator with cset filters;
The time period for one step in control loop interval
ShenandoahControlIntervalAdjustPeriod OpenJDK11 uintx gc 1000 experimental adjustment. Lower values make adjustments faster, at the share/gc/shenandoah/
expense of higher perf overhead. Time is in milliseconds. shenandoah_globals.hpp
The maximum sleep interval for control loop that drives
the cycles. Lower values would increase GC responsiveness share/gc/shenandoah/
ShenandoahControlIntervalMax OpenJDK11 uintx gc 10 experimental to changing heap conditions, at the expense of higher perf shenandoah_globals.hpp
overhead. Time is in milliseconds.
The minimum sleep interval for the control loop that drives
the cycles. Lower values would increase GC responsiveness share/gc/shenandoah/
ShenandoahControlIntervalMin OpenJDK11 uintx gc 1 experimental to changing heap conditions, at the expense of higher perf shenandoah_globals.hpp
overhead. Time is in milliseconds.
How much of the heap needs to be free after recovery cycles,
1 either Degenerated or Full GC to be claimed successful. If this share/gc/shenandoah/
ShenandoahCriticalFreeThreshold OpenJDK11 uintx gc range(0, 100) experimental much space is not available, next recovery step would be shenandoah_globals.hpp
triggered.
Enable Degenerated GC as the graceful degradation step.
Disabling this option leads to degradation to Full GC instead. share/gc/shenandoah/
ShenandoahDegeneratedGC OpenJDK11 bool gc true diagnostic When running in passive mode, this can be toggled to measure shenandoah_globals.hpp
either Degenerated GC or Full GC costs.
ShenandoahElasticTLAB OpenJDK11 bool gc true diagnostic Use Elastic TLABs with Shenandoah share/gc/shenandoah/
shenandoah_globals.hpp
Allow evacuations to overflow the reserved space. Enabling it
will make evacuations more resilient when evacuation share/gc/shenandoah/
ShenandoahEvacReserveOverflow OpenJDK11 bool gc true experimental reserve/waste is incorrect, at the risk that application shenandoah_globals.hpp
runs out of memory too early.
How much of heap to reserve for evacuations. Larger values make
5 GC evacuate more live objects on every cycle, while leaving share/gc/shenandoah/
ShenandoahEvacReserve OpenJDK11 uintx gc range(1,100) experimental less headroom for application to allocate in. In percents of shenandoah_globals.hpp
total heap size.
How much waste evacuations produce within the reserved space.
1.2 Larger values make evacuations more resilient against share/gc/shenandoah/
ShenandoahEvacWaste OpenJDK11 double gc range(1.0,100.0) experimental evacuation conflicts, at expense of evacuating less on each shenandoah_globals.hpp
GC cycle.
How many back-to-back Degenerated GCs should happen before share/gc/shenandoah/
ShenandoahFullGCThreshold OpenJDK11 uintx gc 3 experimental going to a Full GC. shenandoah_globals.hpp
GC 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 share/gc/shenandoah/
ShenandoahGCHeuristics OpenJDK11 ccstr gc adaptive product at all times, even during the GC cycle; shenandoah_globals.hpp
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.
GC mode to use. Among other things, this defines which
barriers are in in use. Possible values are:
ShenandoahGCMode OpenJDK11 ccstr gc satb product satb - snapshot-at-the-beginning concurrent GC (three pass mark-evac-update); share/gc/shenandoah/
iu - incremental-update concurrent GC (three pass mark-evac-update); shenandoah_globals.hpp
passive - stop the world GC only (either degenerated or full)
How much garbage a region has to contain before it would be
taken for collection. This a guideline only, as GC heuristics
ShenandoahGarbageThreshold OpenJDK11 uintx gc 25 experimental may select the region for collection even if it has little share/gc/shenandoah/
range(0,100) garbage. This also affects how much internal fragmentation the shenandoah_globals.hpp
collector accepts. In percents of heap region size.
Many heuristics would guarantee a concurrent GC cycle at
least with this interval. This is useful when large idle
ShenandoahGuaranteedGCInterval OpenJDK11 uintx gc 5*60*1000 experimental intervals are present, where GC can run without stealing share/gc/shenandoah/
time from active application. Time is in milliseconds. shenandoah_globals.hpp
Setting this to 0 disables the feature.
Allow moving humongous regions. This makes GC more resistant
to external fragmentation that may otherwise fail other share/gc/shenandoah/
ShenandoahHumongousMoves OpenJDK11 bool gc true diagnostic humongous allocations, at the expense of higher GC copying shenandoah_globals.hpp
costs. Currently affects stop-the-world (Full) cycle only.
Humongous objects are allocated in separate regions.
100 This setting defines how large the object should be to be share/gc/shenandoah/
ShenandoahHumongousThreshold OpenJDK11 intx gc range(1, 100) experimental deemed humongous. Value is in percents of heap region size. shenandoah_globals.hpp
This also caps the maximum TLAB size.
ShenandoahIUBarrier OpenJDK11 bool gc false diagnostic Turn on/off I-U barriers barriers in Shenandoah share/gc/shenandoah/
shenandoah_globals.hpp
The cycle may shortcut when enough garbage can be reclaimed
90 from the immediate garbage (completely garbage regions). share/gc/shenandoah/
ShenandoahImmediateThreshold OpenJDK11 uintx gc range(0,100) experimental In percents of total garbage found. Setting this threshold shenandoah_globals.hpp
to 100 effectively disables the shortcut.
Should internally-caused GC requests invoke concurrent cycles,
should they do the stop-the-world (Degenerated / Full GC)? share/gc/shenandoah/
ShenandoahImplicitGCInvokesConcurrent OpenJDK11 bool gc false experimental Many heuristics automatically enable this. This option is shenandoah_globals.hpp
similar to global ExplicitGCInvokesConcurrent.
How much heap should be free before some heuristics trigger the
70 initial (learning) cycles. Affects cycle frequency on startup share/gc/shenandoah/
ShenandoahInitFreeThreshold OpenJDK11 uintx gc range(0,100) experimental and after drastic state changes, e.g. after degenerated/full shenandoah_globals.hpp
GC cycles. In percents of (soft) max heap size.
5 The number of cycles some heuristics take to collect in order share/gc/shenandoah/
ShenandoahLearningSteps OpenJDK11 uintx gc range(0,100) experimental to learn application and GC performance. shenandoah_globals.hpp
ShenandoahLoadRefBarrier OpenJDK11 bool gc true diagnostic Turn on/off load-reference barriers in Shenandoah share/gc/shenandoah/
shenandoah_globals.hpp
ShenandoahLoopOptsAfterExpansion OpenJDK11 bool gc true diagnostic Attempt more loop opts after barrier expansion. share/gc/shenandoah/
shenandoah_globals.hpp
How many items to process during one marking iteration before
ShenandoahMarkLoopStride OpenJDK11 uintx gc 1000 experimental checking for cancellation, yielding, etc. Larger values improve share/gc/shenandoah/
marking performance at expense of responsiveness. shenandoah_globals.hpp
32 How many objects to prefetch ahead when traversing mark bitmaps. share/gc/shenandoah/
ShenandoahMarkScanPrefetch OpenJDK11 intx gc range(0, 256) experimental Set to 0 to disable prefetching. shenandoah_globals.hpp
With automatic region sizing, the regions would be at most share/gc/shenandoah/
ShenandoahMaxRegionSize OpenJDK11 size_t gc 32 * M experimental this large. shenandoah_globals.hpp
How many times to maximum attempt to flush SATB buffers at the share/gc/shenandoah/
ShenandoahMaxSATBBufferFlushes OpenJDK11 uintx gc 5 experimental end of concurrent marking. shenandoah_globals.hpp
How much heap should be free before most heuristics trigger the
ShenandoahMinFreeThreshold OpenJDK11 uintx gc 10 experimental collection, even without other triggers. Provides the safety share/gc/shenandoah/
range(0,100) margin for many heuristics. In percents of (soft) max heap size. shenandoah_globals.hpp
With automatic region sizing, the regions would be at least share/gc/shenandoah/
ShenandoahMinRegionSize OpenJDK11 size_t gc 256 * K experimental this large. shenandoah_globals.hpp
ShenandoahOOMDuringEvacALot OpenJDK11 bool gc false diagnostic Testing: simulate OOM during evacuation. share/gc/shenandoah/
shenandoah_globals.hpp
Optimize barriers on static final fields.
ShenandoahOptimizeStaticFinals OpenJDK11 bool gc true diagnostic Turn it off for maximum compatibility with reflection or JNI share/gc/shenandoah/
code that manipulates final fields. shenandoah_globals.hpp
How much of free space to take as non-taxable allocations
10 the GC cycle. Larger value makes the pacing milder at the share/gc/shenandoah/
ShenandoahPacingCycleSlack OpenJDK11 uintx gc range(0, 100) experimental beginning of the GC cycle. Lower value makes the pacing less shenandoah_globals.hpp
uniform during the cycle. In percent of free space.
How much of heap counted as non-taxable allocations during idle
phases. Larger value makes the pacing milder when collector is
ShenandoahPacingIdleSlack OpenJDK11 uintx gc 2 experimental idle, requiring less rendezvous with control thread. Lower share/gc/shenandoah/
range(0, 100) value makes the pacing control less responsive to out-of-cycle shenandoah_globals.hpp
allocs. In percent of total heap size.
Max delay for pacing application allocations. Larger values
provide more resilience against out of memory, at expense at
hiding the GC latencies in the allocation path. Time is in share/gc/shenandoah/
ShenandoahPacingMaxDelay OpenJDK11 uintx gc 10 experimental milliseconds. Setting it to arbitrarily large value makes shenandoah_globals.hpp
GC effectively stall the threads indefinitely instead of going
to degenerated or Full GC.
Additional pacing tax surcharge to help unclutter the heap.
1.1 Larger values makes the pacing more aggressive. Lower values share/gc/shenandoah/
ShenandoahPacingSurcharge OpenJDK11 double gc range(1.0, 100.0) experimental risk GC cycles finish with less memory than were available at shenandoah_globals.hpp
the beginning of it.
Deprecated
in JDK25 Pace application allocations to give GC chance to start
ShenandoahPacing OpenJDK11 Obsoleted bool gc true experimental and complete before allocation failure is reached. share/gc/shenandoah/
in JDK26 shenandoah_globals.hpp
Expired in
JDK27
How many regions to process at once during parallel region share/gc/shenandoah/
ShenandoahParallelRegionStride OpenJDK11 uintx gc 1024 experimental iteration. Affects heaps with lots of regions. shenandoah_globals.hpp
Do concurrent preclean phase before final mark: process
ShenandoahPreclean OpenJDK11 bool gc true diagnostic definitely alive references to avoid dealing with them during share/gc/shenandoah/
pause. shenandoah_globals.hpp
Process process weak (soft, phantom, finalizers) references
every Nth cycle. Normally affects concurrent GC cycles only,
ShenandoahRefProcFrequency OpenJDK11 uintx gc 5 experimental as degenerated and full GCs would try to process references share/gc/shenandoah/
regardless. Set to zero to disable reference processing shenandoah_globals.hpp
completely.
Sampling rate for heap region sampling. In milliseconds between
ShenandoahRegionSamplingRate OpenJDK11 int gc 40 experimental the samples. Higher values provide more fidelity, at expense share/gc/shenandoah/
of more sampling overhead. shenandoah_globals.hpp
ShenandoahRegionSampling OpenJDK11 bool gc false experimental Provide heap region sampling data via jvmstat. share/gc/shenandoah/
shenandoah_globals.hpp
ShenandoahRegionSize OpenJDK11 size_t gc 0 experimental Static heap region size. Set zero to enable automatic sizing. share/gc/shenandoah/
shenandoah_globals.hpp
ShenandoahSATBBarrier OpenJDK11 bool gc true diagnostic Turn on/off SATB barriers in Shenandoah share/gc/shenandoah/
shenandoah_globals.hpp
ShenandoahSATBBufferSize OpenJDK11 size_t gc 1 * K experimental Number of entries in an SATB log buffer. share/gc/shenandoah/
range(1, max_uintx) shenandoah_globals.hpp
Fix references with load reference barrier. Disabling this share/gc/shenandoah/
ShenandoahSelfFixing OpenJDK11 bool gc true diagnostic might degrade performance. shenandoah_globals.hpp
ShenandoahSoftMaxHeapSize OpenJDK11 size_t gc 0 manageable Soft limit for maximum heap size (in bytes) share/gc/shenandoah/
shenandoah_globals.hpp
ShenandoahSuspendibleWorkers OpenJDK11 bool gc false experimental Suspend concurrent GC worker threads at safepoints share/gc/shenandoah/
shenandoah_globals.hpp
With automatic region sizing, this is the approximate number
ShenandoahTargetNumRegions OpenJDK11 size_t gc 2048 experimental of regions that would be used, within min/max region size share/gc/shenandoah/
limits. shenandoah_globals.hpp
Uncommit memory for regions that were not used for more than
this time. First use after that would incur allocation stalls.
Actively used regions would never be uncommitted, because they share/gc/shenandoah/
ShenandoahUncommitDelay OpenJDK11 uintx gc 5*60*1000 experimental do not become unused longer than this delay. Time is in shenandoah_globals.hpp
milliseconds. Setting this delay to 0 effectively uncommits
regions almost immediately after they become unused.
Allow to uncommit memory under unused regions and metadata.
This optimizes footprint at expense of allocation latency in share/gc/shenandoah/
ShenandoahUncommit OpenJDK11 bool gc true experimental regions that require committing back. Uncommits would be shenandoah_globals.hpp
disabled by some heuristics, or with static heap size.
Unload the classes every Nth cycle. Normally affects concurrent
ShenandoahUnloadClassesFrequency OpenJDK11 uintx gc 100 experimental GC cycles, as degenerated and full GCs would try to unload share/gc/shenandoah/
classes regardless. Set to zero to disable class unloading. shenandoah_globals.hpp
Verification level, higher levels check more, taking more time.
Accepted values are:
0 = basic heap checks;
ShenandoahVerifyLevel OpenJDK11 intx gc 4 diagnostic 1 = previous level, plus basic region checks; share/gc/shenandoah/
2 = previous level, plus all roots; shenandoah_globals.hpp
3 = previous level, plus all reachable objects;
4 = previous level, plus all marked objects
ShenandoahVerifyOptoBarriers OpenJDK11 bool gc false develop Verify no missing barriers in C2. share/gc/shenandoah/
shenandoah_globals.hpp
Enable internal verification. This would catch many GC bugs,
ShenandoahVerify OpenJDK11 bool gc false diagnostic but it would also stall the collector during the verification, share/gc/shenandoah/
which prolongs the pauses and might hide other bugs. shenandoah_globals.hpp
ShowHiddenFrames OpenJDK7 bool runtime false diagnostic show method handle implementation frames (usually hidden) share/runtime/globals.hpp
ShowMessageBoxOnError OpenJDK6 bool runtime false product Keep process alive on VM fatal error share/runtime/globals.hpp
ShowRegistersOnAssert OpenJDK11 bool runtime false diagnostic On internal errors, include registers in error report. share/runtime/globals.hpp
When disabled, informs the GC to shrink the java heap directly
ShrinkHeapInSteps OpenJDK9 bool runtime true product to the target size at the next full GC rather than requiring share/runtime/globals.hpp
smaller steps during multiple full GCs.
SoftMatchFailure OpenJDK6 bool c2 trueInProduct develop If the DFA fails to match a node, print a message and bail out share/opto/c2_globals.hpp
SoftRefLRUPolicyMSPerMB OpenJDK6 intx runtime 1000 product Number of milliseconds per MB of free space in the heap share/runtime/globals.hpp
range(0, max_intx)
-1 Use prfm hint with specified distance in compiled code. cpu/aarch64/
SoftwarePrefetchHintDistance OpenJDK10 int aarch64 range(-1, 4096) product Value -1 means off. globals_aarch64.hpp
SparcV9RegsHiBitsZero OpenJDK6 bool c2 true develop Assume Sparc V9 I&L registers on V8+ systems are zero-extended share/opto/c2_globals.hpp
SpecTrapLimitExtraEntries OpenJDK8 intx runtime 3 experimental Extra method data trap entries for speculation share/runtime/globals.hpp
SpecialArraysEquals OpenJDK6 bool c2 true diagnostic special version of Arrays.equals(char[],char[]) share/opto/c2_globals.hpp
SpecialEncodeISOArray OpenJDK8 bool c2 true diagnostic special version of ISO_8859_1$Encoder.encodeISOArray share/opto/c2_globals.hpp
SpecialStringCompareTo OpenJDK6 bool c2 true diagnostic special version of string compareTo share/opto/c2_globals.hpp
SpecialStringEquals OpenJDK6 bool c2 true diagnostic special version of string equals share/opto/c2_globals.hpp
SpecialStringIndexOf OpenJDK6 bool c2 true diagnostic special version of string indexOf share/opto/c2_globals.hpp
Clone compares and control flow through merge points to fold
SplitIfBlocks OpenJDK6 bool c2 true product some branches share/opto/c2_globals.hpp
StackPrintLimit OpenJDK6 intx runtime 100 develop number of stack frames to print in VM-level stack dump share/runtime/globals.hpp
StackRedPages OpenJDK6 intx aarch64 DEFAULT_STACK_RED_PAGES define_pd_global cpu/aarch64/
globals_aarch64.hpp
StackRedPages OpenJDK6 intx arm DEFAULT_STACK_RED_PAGES define_pd_global cpu/arm/globals_arm.hpp
Number of red zone (unrecoverable overflows) pages of size
StackRedPages OpenJDK6 intx runtime product_pd share/runtime/globals.hpp
4KB. If pages are bigger red zone is aligned up.
StackRedPages OpenJDK6 intx ppc DEFAULT_STACK_RED_PAGES define_pd_global cpu/ppc/globals_ppc.hpp
StackRedPages OpenJDK6 intx s390 DEFAULT_STACK_RED_PAGES define_pd_global cpu/s390/globals_s390.hpp
StackRedPages OpenJDK6 intx sparc DEFAULT_STACK_RED_PAGES define_pd_global cpu/sparc/globals_sparc.hpp
StackRedPages OpenJDK6 intx x86 DEFAULT_STACK_RED_PAGES define_pd_global cpu/x86/globals_x86.hpp
StackRedPages OpenJDK6 intx zero DEFAULT_STACK_RED_PAGES define_pd_global cpu/zero/globals_zero.hpp
StackReservedPages OpenJDK9 intx aarch64 DEFAULT_STACK_RESERVED_PAGES define_pd_global cpu/aarch64/
globals_aarch64.hpp
StackReservedPages OpenJDK9 intx arm DEFAULT_STACK_RESERVED_PAGES define_pd_global cpu/arm/globals_arm.hpp
Number of reserved zone (reserved to annotated methods) pages
StackReservedPages OpenJDK9 intx runtime product_pd of size 4KB. If pages are bigger reserved zone is aligned up. share/runtime/globals.hpp
StackReservedPages OpenJDK9 intx ppc DEFAULT_STACK_RESERVED_PAGES define_pd_global cpu/ppc/globals_ppc.hpp
StackReservedPages OpenJDK9 intx s390 DEFAULT_STACK_RESERVED_PAGES define_pd_global cpu/s390/globals_s390.hpp
StackReservedPages OpenJDK9 intx sparc DEFAULT_STACK_RESERVED_PAGES define_pd_global cpu/sparc/globals_sparc.hpp
StackReservedPages OpenJDK9 intx x86 DEFAULT_STACK_RESERVED_PAGES define_pd_global cpu/x86/globals_x86.hpp
StackReservedPages OpenJDK9 intx zero DEFAULT_STACK_RESERVED_PAGES define_pd_global cpu/zero/globals_zero.hpp
StackShadowPages OpenJDK6 intx aarch64 DEFAULT_STACK_SHADOW_PAGES define_pd_global cpu/aarch64/
globals_aarch64.hpp
StackShadowPages OpenJDK6 intx arm DEFAULT_STACK_SHADOW_PAGES define_pd_global cpu/arm/globals_arm.hpp
Number of shadow zone (for overflow checking) pages of size
StackShadowPages OpenJDK6 intx runtime product_pd 4KB. If pages are bigger shadow zone is aligned up. share/runtime/globals.hpp
This should exceed the depth of the VM and native call stack.
StackShadowPages OpenJDK6 intx ppc DEFAULT_STACK_SHADOW_PAGES define_pd_global cpu/ppc/globals_ppc.hpp
StackShadowPages OpenJDK6 intx s390 DEFAULT_STACK_SHADOW_PAGES define_pd_global cpu/s390/globals_s390.hpp
StackShadowPages OpenJDK6 intx sparc DEFAULT_STACK_SHADOW_PAGES define_pd_global cpu/sparc/globals_sparc.hpp
StackShadowPages OpenJDK6 intx x86 DEFAULT_STACK_SHADOW_PAGES define_pd_global cpu/x86/globals_x86.hpp
StackShadowPages OpenJDK6 intx zero DEFAULT_STACK_SHADOW_PAGES define_pd_global cpu/zero/globals_zero.hpp
StackTraceInThrowable OpenJDK6 bool runtime true product Collect backtrace in throwable when exception happens share/runtime/globals.hpp
StackYellowPages OpenJDK6 intx aarch64 DEFAULT_STACK_YELLOW_PAGES define_pd_global cpu/aarch64/
globals_aarch64.hpp
StackYellowPages OpenJDK6 intx arm DEFAULT_STACK_YELLOW_PAGES define_pd_global cpu/arm/globals_arm.hpp
Number of yellow zone (recoverable overflows) pages of size
StackYellowPages OpenJDK6 intx runtime product_pd share/runtime/globals.hpp
4KB. If pages are bigger yellow zone is aligned up.
StackYellowPages OpenJDK6 intx ppc DEFAULT_STACK_YELLOW_PAGES define_pd_global cpu/ppc/globals_ppc.hpp
StackYellowPages OpenJDK6 intx s390 DEFAULT_STACK_YELLOW_PAGES define_pd_global cpu/s390/globals_s390.hpp
StackYellowPages OpenJDK6 intx sparc DEFAULT_STACK_YELLOW_PAGES define_pd_global cpu/sparc/globals_sparc.hpp
StackYellowPages OpenJDK6 intx x86 DEFAULT_STACK_YELLOW_PAGES define_pd_global cpu/x86/globals_x86.hpp
StackYellowPages OpenJDK6 intx zero DEFAULT_STACK_YELLOW_PAGES define_pd_global cpu/zero/globals_zero.hpp
Start aggressive sweeping if X[%] of the code cache is free.
StartAggressiveSweepingAt OpenJDK9 uintx runtime 10 product Segmented code cache: X[%] of the non-profiled heap. share/runtime/globals.hpp
range(0, 100) Non-segmented code cache: X[%] of the total code cache
StartAttachListener OpenJDK6 bool runtime false product Always start Attach Listener at VM startup share/runtime/globals.hpp
StartFlightRecording OpenJDK11 ccstr runtime NULL product Start flight recording with options share/runtime/globals.hpp
StopInterpreterAt OpenJDK6 intx runtime 0 develop Stop interpreter execution at specified bytecode number share/runtime/globals.hpp
StressArrayCopyMacroNode OpenJDK9 bool c2 false develop Perform ArrayCopy load/store replacement during IGVN only share/opto/c2_globals.hpp
StressCodeAging OpenJDK9 bool runtime false diagnostic Start with counters compiled in share/runtime/globals.hpp
StressCodeBuffers OpenJDK6 bool runtime false develop Exercise code buffer expansion and other rare state changes share/runtime/globals.hpp
StressCompiledExceptionHandlers OpenJDK7 bool runtime false develop Exercise compiled exception handlers share/runtime/globals.hpp
StressCriticalJNINatives OpenJDK6 bool runtime false notproduct Exercise register saving code in critical natives share/runtime/globals.hpp
Force scavenge when a derived pointer is detected on stack
StressDerivedPointers OpenJDK6 bool runtime false notproduct after rtm call share/runtime/globals.hpp
StressGCM OpenJDK8 bool c2 false diagnostic Randomize instruction scheduling in GCM share/opto/c2_globals.hpp
StressLCM OpenJDK8 bool c2 false diagnostic Randomize instruction scheduling in LCM share/opto/c2_globals.hpp
StressLdcRewrite OpenJDK6 bool runtime false product Force ldc -> ldc_w rewrite during RedefineClasses share/runtime/globals.hpp
StressLinearScan OpenJDK6 bool c1 false develop scramble block order used by LinearScan (stress test) share/c1/c1_globals.hpp
StressLoopInvariantCodeMotion OpenJDK8 bool c1 false develop stress loop invariant code motion share/c1/c1_globals.hpp
StressMethodHandleLinkerInlining OpenJDK11 bool c2 false develop Stress inlining through method handle linkers share/opto/c2_globals.hpp
StressRangeCheckElimination OpenJDK8 bool c1 false develop stress Range Check Elimination share/c1/c1_globals.hpp
Recompile each compiled method without subsuming loads
StressRecompilation OpenJDK6 bool c2 false develop or escape analysis. share/opto/c2_globals.hpp
StressReflectiveCode OpenJDK6 bool c2 false develop Use inexact types at allocations, etc., to test reflection share/opto/c2_globals.hpp
StressRewriter OpenJDK8 bool runtime false develop Stress linktime bytecode rewriting share/runtime/globals.hpp
Enable strict checks that safepoints cannot happen for threads
StrictSafepointChecks OpenJDK6 bool runtime trueInDebug notproduct that use NoSafepointVerifier share/runtime/globals.hpp
3 A string must reach this age (or be promoted to an old region)
StringDeduplicationAgeThreshold OpenJDK8 uintx runtime range(1, markOopDesc::max_age) product to be considered for deduplication share/runtime/globals.hpp
StringDeduplicationRehashALot OpenJDK8 bool runtime false diagnostic Force table rehash every time the table is scanned share/runtime/globals.hpp
StringDeduplicationResizeALot OpenJDK8 bool runtime false diagnostic Force table resize every time the table is scanned share/runtime/globals.hpp
defaultStringTableSize Number of buckets in the interned String table
StringTableSize OpenJDK6 uintx runtime range(minimumStringTableSize, product (will be rounded to nearest higher power of 2) share/runtime/globals.hpp
16777216ul)
Attempt to compile while subsuming loads into machine
SubsumeLoads OpenJDK6 bool c2 true develop instructions. share/opto/c2_globals.hpp
SuperWordLoopUnrollAnalysis OpenJDK9 bool aarch64 true define_pd_global cpu/aarch64/
c2_globals_aarch64.hpp
Map number of unrolls for main loop via
SuperWordLoopUnrollAnalysis OpenJDK9 bool c2 product_pd Superword Level Parallelism analysis share/opto/c2_globals.hpp
SuperWordLoopUnrollAnalysis OpenJDK9 bool ppc false define_pd_global cpu/ppc/c2_globals_ppc.hpp
SuperWordLoopUnrollAnalysis OpenJDK9 bool s390 false define_pd_global cpu/s390/
c2_globals_s390.hpp
SuperWordLoopUnrollAnalysis OpenJDK9 bool sparc false define_pd_global cpu/sparc/
c2_globals_sparc.hpp
SuperWordLoopUnrollAnalysis OpenJDK9 bool x86 true define_pd_global cpu/x86/c2_globals_x86.hpp
SuperWordRTDepCheck OpenJDK6 bool c2 false develop Enable runtime dependency checks. share/opto/c2_globals.hpp
SuperWordReductions OpenJDK9 bool c2 true product Enable reductions support in superword. share/opto/c2_globals.hpp
SuperwordUseVSX OpenJDK10 bool ppc false product Use Power8 VSX instructions for superword optimization. cpu/ppc/globals_ppc.hpp
SuppressErrorAt OpenJDK6 ccstrlist runtime notproduct List of assertions (file:line) to muzzle share/runtime/globals.hpp
SuppressFatalErrorMessage OpenJDK6 bool runtime false product Report NO fatal error message (avoid deadlock) share/runtime/globals.hpp
SurvivorAlignmentInBytes OpenJDK8 intx runtime 0 experimental Default survivor space alignment in bytes share/runtime/globals.hpp
Obsoleted
SurvivorPadding OpenJDK6 in JDK26 uintx gc 3 product How much buffer to keep for survivor overflow share/gc/shared/
Expired in range(0, max_juint) gc_globals.hpp
JDK27
SurvivorRatio OpenJDK6 uintx gc 8 product Ratio of eden/survivor space size share/gc/shared/
range(1, max_uintx-2) gc_globals.hpp
Obsoleted
SuspendRetryCount OpenJDK6 in JDK17 intx runtime 50 product Maximum retry count for an external suspend request share/runtime/globals.hpp
Expired in range(0, max_intx)
JDK18
Obsoleted
SuspendRetryDelay OpenJDK6 in JDK17 intx runtime 5 product Milliseconds to delay per retry (* current_retry_count) share/runtime/globals.hpp
Expired in range(0, max_intx)
JDK18
SweeperLogEntries OpenJDK6 intx runtime 1024 notproduct Number of records in the ring buffer of sweeper activity share/runtime/globals.hpp
defaultSymbolTableSize Number of buckets in the JVM internal Symbol table
SymbolTableSize OpenJDK8 uintx runtime range(minimumSymbolTableSize, experimental share/runtime/globals.hpp
111*defaultSymbolTableSize)
Obsoleted (Unsafe, Unstable)
SyncFlags OpenJDK6 in JDK12 intx runtime 0 experimental Experimental Sync flags share/runtime/globals.hpp
Expired in
JDK13
Obsoleted
SyncKnobs OpenJDK6 in JDK12 ccstr runtime NULL experimental (Unstable) Various monitor synchronization tunables share/runtime/globals.hpp
Expired in
JDK13
Obsoleted
SyncVerbose OpenJDK6 in JDK12 intx runtime 0 experimental (Unstable) share/runtime/globals.hpp
Expired in
JDK13
TLABAllocationWeight OpenJDK6 uintx gc 35 product Allocation averaging weight share/gc/shared/
range(0, 100) gc_globals.hpp
TLABRefillWasteFraction OpenJDK6 uintx gc 64 product Maximum TLAB waste at a refill (internal fragmentation) share/gc/shared/
range(1, max_juint) gc_globals.hpp
TLABSize OpenJDK6 size_t gc 0 product Starting TLAB size (in bytes); zero means set ergonomically share/gc/shared/
gc_globals.hpp
Deprecated
in JDK12
TLABStats OpenJDK6 Obsoleted bool gc true product Provide more detailed and expensive TLAB statistics. share/gc/shared/
in JDK23 gc_globals.hpp
Expired in
JDK24
TLABWasteIncrement OpenJDK6 uintx gc 4 product Increment allowed waste at slow allocation share/gc/shared/
range(0, max_jint) gc_globals.hpp
TLABWasteTargetPercent OpenJDK6 uintx gc 1 product Percentage of Eden that can be wasted (half-full TLABs at GC) share/gc/shared/
range(1, 100) gc_globals.hpp
10 Target wasted space in last buffer as percent of overall share/gc/shared/
TargetPLABWastePct OpenJDK6 uintx gc range(1, 100) product allocation gc_globals.hpp
TargetSurvivorRatio OpenJDK6 uintx gc 50 product Desired percentage of survivor space used after scavenge share/gc/shared/
range(0, 100) gc_globals.hpp
Obsoleted
TenuredGenerationSizeIncrement OpenJDK6 in JDK26 uintx gc 20 product Adaptive size percentage change in tenured generation share/gc/shared/
Expired in range(0, 100) gc_globals.hpp
JDK27
Obsoleted
TenuredGenerationSizeSupplementDecay OpenJDK6 in JDK26 uintx gc 2 product Decay factor to TenuredGenerationSizeIncrement share/gc/shared/
Expired in range(1, max_uintx) gc_globals.hpp
JDK27
Obsoleted
TenuredGenerationSizeSupplement OpenJDK6 in JDK26 uintx gc 80 product Supplement to TenuredGenerationSizeIncrement used at startup share/gc/shared/
Expired in range(0, 100) gc_globals.hpp
JDK27
If > 0, provokes an error inside VM error handler (a secondary
TestCrashInErrorHandler OpenJDK9 uintx runtime 0 notproduct crash). see test_error_handler() in vmError.cpp share/runtime/globals.hpp
TestSafeFetchInErrorHandler OpenJDK9 bool runtime false notproduct If true, tests SafeFetch inside error handler. share/runtime/globals.hpp
TestUnresponsiveErrorHandler OpenJDK10 bool runtime false notproduct If true, simulates an unresponsive error handler. share/runtime/globals.hpp
Deprecated
in JDK13
ThreadLocalHandshakes OpenJDK10 Obsoleted bool aarch64 true define_pd_global cpu/aarch64/
in JDK14 globals_aarch64.hpp
Expired in
JDK15
Deprecated
in JDK13
ThreadLocalHandshakes OpenJDK10 Obsoleted bool arm false define_pd_global cpu/arm/globals_arm.hpp
in JDK14
Expired in
JDK15
Deprecated
in JDK13
ThreadLocalHandshakes OpenJDK10 Obsoleted bool runtime product_pd Use thread-local polls instead of global poll for safepoints. share/runtime/globals.hpp
in JDK14
Expired in
JDK15
Deprecated
in JDK13
ThreadLocalHandshakes OpenJDK10 Obsoleted bool ppc true define_pd_global cpu/ppc/globals_ppc.hpp
in JDK14
Expired in
JDK15
Deprecated
in JDK13
ThreadLocalHandshakes OpenJDK10 Obsoleted bool s390 true define_pd_global cpu/s390/globals_s390.hpp
in JDK14
Expired in
JDK15
Deprecated
in JDK13
ThreadLocalHandshakes OpenJDK10 Obsoleted bool sparc true define_pd_global cpu/sparc/globals_sparc.hpp
in JDK14
Expired in
JDK15
Deprecated
in JDK13
ThreadLocalHandshakes OpenJDK10 Obsoleted bool x86 false define_pd_global cpu/x86/globals_x86.hpp
in JDK14
Expired in
JDK15
Deprecated
in JDK13
ThreadLocalHandshakes OpenJDK10 Obsoleted bool zero false define_pd_global cpu/zero/globals_zero.hpp
in JDK14
Expired in
JDK15
0 : Normal.
VM chooses priorities that are appropriate for normal
applications. On Solaris NORM_PRIORITY and above are mapped
to normal native priority. Java priorities below
NORM_PRIORITY map to lower native priority values. On
Windows applications are allowed to use higher native
priorities. However, with ThreadPriorityPolicy=0, VM will
not use the highest possible native priority,
THREAD_PRIORITY_TIME_CRITICAL, as it may interfere with
system threads. On Linux thread priorities are ignored
0 because the OS does not support static priority in
ThreadPriorityPolicy OpenJDK6 intx runtime range(0, 1) product SCHED_OTHER scheduling class which is the only choice for share/runtime/globals.hpp
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.
ThreadPriorityVerbose OpenJDK6 bool runtime false product Print priority changes share/runtime/globals.hpp
ThreadStackSize OpenJDK6 intx aix ppc 2048 define_pd_global // 0 => use system default os_cpu/aix_ppc/
globals_aix_ppc.hpp
ThreadStackSize OpenJDK6 intx bsd aarch64 2048 define_pd_global // 0 => use system default os_cpu/bsd_aarch64/
globals_bsd_aarch64.hpp
ThreadStackSize OpenJDK6 intx bsd x86 320 define_pd_global os_cpu/bsd_x86/
globals_bsd_x86.hpp
ThreadStackSize OpenJDK6 intx bsd zero 1536 define_pd_global os_cpu/bsd_zero/
globals_bsd_zero.hpp
ThreadStackSize OpenJDK6 intx linux aarch64 2040 define_pd_global // 0 => use system default os_cpu/linux_aarch64/
globals_linux_aarch64.hpp
ThreadStackSize OpenJDK6 intx linux arm 320 define_pd_global os_cpu/linux_arm/
globals_linux_arm.hpp
ThreadStackSize OpenJDK6 intx linux ppc 2048 define_pd_global // 0 => use system default os_cpu/linux_ppc/
globals_linux_ppc.hpp
ThreadStackSize OpenJDK6 intx linux s390 1024 define_pd_global // 0 => Use system default. os_cpu/linux_s390/
globals_linux_s390.hpp
ThreadStackSize OpenJDK6 intx linux x86 320 define_pd_global os_cpu/linux_x86/
globals_linux_x86.hpp
ThreadStackSize OpenJDK6 intx linux zero 1536 define_pd_global os_cpu/linux_zero/
globals_linux_zero.hpp
ThreadStackSize OpenJDK6 intx runtime product_pd Thread Stack Size (in Kbytes) share/runtime/globals.hpp
ThreadStackSize OpenJDK6 intx sparc 1024 define_pd_global cpu/sparc/globals_sparc.hpp
ThreadStackSize OpenJDK6 intx solaris x86 320 define_pd_global os_cpu/solaris_x86/
globals_solaris_x86.hpp
ThreadStackSize OpenJDK6 intx windows aarch64 0 define_pd_global // 0 => use system default os_cpu/windows_aarch64/
globals_windows_aarch64.hpp
ThreadStackSize OpenJDK6 intx windows x86 0 define_pd_global // 0 => use system default os_cpu/windows_x86/
globals_windows_x86.hpp
ThresholdTolerance OpenJDK6 uintx gc 10 product Allowed collection cost difference between generations share/gc/shared/
range(0, 100) gc_globals.hpp
Tier0BackedgeNotifyFreqLog OpenJDK6 intx runtime 10 product Interpreter (tier 0) invocation notification frequency share/runtime/globals.hpp
range(0, 30)
Tier0InvokeNotifyFreqLog OpenJDK6 intx runtime 7 product Interpreter (tier 0) invocation notification frequency share/runtime/globals.hpp
range(0, 30)
200 Start profiling in interpreter if the counters exceed tier 3
Tier0ProfilingStartPercentage OpenJDK6 intx runtime range(0, max_jint) product thresholds by the specified percentage share/runtime/globals.hpp
Tier23InlineeNotifyFreqLog OpenJDK6 intx runtime 20 product Inlinee invocation (tiers 2 and 3) notification frequency share/runtime/globals.hpp
range(0, 30)
Tier2BackEdgeThreshold OpenJDK6 intx runtime 0 product Back edge threshold at which tier 2 compilation is invoked share/runtime/globals.hpp
range(0, max_jint)
Tier2BackedgeNotifyFreqLog OpenJDK6 intx runtime 14 product C1 without MDO (tier 2) invocation notification frequency share/runtime/globals.hpp
range(0, 30)
Tier2CompileThreshold OpenJDK6 intx runtime 0 product threshold at which tier 2 compilation is invoked share/runtime/globals.hpp
range(0, max_jint)
Tier2InvokeNotifyFreqLog OpenJDK6 intx runtime 11 product C1 without MDO (tier 2) invocation notification frequency share/runtime/globals.hpp
range(0, 30)
120000 Back edge threshold at which tier 3 OSR compilation is invoked
Tier3AOTBackEdgeThreshold OpenJDK9 intx runtime range(0, max_jint) product if coming from AOT share/runtime/globals.hpp
15000 Threshold at which tier 3 compilation is invoked (invocation
Tier3AOTCompileThreshold OpenJDK9 intx runtime range(0, max_jint) product minimum must be satisfied) if coming from AOT share/runtime/globals.hpp
10000 Compile if number of method invocations crosses this
Tier3AOTInvocationThreshold OpenJDK9 intx runtime range(0, max_jint) product threshold if coming from AOT share/runtime/globals.hpp
Tier3AOTMinInvocationThreshold OpenJDK9 intx runtime 1000 product Minimum invocation to compile at tier 3 if coming from AOT share/runtime/globals.hpp
range(0, max_jint)
Tier3BackEdgeThreshold OpenJDK6 intx runtime 60000 product Back edge threshold at which tier 3 OSR compilation is invoked share/runtime/globals.hpp
range(0, max_jint)
13 C1 with MDO profiling (tier 3) invocation notification
Tier3BackedgeNotifyFreqLog OpenJDK6 intx runtime range(0, 30) product frequency share/runtime/globals.hpp
2000 Threshold at which tier 3 compilation is invoked (invocation
Tier3CompileThreshold OpenJDK6 intx runtime range(0, max_jint) product minimum must be satisfied) share/runtime/globals.hpp
2 If C2 queue size is less than this amount per compiler thread
Tier3DelayOff OpenJDK6 intx runtime range(0, max_jint) product allow methods compiled at tier 2 transition to tier 3 share/runtime/globals.hpp
5 If C2 queue size grows over this amount per compiler thread
Tier3DelayOn OpenJDK6 intx runtime range(0, max_jint) product stop compiling at tier 3 and start compiling at tier 2 share/runtime/globals.hpp
200 Compile if number of method invocations crosses this
Tier3InvocationThreshold OpenJDK6 intx runtime range(0, max_jint) product threshold share/runtime/globals.hpp
10 C1 with MDO profiling (tier 3) invocation notification
Tier3InvokeNotifyFreqLog OpenJDK6 intx runtime range(0, 30) product frequency share/runtime/globals.hpp
5 Tier 3 thresholds will increase twofold when C1 queue size
Tier3LoadFeedback OpenJDK6 intx runtime range(0, max_jint) product reaches this amount per compiler thread share/runtime/globals.hpp
Tier3MinInvocationThreshold OpenJDK6 intx runtime 100 product Minimum invocation to compile at tier 3 share/runtime/globals.hpp
range(0, max_jint)
Tier4BackEdgeThreshold OpenJDK6 intx runtime 40000 product Back edge threshold at which tier 4 OSR compilation is invoked share/runtime/globals.hpp
range(0, max_jint)
15000 Threshold at which tier 4 compilation is invoked (invocation
Tier4CompileThreshold OpenJDK6 intx runtime range(0, max_jint) product minimum must be satisfied share/runtime/globals.hpp
5000 Compile if number of method invocations crosses this
Tier4InvocationThreshold OpenJDK6 intx runtime range(0, max_jint) product threshold share/runtime/globals.hpp
3 Tier 4 thresholds will increase twofold when C2 queue size
Tier4LoadFeedback OpenJDK6 intx runtime range(0, max_jint) product reaches this amount per compiler thread share/runtime/globals.hpp
Tier4MinInvocationThreshold OpenJDK6 intx runtime 600 product Minimum invocation to compile at tier 4 share/runtime/globals.hpp
range(0, max_jint)
TieredCompilation OpenJDK6 bool aarch64 false define_pd_global cpu/aarch64/
c1_globals_aarch64.hpp
TieredCompilation OpenJDK6 bool arm false define_pd_global cpu/arm/c1_globals_arm.hpp
TieredCompilation OpenJDK6 bool runtime product_pd Enable tiered compilation share/runtime/globals.hpp
TieredCompilation OpenJDK6 bool ppc trueInTiered define_pd_global cpu/ppc/c2_globals_ppc.hpp
TieredCompilation OpenJDK6 bool s390 false define_pd_global cpu/s390/
c1_globals_s390.hpp
TieredCompilation OpenJDK6 bool sparc trueInTiered define_pd_global cpu/sparc/
c2_globals_sparc.hpp
TieredCompilation OpenJDK6 bool x86 false define_pd_global cpu/x86/c1_globals_x86.hpp
50 Kill compile task if method was not used within
TieredCompileTaskTimeout OpenJDK6 intx runtime range(0, max_intx) product given timeout in milliseconds share/runtime/globals.hpp
TieredRateUpdateMaxTime OpenJDK6 intx runtime 25 product Maximum rate sampling interval (in milliseconds) share/runtime/globals.hpp
range(0, max_intx)
TieredRateUpdateMinTime OpenJDK6 intx runtime 1 product Minimum rate sampling interval (in milliseconds) share/runtime/globals.hpp
range(0, max_intx)
TieredStopAtLevel OpenJDK6 intx runtime 4 product Stop at given compilation level share/runtime/globals.hpp
range(0, 4)
TimeCompilationPolicy OpenJDK6 bool runtime false develop Time the compilation policy share/runtime/globals.hpp
TimeEachLinearScan OpenJDK6 bool c1 false develop print detailed timing of each LinearScan run share/c1/c1_globals.hpp
TimeLinearScan OpenJDK6 bool c1 false product detailed timing of LinearScan phases share/c1/c1_globals.hpp
TimeLivenessAnalysis OpenJDK6 bool runtime false develop Time computation of bytecode liveness analysis share/runtime/globals.hpp
TimeOopMap2 OpenJDK6 bool runtime false develop Time calls to GenerateOopMap::compute_map() individually share/runtime/globals.hpp
TimeOopMap OpenJDK6 bool runtime false develop Time calls to GenerateOopMap::compute_map() in sum share/runtime/globals.hpp
TraceBytecodesAt OpenJDK6 intx runtime 0 develop Trace bytecodes starting with specified bytecode number share/runtime/globals.hpp
TraceBytecodes OpenJDK6 bool runtime false develop Trace bytecode execution share/runtime/globals.hpp
TraceCISCSpill OpenJDK6 bool c2 false notproduct Trace allocators use of cisc spillable instructions share/opto/c2_globals.hpp
TraceCallFixup OpenJDK6 bool runtime false develop Trace all call fixups share/runtime/globals.hpp
TraceCodeBlobStacks OpenJDK6 bool runtime false notproduct Trace stack-walk of codeblobs share/runtime/globals.hpp
TraceCompilationPolicy OpenJDK6 bool runtime false develop Trace compilation policy share/runtime/globals.hpp
TraceCompiledIC OpenJDK6 bool runtime false develop Trace changes of compiled IC share/runtime/globals.hpp
TraceCompilerThreads OpenJDK11 bool runtime false diagnostic Trace creation and removal of compiler threads share/runtime/globals.hpp
TraceCreateZombies OpenJDK6 bool runtime false develop trace creation of zombie nmethods share/runtime/globals.hpp
TraceDeoptimization OpenJDK6 bool runtime false develop Trace deoptimization share/runtime/globals.hpp
TraceDependencies OpenJDK6 bool runtime false develop Trace dependencies share/runtime/globals.hpp
TraceDerivedPointers OpenJDK6 bool runtime false develop Trace traversal of derived pointers on stack share/runtime/globals.hpp
TraceFPURegisterUsage OpenJDK6 bool c1 false develop Trace usage of FPU registers at start of blocks (intel only) share/c1/c1_globals.hpp
TraceFPUStack OpenJDK6 bool c1 false develop Trace emulation of the FPU stack (intel only) share/c1/c1_globals.hpp
TraceFinalizerRegistration OpenJDK6 bool runtime false develop Trace registration of final references share/runtime/globals.hpp
TraceFrequencyInlining OpenJDK6 bool runtime false develop Trace frequency based inlining share/runtime/globals.hpp
TraceGCTaskManager OpenJDK6 bool gc false develop Trace actions of the GC task manager share/gc/parallel/
parallel_globals.hpp
TraceGCTaskQueue OpenJDK6 bool gc false develop Trace actions of the GC task queues share/gc/parallel/
parallel_globals.hpp
TraceICBuffer OpenJDK6 bool runtime false develop Trace usage of IC buffer share/runtime/globals.hpp
TraceICs OpenJDK6 bool runtime false develop Trace inline cache changes share/runtime/globals.hpp
TraceInlineCacheClearing OpenJDK6 bool runtime false develop Trace clearing of inline caches in nmethods share/runtime/globals.hpp
TraceInvocationCounterOverflow OpenJDK6 bool runtime false notproduct Trace method invocation counter overflow share/runtime/globals.hpp
Obsoleted
TraceInvokeDynamic OpenJDK6 in JDK16 bool runtime false develop trace internal invoke dynamic operations share/runtime/globals.hpp
Expired in
JDK17
TraceIterativeGVN OpenJDK6 bool c2 false develop Print progress during Iterative Global Value Numbering share/opto/c2_globals.hpp
Obsoleted
TraceJVMTIObjectTagging OpenJDK6 in JDK16 bool runtime false diagnostic Trace JVMTI object tagging calls share/runtime/globals.hpp
Expired in
JDK17
TraceJVMTI OpenJDK6 ccstr runtime NULL product Trace flags for JVMTI functions and events share/runtime/globals.hpp
TraceJavaAssertions OpenJDK6 bool runtime false develop Trace java language assertions share/runtime/globals.hpp
TraceLinearScanLevel OpenJDK6 intx c1 0 develop Debug levels for the linear scan allocator share/c1/c1_globals.hpp
range(0, 4)
TraceLivenessGen OpenJDK6 bool runtime false develop Trace the generation of liveness analysis information share/runtime/globals.hpp
TraceLivenessQuery OpenJDK6 bool runtime false notproduct Trace queries of liveness analysis information share/runtime/globals.hpp
Print out every time compilation is longer than
TraceLongCompiles OpenJDK6 bool runtime false develop a given threshold share/runtime/globals.hpp
TraceLoopLimitCheck OpenJDK6 bool c2 false develop Trace generation of loop limits checks share/opto/c2_globals.hpp
TraceLoopOpts OpenJDK6 bool c2 false develop Trace executed loop optimizations share/opto/c2_globals.hpp
TraceLoopPredicate OpenJDK6 bool c2 false develop Trace generation of loop predicates share/opto/c2_globals.hpp
TraceLoopUnswitching OpenJDK6 bool c2 false notproduct Trace loop unswitching share/opto/c2_globals.hpp
Obsoleted
TraceMethodHandles OpenJDK6 in JDK16 bool runtime false develop trace internal method handle operations share/runtime/globals.hpp
Expired in
JDK17
TraceMethodReplacement OpenJDK6 bool runtime false develop Print when methods are replaced do to recompilation share/runtime/globals.hpp
Deprecated
in JDK13
TraceNMethodInstalls OpenJDK6 Obsoleted bool runtime false diagnostic Trace nmethod installation share/runtime/globals.hpp
in JDK14
Expired in
JDK15
TraceNewOopMapGenerationDetailed OpenJDK6 bool runtime false develop Trace OopMapGeneration: print detailed cell states share/runtime/globals.hpp
TraceNewOopMapGeneration OpenJDK6 bool runtime false develop Trace OopMapGeneration share/runtime/globals.hpp
TraceNewVectors OpenJDK7 bool c2 false notproduct Trace creation of Vector nodes share/opto/c2_globals.hpp
TraceOnStackReplacement OpenJDK6 bool runtime false notproduct Trace on stack replacement share/runtime/globals.hpp
TraceOopMapRewrites OpenJDK6 bool runtime false develop Trace rewriting of method oops during oop map generation share/runtime/globals.hpp
TraceOptimizeFill OpenJDK6 bool c2 false develop print detailed information about fill conversion share/opto/c2_globals.hpp
TraceOptoOutput OpenJDK6 bool c2 false notproduct Trace pipelining information share/opto/c2_globals.hpp
TraceOptoParse OpenJDK6 bool c2 false develop Trace bytecode parse and control-flow merge share/opto/c2_globals.hpp
TraceOptoPipelining OpenJDK6 bool c2 false notproduct Trace pipelining information share/opto/c2_globals.hpp
TraceParallelOldGCDensePrefix OpenJDK6 bool gc false develop Trace dense prefix computation for ParallelOldGC share/gc/parallel/
parallel_globals.hpp
TraceParallelOldGCMarkingPhase OpenJDK6 bool gc false develop Trace marking phase in ParallelOldGC share/gc/parallel/
parallel_globals.hpp
TracePartialPeeling OpenJDK6 bool c2 false notproduct Trace partial peeling (loop rotation) information share/opto/c2_globals.hpp
TracePatching OpenJDK6 bool c1 false develop Trace patching of field access on uninitialized classes share/c1/c1_globals.hpp
TracePcPatching OpenJDK6 bool runtime false develop Trace usage of frame::patch_pc share/runtime/globals.hpp
TracePhaseCCP OpenJDK6 bool c2 false notproduct Print progress during Conditional Constant Propagation share/opto/c2_globals.hpp
Trace expanding nodes after
TracePostallocExpand OpenJDK8 bool c2 false develop register allocation. share/opto/c2_globals.hpp
TracePredicateFailedTraps OpenJDK8 bool c1 false develop trace runtime traps caused by predicate failure share/c1/c1_globals.hpp
Trace profiling at the bytecode level during interpretation.
TraceProfileInterpreter OpenJDK7 bool runtime false develop This outputs the profiling information collected to improve share/runtime/globals.hpp
jit compilation.
TraceProfileTripCount OpenJDK6 bool c2 false notproduct Trace profile loop trip count information share/opto/c2_globals.hpp
TraceRangeCheckElimination OpenJDK8 bool c1 false develop Trace Range Check Elimination share/c1/c1_globals.hpp
TraceRangeLimitCheck OpenJDK6 bool c2 false develop Trace additional overflow checks in RCE share/opto/c2_globals.hpp
TraceRelocator OpenJDK6 bool runtime false develop Trace the bytecode relocator share/runtime/globals.hpp
TraceSpilling OpenJDK6 bool c2 false diagnostic Trace spilling share/opto/c2_globals.hpp
TraceSuperWordLoopUnrollAnalysis OpenJDK9 bool c2 false notproduct Trace what Superword Level Parallelism analysis applies share/opto/c2_globals.hpp
TraceSuperWord OpenJDK6 bool c2 false notproduct Trace superword transforms share/opto/c2_globals.hpp
Obsoleted
TraceSuspendWaitFailures OpenJDK6 in JDK17 bool runtime false product Trace external suspend wait failures share/runtime/globals.hpp
Expired in
JDK18
TraceTraps OpenJDK7 bool aarch64 false product Trace all traps the signal handler cpu/aarch64/
globals_aarch64.hpp
Trace all traps the signal handler
TraceTraps OpenJDK7 bool ppc false product handles. cpu/ppc/globals_ppc.hpp
Trace all traps the signal handler
TraceTraps OpenJDK7 bool s390 false product handles. cpu/s390/globals_s390.hpp
TraceTypeProfile OpenJDK6 bool c2 false diagnostic Trace type profile share/opto/c2_globals.hpp
TraceUncollectedSpeculations OpenJDK9 bool jvmci false develop Print message when a failed speculation was not collected share/jvmci/
jvmci_globals.hpp
TrackedInitializationLimit OpenJDK6 intx c2 50 product When initializing fields, track up to this many words share/opto/c2_globals.hpp
range(0, 65535)
Obsoleted
TransmitErrorReport OpenJDK6 in JDK12 bool runtime false product Enable error report transmission on erroneous termination share/runtime/globals.hpp
Expired in
JDK13
TrapBasedICMissChecks OpenJDK7 bool ppc true product Raise and handle SIGTRAP if inline cache miss detected. cpu/ppc/globals_ppc.hpp
Raise and handle SIGTRAP if calling not entrant or zombie
TrapBasedNotEntrantChecks OpenJDK7 bool ppc true product method. cpu/ppc/globals_ppc.hpp
TrapBasedNullChecks OpenJDK7 bool aarch64 false define_pd_global cpu/aarch64/
globals_aarch64.hpp
TrapBasedNullChecks OpenJDK7 bool arm false define_pd_global // Not needed cpu/arm/globals_arm.hpp
Generate code for null checks that uses a cmp and trap
instruction raising SIGTRAP. This is only used if an access to
TrapBasedNullChecks OpenJDK7 bool runtime product_pd null (+offset) will not raise a SIGSEGV, i.e., share/runtime/globals.hpp
ImplicitNullChecks don't work (PPC64).
TrapBasedNullChecks OpenJDK7 bool ppc true define_pd_global cpu/ppc/globals_ppc.hpp
TrapBasedNullChecks OpenJDK7 bool s390 true define_pd_global cpu/s390/globals_s390.hpp
TrapBasedNullChecks OpenJDK7 bool sparc false define_pd_global // Not needed on sparc. cpu/sparc/globals_sparc.hpp
TrapBasedNullChecks OpenJDK7 bool x86 false define_pd_global // Not needed on x86. cpu/x86/globals_x86.hpp
TrapBasedNullChecks OpenJDK7 bool zero false define_pd_global cpu/zero/globals_zero.hpp
TrapBasedRangeChecks OpenJDK7 bool aarch64 false define_pd_global // Not needed. cpu/aarch64/
c2_globals_aarch64.hpp
Generate code for range checks that uses a cmp and trap
TrapBasedRangeChecks OpenJDK7 bool c2 product_pd instruction raising SIGTRAP. Used on PPC64. share/opto/c2_globals.hpp
TrapBasedRangeChecks OpenJDK7 bool ppc true define_pd_global cpu/ppc/c2_globals_ppc.hpp
TrapBasedRangeChecks OpenJDK7 bool s390 false define_pd_global // Not needed on z/Architecture. cpu/s390/
c2_globals_s390.hpp
TrapBasedRangeChecks OpenJDK7 bool sparc false define_pd_global // Not needed on sparc. cpu/sparc/
c2_globals_sparc.hpp
TrapBasedRangeChecks OpenJDK7 bool x86 false define_pd_global // Not needed on x86. cpu/x86/c2_globals_x86.hpp
TrustFinalNonStaticFields OpenJDK6 bool runtime false experimental trust final non-static declarations for constant folding share/runtime/globals.hpp
TwoOperandLIRForm OpenJDK6 bool aarch64 false define_pd_global cpu/aarch64/
c1_globals_aarch64.hpp
TwoOperandLIRForm OpenJDK6 bool arm false define_pd_global cpu/arm/c1_globals_arm.hpp
TwoOperandLIRForm OpenJDK6 bool c1 develop_pd true if LIR requires src1 and dst to match in binary LIR ops share/c1/c1_globals.hpp
TwoOperandLIRForm OpenJDK6 bool ppc false define_pd_global cpu/ppc/c1_globals_ppc.hpp
TwoOperandLIRForm OpenJDK6 bool s390 true define_pd_global cpu/s390/
c1_globals_s390.hpp
TwoOperandLIRForm OpenJDK6 bool sparc false define_pd_global cpu/sparc/
c1_globals_sparc.hpp
TwoOperandLIRForm OpenJDK6 bool x86 true define_pd_global cpu/x86/c1_globals_x86.hpp
TypeProfileArgsLimit OpenJDK8 intx runtime 2 product max number of call arguments to consider for type profiling share/runtime/globals.hpp
range(0, 16)
TypeProfileCasts OpenJDK6 bool runtime true develop treat casts like calls for purposes of type profiling share/runtime/globals.hpp
TypeProfileLevel OpenJDK8 uintx aarch64 111 define_pd_global cpu/aarch64/
globals_aarch64.hpp
TypeProfileLevel OpenJDK8 uintx arm 0 define_pd_global cpu/arm/globals_arm.hpp
=XYZ, with Z: Type profiling of arguments at call;
Y: Type profiling of return value at call;
TypeProfileLevel OpenJDK8 uintx runtime product_pd X: Type profiling of parameters to methods; share/runtime/globals.hpp
X, Y and Z in 0=off ; 1=jsr292 only; 2=all methods
TypeProfileLevel OpenJDK8 uintx ppc 111 define_pd_global cpu/ppc/globals_ppc.hpp
TypeProfileLevel OpenJDK8 uintx s390 111 define_pd_global cpu/s390/globals_s390.hpp
TypeProfileLevel OpenJDK8 uintx sparc 111 define_pd_global cpu/sparc/globals_sparc.hpp
TypeProfileLevel OpenJDK8 uintx x86 111 define_pd_global cpu/x86/globals_x86.hpp
TypeProfileLevel OpenJDK8 uintx zero 0 define_pd_global cpu/zero/globals_zero.hpp
TypeProfileMajorReceiverPercent OpenJDK6 intx c2 90 product % of major receiver type to all profiled receivers share/opto/c2_globals.hpp
range(0, 100)
2 max number of incoming parameters to consider for type profiling
TypeProfileParmsLimit OpenJDK8 intx runtime range(-1, 64) product , -1 for all share/runtime/globals.hpp
TypeProfileWidth OpenJDK6 intx runtime 2 product Number of receiver types to record in call/cast profile share/runtime/globals.hpp
range(0, 8)
UncommonNullCast OpenJDK6 bool aarch64 true define_pd_global // Uncommon-trap NULLs past to check cast cpu/aarch64/
globals_aarch64.hpp
UncommonNullCast OpenJDK6 bool arm true define_pd_global // Uncommon-trap NULLs past to check cast cpu/arm/globals_arm.hpp
UncommonNullCast OpenJDK6 bool runtime develop_pd track occurrences of null in casts; adjust compiler tactics share/runtime/globals.hpp
UncommonNullCast OpenJDK6 bool ppc true define_pd_global // Uncommon-trap NULLs passed to check cast. cpu/ppc/globals_ppc.hpp
UncommonNullCast OpenJDK6 bool s390 true define_pd_global // Uncommon-trap NULLs passed to check cast. cpu/s390/globals_s390.hpp
UncommonNullCast OpenJDK6 bool sparc true define_pd_global // Uncommon-trap NULLs passed to check cast cpu/sparc/globals_sparc.hpp
UncommonNullCast OpenJDK6 bool x86 true define_pd_global // Uncommon-trap NULLs passed to check cast cpu/x86/globals_x86.hpp
UncommonNullCast OpenJDK6 bool zero true define_pd_global cpu/zero/globals_zero.hpp
Unguard page and retry on no-execute fault (Win32 only)
UnguardOnExecutionViolation OpenJDK6 intx runtime 0 product share/runtime/globals.hpp
range(0, 2) 0=off, 1=conservative, 2=aggressive
Deprecated
in JDK11
UnlinkSymbolsALot OpenJDK6 Obsoleted bool runtime false product Unlink unreferenced symbols from the symbol table at safepoints share/runtime/globals.hpp
in JDK12
Expired in
JDK13
UnlockDiagnosticVMOptions OpenJDK6 bool runtime trueInDebug diagnostic Enable normal processing of flags relating to field diagnostics share/runtime/globals.hpp
Enable normal processing of flags relating to experimental
UnlockExperimentalVMOptions OpenJDK6 bool runtime false experimental features share/runtime/globals.hpp
Don't use profile_trip_cnt() to restrict unrolling until
1 unrolling would push the number of unrolled iterations above
UnrollLimitForProfileCheck OpenJDK6 intx c2 range(0, max_intx) develop UnrollLimitForProfileCheck. A higher value allows more share/opto/c2_globals.hpp
unrolling. Zero acts as a very large value.
Use24BitFPMode OpenJDK6 bool c2 true develop Set 24-bit FPU mode on a per-compile basis share/opto/c2_globals.hpp
Use24BitFP OpenJDK6 bool c2 true develop use FP instructions that produce 24-bit precise results share/opto/c2_globals.hpp
Use64KPagesThreshold OpenJDK9 uintx aix 0 develop 4K/64K page allocation threshold. os/aix/globals_aix.hpp
Use64KPages OpenJDK9 bool aix true product Use 64K pages if available. os/aix/globals_aix.hpp
UseAESCTRIntrinsics OpenJDK9 bool runtime false diagnostic Use intrinsics for the paralleled version of AES/CTR crypto share/runtime/globals.hpp
UseAESIntrinsics OpenJDK7 bool runtime false diagnostic Use intrinsics for AES versions of crypto share/runtime/globals.hpp
UseAES OpenJDK7 bool runtime false product Control whether AES instructions are used when available share/runtime/globals.hpp
UseAOTStrictLoading OpenJDK9 bool runtime false diagnostic Exit the VM if any of the AOT libraries has invalid config share/runtime/globals.hpp
UseAOT OpenJDK9 bool runtime false experimental Use AOT compiled files share/runtime/globals.hpp
UseAVX OpenJDK6 intx x86 3 product Highest supported AVX instructions set on x86/x64 cpu/x86/globals_x86.hpp
range(0, 99)
Obsoleted
UseAdaptiveGCBoundary OpenJDK6 in JDK15 bool gc false product Allow young-old boundary to move share/gc/shared/
Expired in gc_globals.hpp
JDK16
Obsoleted
UseAdaptiveGenerationSizePolicyAtMajorCollection OpenJDK6 in JDK26 bool gc true product Use adaptive young-old sizing policies at major collections share/gc/shared/
Expired in gc_globals.hpp
JDK27
Obsoleted
UseAdaptiveGenerationSizePolicyAtMinorCollection OpenJDK6 in JDK26 bool gc true product Use adaptive young-old sizing policies at minor collections share/gc/shared/
Expired in gc_globals.hpp
JDK27
UseAdaptiveNUMAChunkSizing OpenJDK6 bool runtime true product Enable adaptive chunk sizing for NUMA share/runtime/globals.hpp
Obsoleted
UseAdaptiveSizeDecayMajorGCCost OpenJDK6 in JDK26 bool gc true product Adaptive size decays the major cost for long major intervals share/gc/shared/
Expired in gc_globals.hpp
JDK27
Obsoleted
UseAdaptiveSizePolicyFootprintGoal OpenJDK6 in JDK26 bool gc true product Use adaptive minimum footprint as a goal share/gc/shared/
Expired in gc_globals.hpp
JDK27
Obsoleted
UseAdaptiveSizePolicyWithSystemGC OpenJDK6 in JDK26 bool gc false product Include statistics from System.gc() for adaptive size policy share/gc/shared/
Expired in gc_globals.hpp
JDK27
UseAdaptiveSizePolicy OpenJDK6 bool gc true product Use adaptive generation sizing policies share/gc/shared/
gc_globals.hpp
UseAddressNop OpenJDK6 bool x86 false product Use '0F 1F [addr]' NOP instructions on x86 cpus cpu/x86/globals_x86.hpp
UseAdler32Intrinsics OpenJDK9 bool runtime false diagnostic use intrinsics for java.util.zip.Adler32 share/runtime/globals.hpp
UseBASE64Intrinsics OpenJDK11 bool runtime false product Use intrinsics for java.util.Base64 share/runtime/globals.hpp
UseBMI1Instructions OpenJDK8 bool x86 false product Use BMI1 instructions cpu/x86/globals_x86.hpp
UseBMI2Instructions OpenJDK8 bool x86 false product Use BMI2 instructions cpu/x86/globals_x86.hpp
Obsoleted
UseBarriersForVolatile OpenJDK9 in JDK15 bool aarch64 false product Use memory barriers to implement volatile accesses cpu/aarch64/
Expired in globals_aarch64.hpp
JDK16
Deprecated
in JDK15
UseBiasedLocking OpenJDK6 Obsoleted bool runtime true product Enable biased locking in JVM share/runtime/globals.hpp
in JDK18
Expired in
JDK19
UseBimorphicInlining OpenJDK6 bool c2 true product Profiling based inlining for two receivers share/opto/c2_globals.hpp
UseBlockCopy OpenJDK6 bool sparc false product Use special cpu instructions for block copy cpu/sparc/globals_sparc.hpp
UseBlockZeroing OpenJDK6 bool aarch64 true product Use DC ZVA for block zeroing cpu/aarch64/
globals_aarch64.hpp
UseBlockZeroing OpenJDK6 bool sparc false product Use special cpu instructions for block zeroing cpu/sparc/globals_sparc.hpp
0: when resolving InDy or ConDy, force all BSM arguments to be
resolved before the bootstrap method is called; 1: when a BSM
that may accept a BootstrapCallInfo is detected, use that API
UseBootstrapCallInfo OpenJDK11 int runtime 1 diagnostic to pass BSM arguments, which allows the BSM to delay their share/runtime/globals.hpp
resolution; 2+: stress test the BCI API by calling more BSMs
via that API, instead of with the eagerly-resolved array.
Obsoleted
UseBsdPosixThreadCPUClocks OpenJDK6 in JDK16 bool bsd true product enable fast Bsd Posix clocks where available os/bsd/globals_bsd.hpp
Expired in
JDK17
UseByteReverseInstruction OpenJDK9 bool s390 true product Use byte reverse instruction. cpu/s390/globals_s390.hpp
UseByteReverseInstructions OpenJDK11 bool ppc false product Use byte reverse instructions. cpu/ppc/globals_ppc.hpp
UseC1Optimizations OpenJDK6 bool c1 true develop Turn on C1 optimizations share/c1/c1_globals.hpp
UseCASForSwap OpenJDK6 bool sparc false develop Do not use swap instructions, but only CAS (in a loop) on SPARC cpu/sparc/globals_sparc.hpp
UseCBCond OpenJDK6 bool sparc false product Use compare and branch instruction on SPARC cpu/sparc/globals_sparc.hpp
UseCHA OpenJDK6 bool runtime true develop Enable CHA share/runtime/globals.hpp
UseCISCSpill OpenJDK6 bool aarch64 false define_pd_global cpu/aarch64/
c2_globals_aarch64.hpp
UseCISCSpill OpenJDK6 bool c2 develop_pd Use ADLC supplied cisc instructions during allocation share/opto/c2_globals.hpp
UseCISCSpill OpenJDK6 bool ppc false define_pd_global cpu/ppc/c2_globals_ppc.hpp
UseCISCSpill OpenJDK6 bool s390 true define_pd_global cpu/s390/
c2_globals_s390.hpp
UseCISCSpill OpenJDK6 bool sparc false define_pd_global cpu/sparc/
c2_globals_sparc.hpp
UseCISCSpill OpenJDK6 bool x86 true define_pd_global cpu/x86/c2_globals_x86.hpp
UseCLMUL OpenJDK8 bool x86 false product Control whether CLMUL instructions can be used on x86/x64 cpu/x86/globals_x86.hpp
Obsoleted
UseCMSBestFit OpenJDK6 in JDK14 bool gc true product Use CMS best fit allocation strategy share/gc/cms/
Expired in cms_globals.hpp
JDK15
Obsoleted
UseCMSInitiatingOccupancyOnly OpenJDK6 in JDK14 bool gc false product Only use occupancy as a criterion for starting a CMS collection share/gc/cms/
Expired in cms_globals.hpp
JDK15
UseCMoveUnconditionally OpenJDK9 bool c2 false product Use CMove (scalar and vector) ignoring profitability test. share/opto/c2_globals.hpp
UseCRC32CIntrinsics OpenJDK9 bool runtime false diagnostic use intrinsics for java.util.zip.CRC32C share/runtime/globals.hpp
UseCRC32Intrinsics OpenJDK8 bool runtime false diagnostic use intrinsics for java.util.zip.CRC32 share/runtime/globals.hpp
UseCRC32 OpenJDK9 bool aarch64 false product Use CRC32 instructions for CRC32 computation cpu/aarch64/
globals_aarch64.hpp
UseCharacterCompareIntrinsics OpenJDK11 bool c2 false diagnostic Enables intrinsification of java.lang.Character functions share/opto/c2_globals.hpp
Obsoleted
UseCodeAging OpenJDK9 in JDK20 bool runtime true product Insert counter to detect warm methods share/runtime/globals.hpp
Expired in
JDK21
UseCodeCacheFlushing OpenJDK6 bool runtime true product Remove cold/old nmethods from the code cache share/runtime/globals.hpp
UseCompiler OpenJDK6 bool runtime true product Use Just-In-Time compilation share/runtime/globals.hpp
Deprecated Use 32-bit class pointers in 64-bit VM.
UseCompressedClassPointers OpenJDK8 in JDK25 bool runtime false lp64_product lp64_product means flag is always constant in 32 bit VM share/runtime/globals.hpp
Obsoleted
in JDK27
Use 32-bit object references in 64-bit VM.
UseCompressedOops OpenJDK6 bool runtime false lp64_product lp64_product means flag is always constant in 32 bit VM share/runtime/globals.hpp
Obsoleted
UseConcMarkSweepGC OpenJDK6 in JDK14 bool gc false product Use Concurrent Mark-Sweep GC in the old generation share/gc/shared/
Expired in gc_globals.hpp
JDK15
UseCondCardMark OpenJDK6 bool gc false product Check for already marked card before updating card table share/gc/shared/
gc_globals.hpp
Deprecated
in JDK19 Include CPU shares in the CPU availability
UseContainerCpuShares OpenJDK11 Obsoleted bool linux false product calculation. os/linux/globals_linux.hpp
in JDK20
Expired in
JDK21
UseContainerSupport OpenJDK10 bool linux true product Enable detection and runtime container configuration support os/linux/globals_linux.hpp
UseCopySignIntrinsic OpenJDK11 bool runtime false diagnostic Enables intrinsification of Math.copySign share/runtime/globals.hpp
UseCountLeadingZerosInstruction OpenJDK6 bool x86 false product Use count leading zeros instruction cpu/x86/globals_x86.hpp
UseCountLeadingZerosInstructionsPPC64 OpenJDK7 bool ppc true product Use count leading zeros instructions. cpu/ppc/globals_ppc.hpp
UseCountTrailingZerosInstruction OpenJDK8 bool x86 false product Use count trailing zeros instruction cpu/x86/globals_x86.hpp
UseCountTrailingZerosInstructionsPPC64 OpenJDK11 bool ppc false product Use count trailing zeros instructions. cpu/ppc/globals_ppc.hpp
UseCountedLoopSafepoints OpenJDK7 bool c2 false product Force counted loops to keep a safepoint share/opto/c2_globals.hpp
Obsoleted
UseCounterDecay OpenJDK6 in JDK22 bool runtime true product Adjust recompilation counters share/runtime/globals.hpp
Expired in
JDK23
UseCpuAllocPath OpenJDK9 bool linux false diagnostic Use CPU_ALLOC code path in os::active_processor_count os/linux/globals_linux.hpp
UseCriticalCMSThreadPriority OpenJDK6 bool runtime false experimental ConcurrentMarkSweep thread runs at critical scheduling priority share/runtime/globals.hpp
UseCriticalCompilerThreadPriority OpenJDK6 bool runtime false experimental Compiler thread(s) run at critical scheduling priority share/runtime/globals.hpp
UseCriticalJavaThreadPriority OpenJDK6 bool runtime false experimental Java thread priority 10 maps to critical scheduling priority share/runtime/globals.hpp
Use detached threads that are recycled upon termination
UseDetachedThreads OpenJDK6 bool runtime true develop (for Solaris only) share/runtime/globals.hpp
UseDivMod OpenJDK6 bool c2 true product Use combined DivMod instruction if available share/opto/c2_globals.hpp
UseDynamicNumberOfCompilerThreads OpenJDK11 bool runtime true product Dynamically choose the number of parallel compiler threads share/runtime/globals.hpp
Dynamically choose the number of threads up to a maximum of
UseDynamicNumberOfGCThreads OpenJDK6 bool gc true product ParallelGCThreads parallel collectors will use for garbage share/gc/shared/
collection work gc_globals.hpp
UseEpsilonGC OpenJDK11 bool gc false experimental Use the Epsilon (no-op) garbage collector share/gc/shared/
gc_globals.hpp
UseExactTypes OpenJDK6 bool c2 true develop Use exact types to eliminate array store checks and v-calls share/opto/c2_globals.hpp
UseExplicitCommit OpenJDK9 bool aix false product Explicit commit for virtual memory. os/aix/globals_aix.hpp
UseExtendedFileIO OpenJDK6 bool solaris true product Enable workaround for limitations of stdio FILE structure os/solaris/
globals_solaris.hpp
UseExtendedLoadAndReserveInstructionsPPC64 OpenJDK7 bool ppc false product Use extended versions of load-and-reserve instructions. cpu/ppc/globals_ppc.hpp
UseFMA OpenJDK9 bool runtime false product Control whether FMA instructions are used when available share/runtime/globals.hpp
UseFPUForSpilling OpenJDK6 bool c2 false product Spill integer registers to FPU instead of stack when possible share/opto/c2_globals.hpp
UseFakeTimers OpenJDK6 bool runtime false develop Tell whether the VM should use system time or a fake timer share/runtime/globals.hpp
UseFastAccessorMethods OpenJDK6 bool zero true product Use fast method entry code for accessor methods cpu/zero/globals_zero.hpp
UseFastEmptyMethods OpenJDK6 bool zero true product Use fast method entry code for empty methods cpu/zero/globals_zero.hpp
UseFastJNIAccessors OpenJDK6 bool runtime true product Use optimized versions of GetField share/runtime/globals.hpp
UseFastLocking OpenJDK6 bool c1 true develop Use fast inlined locking code share/c1/c1_globals.hpp
UseFastNewInstance OpenJDK6 bool c1 true develop Use fast inlined instance allocation share/c1/c1_globals.hpp
UseFastNewObjectArray OpenJDK6 bool c1 true develop Use fast inlined object array allocation share/c1/c1_globals.hpp
UseFastNewTypeArray OpenJDK6 bool c1 true develop Use fast inlined type array allocation share/c1/c1_globals.hpp
UseFastSignatureHandlers OpenJDK6 bool runtime true develop Use fast signature handlers for native calls share/runtime/globals.hpp
UseFastStosb OpenJDK7 bool x86 false product Use fast-string operation for zeroing: rep stosb cpu/x86/globals_x86.hpp
UseFastUnorderedTimeStamps OpenJDK11 bool runtime false experimental Use platform unstable time where supported for timestamps only share/runtime/globals.hpp
UseG1GC OpenJDK6 bool gc false product Use the Garbage-First garbage collector share/gc/shared/
gc_globals.hpp
Use policy to limit of proportion of time spent in GC share/gc/shared/
UseGCOverheadLimit OpenJDK6 bool gc true product before an OutOfMemory error is thrown gc_globals.hpp
Obsoleted
UseGCTaskAffinity OpenJDK6 in JDK14 bool gc false product Use worker affinity when asking for GCTasks share/gc/shared/
Expired in gc_globals.hpp
JDK16
UseGHASHIntrinsics OpenJDK9 bool runtime false diagnostic Use intrinsics for GHASH versions of crypto share/runtime/globals.hpp
UseGlobalValueNumbering OpenJDK6 bool c1 true develop Use Global Value Numbering (separate phase) share/c1/c1_globals.hpp
Deprecated
in JDK18
UseHeavyMonitors OpenJDK6 Obsoleted bool runtime false product use heavyweight instead of lightweight Java monitors share/runtime/globals.hpp
in JDK19
Expired in
JDK20
Obsoleted
UseHugeTLBFS OpenJDK6 in JDK22 bool bsd false product Use MAP_HUGETLB for large pages os/bsd/globals_bsd.hpp
Expired in
JDK23
Obsoleted
UseHugeTLBFS OpenJDK6 in JDK22 bool linux false product Use MAP_HUGETLB for large pages os/linux/globals_linux.hpp
Expired in
JDK23
Obsoleted
UseImplicitStableValues OpenJDK8 in JDK13 bool c2 true diagnostic Mark well-known stable fields as such (e.g. String.value) share/opto/c2_globals.hpp
Expired in
JDK14
UseIncDec OpenJDK6 bool x86 true diagnostic Use INC, DEC instructions on x86 cpu/x86/globals_x86.hpp
UseInlineCaches OpenJDK6 bool runtime true product Use Inline Caches for virtual calls share/runtime/globals.hpp
Carry inline depth of profile point with speculative type
UseInlineDepthForSpeculativeTypes OpenJDK8 bool c2 true diagnostic and give priority to profiling from lower inline depth share/opto/c2_globals.hpp
UseInterpreter OpenJDK6 bool runtime true product Use interpreter for non-compiled methods share/runtime/globals.hpp
UseJVMCICompiler OpenJDK9 bool jvmci false experimental Use JVMCI as the default compiler share/jvmci/
jvmci_globals.hpp
UseJumpTables OpenJDK6 bool c2 true product Use JumpTables instead of a binary search tree for switches share/opto/c2_globals.hpp
UseLSE OpenJDK9 bool aarch64 false product Use LSE instructions cpu/aarch64/
globals_aarch64.hpp
Obsoleted Use LWP-based instead of libthread-based synchronization
UseLWPSynchronization OpenJDK6 in JDK15 bool runtime true product (SPARC only) share/runtime/globals.hpp
Expired in
JDK16
Deprecated
in JDK15 Use large page memory in metaspace.
UseLargePagesInMetaspace OpenJDK8 Obsoleted bool runtime false product Only used if UseLargePages is enabled. share/runtime/globals.hpp
in JDK16
Expired in
JDK17
UseLargePagesIndividualAllocation OpenJDK6 bool aix false define_pd_global os/aix/globals_aix.hpp
UseLargePagesIndividualAllocation OpenJDK6 bool bsd false define_pd_global os/bsd/globals_bsd.hpp
UseLargePagesIndividualAllocation OpenJDK6 bool linux false define_pd_global os/linux/globals_linux.hpp
UseLargePagesIndividualAllocation OpenJDK6 bool runtime product_pd Allocate large pages individually for better affinity share/runtime/globals.hpp
UseLargePagesIndividualAllocation OpenJDK6 bool solaris false define_pd_global os/solaris/
globals_solaris.hpp
UseLargePagesIndividualAllocation OpenJDK6 bool windows true define_pd_global os/windows/
globals_windows.hpp
UseLargePages OpenJDK6 bool aix false define_pd_global os/aix/globals_aix.hpp
UseLargePages OpenJDK6 bool bsd false define_pd_global os/bsd/globals_bsd.hpp
UseLargePages OpenJDK6 bool linux false define_pd_global os/linux/globals_linux.hpp
UseLargePages OpenJDK6 bool runtime product_pd Use large page memory share/runtime/globals.hpp
UseLargePages OpenJDK6 bool solaris true define_pd_global os/solaris/
globals_solaris.hpp
UseLargePages OpenJDK6 bool windows false define_pd_global os/windows/
globals_windows.hpp
UseLegacyJNINameEscaping OpenJDK11 bool runtime false product Use the original JNI name escaping scheme share/runtime/globals.hpp
UseLibmIntrinsic OpenJDK9 bool x86 true diagnostic Use Libm Intrinsics cpu/x86/globals_x86.hpp
Deprecated
in JDK24
UseLinuxPosixThreadCPUClocks OpenJDK6 Obsoleted bool linux true product enable fast Linux Posix clocks where available os/linux/globals_linux.hpp
in JDK25
Expired in
JDK26
UseLoadInstructionsForStackBangingPPC64 OpenJDK7 bool ppc false product Use load instructions for stack banging. cpu/ppc/globals_ppc.hpp
UseLocalValueNumbering OpenJDK6 bool c1 true develop Use Local Value Numbering (embedded in GraphBuilder) share/c1/c1_globals.hpp
UseLoopCounter OpenJDK6 bool runtime true product Increment invocation counter on backward branch share/runtime/globals.hpp
UseLoopInvariantCodeMotion OpenJDK8 bool c1 true product Simple loop invariant code motion for short loops during GVN share/c1/c1_globals.hpp
UseLoopPredicate OpenJDK6 bool c2 true product Generate a predicate to select fast/slow loop versions share/opto/c2_globals.hpp
UseLoopSafepoints OpenJDK6 bool runtime true develop Generate Safepoint nodes in every loop share/runtime/globals.hpp
UseMPMUL OpenJDK10 bool sparc false product Use multi-precision multiply instruction (mpmul) on SPARC cpu/sparc/globals_sparc.hpp
UseMallocOnly OpenJDK6 bool runtime false develop Use only malloc/free for allocation (no resource area/arena) share/runtime/globals.hpp
UseMathExactIntrinsics OpenJDK8 bool c2 true diagnostic Enables intrinsification of various java.lang.Math functions share/opto/c2_globals.hpp
Use maximum compaction in the Parallel Old garbage collector share/gc/parallel/
UseMaximumCompactionOnSystemGC OpenJDK6 bool gc true product for a system GC parallel_globals.hpp
Deprecated
UseMembar OpenJDK6 in JDK10 bool aarch64 true define_pd_global cpu/aarch64/
Obsoleted globals_aarch64.hpp
in JDK12
Deprecated
UseMembar OpenJDK6 in JDK10 bool arm true define_pd_global cpu/arm/globals_arm.hpp
Obsoleted
in JDK12
Deprecated
UseMembar OpenJDK6 in JDK10 bool runtime product_pd (Unstable) Issues membars on thread state transitions share/runtime/globals.hpp
Obsoleted
in JDK12
Deprecated
UseMembar OpenJDK6 in JDK10 bool ppc true define_pd_global cpu/ppc/globals_ppc.hpp
Obsoleted
in JDK12
Deprecated
UseMembar OpenJDK6 in JDK10 bool s390 true define_pd_global cpu/s390/globals_s390.hpp
Obsoleted
in JDK12
Deprecated
UseMembar OpenJDK6 in JDK10 bool sparc true define_pd_global cpu/sparc/globals_sparc.hpp
Obsoleted
in JDK12
Deprecated
UseMembar OpenJDK6 in JDK10 bool x86 true define_pd_global cpu/x86/globals_x86.hpp
Obsoleted
in JDK12
Deprecated
UseMembar OpenJDK6 in JDK10 bool zero true define_pd_global cpu/zero/globals_zero.hpp
Obsoleted
in JDK12
UseMontgomeryMultiplyIntrinsic OpenJDK8 bool c2 false diagnostic Enables intrinsification of BigInteger.montgomeryMultiply() share/opto/c2_globals.hpp
UseMontgomerySquareIntrinsic OpenJDK8 bool c2 false diagnostic Enables intrinsification of BigInteger.montgomerySquare() share/opto/c2_globals.hpp
UseMulAddIntrinsic OpenJDK8 bool c2 false diagnostic Enables intrinsification of BigInteger.mulAdd() share/opto/c2_globals.hpp
UseMultiplyToLenIntrinsic OpenJDK8 bool c2 false diagnostic Enables intrinsification of BigInteger.multiplyToLen() share/opto/c2_globals.hpp
UseNUMAInterleaving OpenJDK6 bool runtime false product Interleave memory across NUMA nodes if available share/runtime/globals.hpp
UseNUMA OpenJDK6 bool runtime false product Use NUMA if available share/runtime/globals.hpp
Obsoleted
UseNeon OpenJDK9 in JDK23 bool aarch64 false product Use Neon for CRC32 computation cpu/aarch64/
Expired in globals_aarch64.hpp
JDK24
UseNewCode2 OpenJDK6 bool runtime false diagnostic Testing Only: Use the new version while testing share/runtime/globals.hpp
UseNewCode3 OpenJDK6 bool runtime false diagnostic Testing Only: Use the new version while testing share/runtime/globals.hpp
UseNewCode OpenJDK6 bool runtime false diagnostic Testing Only: Use the new version while testing share/runtime/globals.hpp
Obsoleted
UseNewLongLShift OpenJDK6 in JDK27 bool x86 false product Use optimized bitwise shift left cpu/x86/globals_x86.hpp
Expired in
JDK28
UseNiagaraInstrs OpenJDK6 bool sparc false product Use Niagara-efficient instruction subset cpu/sparc/globals_sparc.hpp
UseOSErrorReporting OpenJDK6 bool aix false define_pd_global os/aix/globals_aix.hpp
UseOSErrorReporting OpenJDK6 bool bsd false define_pd_global os/bsd/globals_bsd.hpp
UseOSErrorReporting OpenJDK6 bool linux false define_pd_global os/linux/globals_linux.hpp
UseOSErrorReporting OpenJDK6 bool runtime product_pd Let VM fatal error propagate to the OS (ie. WER on Windows) share/runtime/globals.hpp
UseOSErrorReporting OpenJDK6 bool solaris false define_pd_global os/solaris/
globals_solaris.hpp
UseOSErrorReporting OpenJDK6 bool windows false define_pd_global // for now. os/windows/
globals_windows.hpp
UseOnStackReplacement OpenJDK6 bool aarch64 true define_pd_global cpu/aarch64/
c1_globals_aarch64.hpp
UseOnStackReplacement OpenJDK6 bool arm true define_pd_global cpu/arm/c1_globals_arm.hpp
Use on stack replacement, calls runtime if invoc. counter
UseOnStackReplacement OpenJDK6 bool runtime product_pd overflows in loop share/runtime/globals.hpp
UseOnStackReplacement OpenJDK6 bool ppc true define_pd_global cpu/ppc/c2_globals_ppc.hpp
UseOnStackReplacement OpenJDK6 bool s390 true define_pd_global cpu/s390/
c1_globals_s390.hpp
UseOnStackReplacement OpenJDK6 bool sparc true define_pd_global cpu/sparc/
c2_globals_sparc.hpp
UseOnStackReplacement OpenJDK6 bool x86 true define_pd_global cpu/x86/c1_globals_x86.hpp
UseOnlyInlinedBimorphic OpenJDK6 bool c2 true product Don't use BimorphicInlining if can't inline a second method share/opto/c2_globals.hpp
Deprecated
in JDK25
UseOprofile OpenJDK6 Obsoleted bool bsd false product enable support for Oprofile profiler os/bsd/globals_bsd.hpp
in JDK26
Expired in
JDK27
Deprecated
in JDK25
UseOprofile OpenJDK6 Obsoleted bool linux false product enable support for Oprofile profiler os/linux/globals_linux.hpp
in JDK26
Expired in
JDK27
Deprecated
in JDK15
UseOptoBiasInlining OpenJDK6 Obsoleted bool c2 true product Generate biased locking code in C2 ideal graph share/opto/c2_globals.hpp
in JDK18
Expired in
JDK19
Obsoleted
UsePSAdaptiveSurvivorSizePolicy OpenJDK6 in JDK26 bool gc true product Use adaptive survivor sizing policies share/gc/shared/
Expired in gc_globals.hpp
JDK27
UseParallelGC OpenJDK6 bool gc false product Use the Parallel Scavenge garbage collector share/gc/shared/
gc_globals.hpp
Deprecated
in JDK14
UseParallelOldGC OpenJDK6 Obsoleted bool gc false product Use the Parallel Old garbage collector share/gc/shared/
in JDK15 gc_globals.hpp
Expired in
JDK16
Flag to disable jvmstat instrumentation for performance testing
UsePerfData OpenJDK6 bool runtime true product and problem isolation purposes share/runtime/globals.hpp
UsePopCountInstruction OpenJDK6 bool runtime false product Use population count instruction share/runtime/globals.hpp
UsePower6SchedulerPPC64 OpenJDK7 bool ppc false product Use Power6 Scheduler. cpu/ppc/globals_ppc.hpp
UsePrivilegedStack OpenJDK6 bool runtime true develop Enable the security JVM functions share/runtime/globals.hpp
UseProfiledLoopPredicate OpenJDK11 bool c2 true product move predicates out of loops based on profiling data share/opto/c2_globals.hpp
Use pthread-based instead of libthread-based synchronization
UsePthreads OpenJDK6 bool runtime false develop (SPARC only) share/runtime/globals.hpp
Obsoleted
UseRDPCForConstantTableBase OpenJDK6 in JDK16 bool c2 false product Use Sparc RDPC instruction for the constant table base. share/opto/c2_globals.hpp
Expired in
JDK17
Deprecated
in JDK23
UseRTMDeopt OpenJDK8 Obsoleted bool ppc false product Perform deopt and recompilation based on RTM abort ratio cpu/ppc/globals_ppc.hpp
in JDK24
Expired in
JDK25
Deprecated
in JDK23
UseRTMDeopt OpenJDK8 Obsoleted bool x86 false product Perform deopt and recompilation based on RTM abort ratio cpu/x86/globals_x86.hpp
in JDK24
Expired in
JDK25
UseRTMForStackLocks OpenJDK8 bool ppc false experimental Enable RTM lock eliding for stack locks in compiled code cpu/ppc/globals_ppc.hpp
UseRTMForStackLocks OpenJDK8 bool x86 false experimental Enable RTM lock eliding for stack locks in compiled code cpu/x86/globals_x86.hpp
Deprecated
in JDK23
UseRTMLocking OpenJDK8 Obsoleted bool ppc false product Enable RTM lock eliding for inflated locks in compiled code cpu/ppc/globals_ppc.hpp
in JDK24
Expired in
JDK25
Deprecated
in JDK23
UseRTMLocking OpenJDK8 Obsoleted bool x86 false product Enable RTM lock eliding for inflated locks in compiled code cpu/x86/globals_x86.hpp
in JDK24
Expired in
JDK25
UseRTMXendForLockBusy OpenJDK8 bool ppc true experimental Use RTM Xend instead of Xabort when lock busy cpu/ppc/globals_ppc.hpp
UseRTMXendForLockBusy OpenJDK8 bool x86 true experimental Use RTM Xend instead of Xabort when lock busy cpu/x86/globals_x86.hpp
UseRotateAndMaskInstructionsPPC64 OpenJDK7 bool ppc true product Use rotate and mask instructions. cpu/ppc/globals_ppc.hpp
Use intrinsics for SHA-1 crypto hash function.
UseSHA1Intrinsics OpenJDK8 bool runtime false diagnostic Requires that UseSHA is enabled. share/runtime/globals.hpp
Use intrinsics for SHA-224 and SHA-256 crypto hash functions.
UseSHA256Intrinsics OpenJDK8 bool runtime false diagnostic Requires that UseSHA is enabled. share/runtime/globals.hpp
Use intrinsics for SHA-384 and SHA-512 crypto hash functions.
UseSHA512Intrinsics OpenJDK8 bool runtime false diagnostic Requires that UseSHA is enabled. share/runtime/globals.hpp
UseSHA OpenJDK8 bool runtime false product Control whether SHA instructions are used when available share/runtime/globals.hpp
Obsoleted
UseSHM OpenJDK6 in JDK22 bool bsd false product Use SYSV shared memory for large pages os/bsd/globals_bsd.hpp
Expired in
JDK23
Obsoleted
UseSHM OpenJDK6 in JDK22 bool linux false product Use SYSV shared memory for large pages os/linux/globals_linux.hpp
Expired in
JDK23
Allow trap instructions that make use of SIGTRAP. Use this to
UseSIGTRAP OpenJDK7 bool ppc true product switch off all optimizations requiring SIGTRAP. cpu/ppc/globals_ppc.hpp
UseSIMDForArrayEquals OpenJDK11 bool aarch64 true product Use SIMD instructions in generated array equals code cpu/aarch64/
globals_aarch64.hpp
UseSIMDForMemoryOps OpenJDK9 bool aarch64 false product Use SIMD instructions in generated memory move code cpu/aarch64/
globals_aarch64.hpp
UseSSE42Intrinsics OpenJDK6 bool x86 false product SSE4.2 versions of intrinsics cpu/x86/globals_x86.hpp
Obsoleted
UseSSE OpenJDK6 in JDK15 intx runtime 99 product Highest supported SSE instructions set on x86/x64 share/runtime/globals.hpp
Expired in range(0, 99)
JDK16
Obsoleted Use semaphore synchronization for the GC Threads,
UseSemaphoreGCThreadsSynchronization OpenJDK9 in JDK16 bool gc true diagnostic instead of synchronization based on mutexes share/gc/shared/
Expired in gc_globals.hpp
JDK17
UseSerialGC OpenJDK6 bool gc false product Use the Serial garbage collector share/gc/shared/
gc_globals.hpp
Deprecated
UseSharedSpaces OpenJDK6 in JDK18 bool runtime true product Use shared spaces for metadata share/runtime/globals.hpp
Obsoleted
in JDK19
Use signal-chaining to invoke signal handlers installed
UseSignalChaining OpenJDK6 bool runtime true product by the application (Solaris & Linux only) share/runtime/globals.hpp
UseSignumIntrinsic OpenJDK11 bool runtime false diagnostic Enables intrinsification of Math.signum share/runtime/globals.hpp
UseSimpleArrayEquals OpenJDK11 bool aarch64 false product Use simpliest and shortest implementation for array equals cpu/aarch64/
globals_aarch64.hpp
UseSlowPath OpenJDK6 bool c1 false develop For debugging: test slow cases by always using them share/c1/c1_globals.hpp
UseSquareToLenIntrinsic OpenJDK8 bool c2 false diagnostic Enables intrinsification of BigInteger.squareToLen() share/opto/c2_globals.hpp
use stack banging for stack overflow checks (required for
UseStackBanging OpenJDK6 bool runtime true develop proper StackOverflow handling; disable only to measure cost share/runtime/globals.hpp
of stackbanging)
UseStaticBranchPredictionForUncommonPathsPPC64 OpenJDK7 bool ppc false product Use static branch prediction hints for uncommon paths. cpu/ppc/globals_ppc.hpp
UseStaticBranchPredictionInCompareAndSwapPPC64 OpenJDK7 bool ppc true product Use static branch prediction hints in CAS operations. cpu/ppc/globals_ppc.hpp
UseStoreImmI16 OpenJDK6 bool x86 true product Use store immediate 16-bits value instruction on x86 cpu/x86/globals_x86.hpp
UseStrictFP OpenJDK6 bool runtime true develop use strict fp if modifier strictfp is set share/runtime/globals.hpp
UseStringDeduplication OpenJDK8 bool runtime false product Use string deduplication share/runtime/globals.hpp
UseSubwordForMaxVector OpenJDK10 bool c2 true product Use Subword Analysis to set maximum vector size share/opto/c2_globals.hpp
UseSuperWord OpenJDK6 bool c2 true product Transform scalar operations into superword operations share/opto/c2_globals.hpp
UseSwitchProfiling OpenJDK11 bool runtime true diagnostic leverage profiling for table/lookup switch share/runtime/globals.hpp
UseTLAB OpenJDK6 bool aarch64 true define_pd_global cpu/aarch64/
c1_globals_aarch64.hpp
UseTLAB OpenJDK6 bool arm true define_pd_global cpu/arm/c1_globals_arm.hpp
UseTLAB OpenJDK6 bool gc product_pd Use thread-local object allocation share/gc/shared/
gc_globals.hpp
UseTLAB OpenJDK6 bool runtime false define_pd_global share/runtime/globals.hpp
UseTLAB OpenJDK6 bool ppc true define_pd_global cpu/ppc/c2_globals_ppc.hpp
UseTLAB OpenJDK6 bool s390 true define_pd_global cpu/s390/
c1_globals_s390.hpp
UseTLAB OpenJDK6 bool sparc true define_pd_global cpu/sparc/
c2_globals_sparc.hpp
UseTLAB OpenJDK6 bool x86 true define_pd_global cpu/x86/c1_globals_x86.hpp
UseTableRanges OpenJDK6 bool c1 true develop Faster versions of lookup table using ranges share/c1/c1_globals.hpp
UseThreadPriorities OpenJDK6 bool runtime product_pd Use native thread priorities share/runtime/globals.hpp
UseThreadPriorities OpenJDK6 bool solaris false define_pd_global os/solaris/
globals_solaris.hpp
UseTransparentHugePages OpenJDK7 bool linux false product Use MADV_HUGEPAGE for large pages os/linux/globals_linux.hpp
UseTypeProfile OpenJDK6 bool aarch64 false define_pd_global cpu/aarch64/
c1_globals_aarch64.hpp
UseTypeProfile OpenJDK6 bool arm false define_pd_global cpu/arm/c1_globals_arm.hpp
UseTypeProfile OpenJDK6 bool runtime true product Check interpreter profile for historically monomorphic calls share/runtime/globals.hpp
UseTypeProfile OpenJDK6 bool ppc false define_pd_global cpu/ppc/c1_globals_ppc.hpp
UseTypeProfile OpenJDK6 bool s390 false define_pd_global cpu/s390/
c1_globals_s390.hpp
UseTypeProfile OpenJDK6 bool sparc false define_pd_global cpu/sparc/
c1_globals_sparc.hpp
UseTypeProfile OpenJDK6 bool x86 false define_pd_global cpu/x86/c1_globals_x86.hpp
UseTypeSpeculation OpenJDK8 bool c2 true product Speculatively propagate types from profiles share/opto/c2_globals.hpp
UseUnalignedAccesses OpenJDK9 bool runtime false diagnostic Use unaligned memory accesses in Unsafe share/runtime/globals.hpp
UseUnalignedLoadStores OpenJDK6 bool x86 false product Use SSE2 MOVDQU instruction for Arraycopy cpu/x86/globals_x86.hpp
UseUniqueSubclasses OpenJDK6 bool c2 true develop Narrow an abstract reference to the unique concrete subclass share/opto/c2_globals.hpp
UseVIS OpenJDK6 intx sparc 99 product Highest supported VIS instructions set on SPARC cpu/sparc/globals_sparc.hpp
range(0, 99)
UseVectorCmov OpenJDK10 bool c2 false product Use Vectorized Cmov share/opto/c2_globals.hpp
UseVectorizedMismatchIntrinsic OpenJDK9 bool runtime false diagnostic Enables intrinsification of ArraysSupport.vectorizedMismatch() share/runtime/globals.hpp
Obsoleted
UseXMMForArrayCopy OpenJDK6 in JDK27 bool runtime false product Use SSE2 MOVQ instruction for Arraycopy share/runtime/globals.hpp
Expired in
JDK28
UseXMMForObjInit OpenJDK11 bool x86 false product Use XMM/YMM MOVDQU instruction for Object Initialization cpu/x86/globals_x86.hpp
UseXmmI2D OpenJDK6 bool x86 false product Use SSE2 CVTDQ2PD instruction to convert Integer to Double cpu/x86/globals_x86.hpp
UseXmmI2F OpenJDK6 bool x86 false product Use SSE2 CVTDQ2PS instruction to convert Integer to Float cpu/x86/globals_x86.hpp
UseXmmLoadAndClearUpper OpenJDK6 bool x86 true product Load low part of XMM register and clear upper part cpu/x86/globals_x86.hpp
UseXmmRegToRegMoveAll OpenJDK6 bool x86 false product Copy all XMM register bits when moving value between registers cpu/x86/globals_x86.hpp
UseZGC OpenJDK11 bool gc false experimental Use the Z garbage collector share/gc/shared/
gc_globals.hpp
Deprecated
in JDK11
VMThreadHintNoPreempt OpenJDK6 Obsoleted bool runtime false product (Solaris only) Give VM thread an extra quanta share/runtime/globals.hpp
in JDK12
Expired in
JDK13
-1 The native priority at which the VM thread should run
VMThreadPriority OpenJDK6 intx runtime range(-1, 127) product (-1 means no change) share/runtime/globals.hpp
VMThreadStackSize OpenJDK6 intx aix ppc 2048 define_pd_global os_cpu/aix_ppc/
globals_aix_ppc.hpp
VMThreadStackSize OpenJDK6 intx bsd aarch64 2048 define_pd_global os_cpu/bsd_aarch64/
globals_bsd_aarch64.hpp
VMThreadStackSize OpenJDK6 intx bsd x86 512 define_pd_global os_cpu/bsd_x86/
globals_bsd_x86.hpp
VMThreadStackSize OpenJDK6 intx bsd zero 512 define_pd_global os_cpu/bsd_zero/
globals_bsd_zero.hpp
VMThreadStackSize OpenJDK6 intx linux aarch64 2040 define_pd_global os_cpu/linux_aarch64/
globals_linux_aarch64.hpp
VMThreadStackSize OpenJDK6 intx linux arm 512 define_pd_global os_cpu/linux_arm/
globals_linux_arm.hpp
VMThreadStackSize OpenJDK6 intx linux ppc 2048 define_pd_global os_cpu/linux_ppc/
globals_linux_ppc.hpp
VMThreadStackSize OpenJDK6 intx linux s390 1024 define_pd_global os_cpu/linux_s390/
globals_linux_s390.hpp
VMThreadStackSize OpenJDK6 intx linux x86 512 define_pd_global os_cpu/linux_x86/
globals_linux_x86.hpp
VMThreadStackSize OpenJDK6 intx linux zero 512 define_pd_global os_cpu/linux_zero/
globals_linux_zero.hpp
VMThreadStackSize OpenJDK6 intx runtime product_pd Non-Java Thread Stack Size (in Kbytes) share/runtime/globals.hpp
VMThreadStackSize OpenJDK6 intx sparc 1024 define_pd_global cpu/sparc/globals_sparc.hpp
VMThreadStackSize OpenJDK6 intx solaris x86 512 define_pd_global os_cpu/solaris_x86/
globals_solaris_x86.hpp
VMThreadStackSize OpenJDK6 intx windows aarch64 0 define_pd_global os_cpu/windows_aarch64/
globals_windows_aarch64.hpp
VMThreadStackSize OpenJDK6 intx windows x86 0 define_pd_global // 0 => use system default os_cpu/windows_x86/
globals_windows_x86.hpp
ValueMapInitialSize OpenJDK6 intx c1 11 product Initial size of a value map share/c1/c1_globals.hpp
range(1, NOT_LP64(1*K) LP64_ONLY(32*K))
ValueMapMaxLoopSize OpenJDK6 intx c1 8 product maximum size of a loop optimized by global value numbering share/c1/c1_globals.hpp
range(0, 128)
ValueSearchLimit OpenJDK6 intx c2 1000 product Recursion limit in PhaseMacroExpand::value_from_mem_phi share/opto/c2_globals.hpp
range(0, max_jint)
VerboseInternalVMTests OpenJDK7 bool gc false notproduct Turn on logging for internal VM tests. share/gc/shared/
gc_globals.hpp
Verbose OpenJDK6 bool runtime false develop Print additional debugging information from other modes share/runtime/globals.hpp
Verify that activation frame didn't become smaller than its
VerifyActivationFrameSize OpenJDK6 bool runtime false develop minimal size share/runtime/globals.hpp
VerifyAdapterCalls OpenJDK7 bool runtime trueInDebug diagnostic Verify that i2c/c2i adapters are called properly share/runtime/globals.hpp
VerifyAdapterSharing OpenJDK6 bool runtime false develop Verify that the code for shared adapters is the equivalent share/runtime/globals.hpp
VerifyAfterGC OpenJDK6 bool gc false diagnostic Verify memory system after GC share/gc/shared/
gc_globals.hpp
VerifyAliases OpenJDK6 bool c2 false develop perform extra checks on the results of alias analysis share/opto/c2_globals.hpp
VerifyBeforeExit OpenJDK6 bool gc trueInDebug diagnostic Verify system before exiting share/gc/shared/
gc_globals.hpp
VerifyBeforeGC OpenJDK6 bool gc false diagnostic Verify memory system before GC share/gc/shared/
gc_globals.hpp
VerifyBeforeIteration OpenJDK6 bool runtime false diagnostic Verify memory system before JVMTI iteration share/runtime/globals.hpp
VerifyBlockOffsetArray OpenJDK6 bool gc false develop Do (expensive) block offset array verification share/gc/shared/
gc_globals.hpp
VerifyCodeCache OpenJDK9 bool runtime false notproduct Verify code cache on memory allocation/deallocation share/runtime/globals.hpp
Include miscellaneous runtime verifications in nmethod code;
VerifyCompiledCode OpenJDK6 bool runtime false develop default off because it disturbs nmethod size heuristics share/runtime/globals.hpp
VerifyConnectionGraph OpenJDK7 bool c2 true notproduct Verify Connection Graph construction in Escape Analysis share/opto/c2_globals.hpp
VerifyDUIterators OpenJDK6 bool c2 true notproduct Verify the safety of all iterations of Bi-directional Edges share/opto/c2_globals.hpp
VerifyDataPointer OpenJDK6 bool runtime trueInDebug develop Verify the method data pointer during interpreter profiling share/runtime/globals.hpp
VerifyDependencies OpenJDK6 bool runtime trueInDebug develop Exercise and verify the compilation dependency mechanism share/runtime/globals.hpp
VerifyDuringGC OpenJDK6 bool gc false diagnostic Verify memory system during GC (between phases) share/gc/shared/
gc_globals.hpp
Verify memory system before executing any Java code share/gc/shared/
VerifyDuringStartup OpenJDK7 bool gc false diagnostic during VM initialization gc_globals.hpp
VerifyFPU OpenJDK6 bool runtime false develop Verify FPU state (check for NaN's, etc.) share/runtime/globals.hpp
VerifyGCLevel OpenJDK6 intx gc 0 diagnostic Generation level at which to start +VerifyBefore/AfterGC share/gc/shared/
range(0, 1) gc_globals.hpp
VerifyGCStartAt OpenJDK6 uintx gc 0 diagnostic GC invoke count where +VerifyBefore/AfterGC kicks in share/gc/shared/
range(0, max_uintx) gc_globals.hpp
GC type(s) to verify when Verify*GC is enabled. share/gc/shared/
VerifyGCType OpenJDK10 ccstrlist gc diagnostic Available types are collector specific. gc_globals.hpp
VerifyGraphEdges OpenJDK6 bool c2 false notproduct Verify Bi-directional Edges share/opto/c2_globals.hpp
VerifyHashTableKeys OpenJDK6 bool c2 true notproduct Verify the immutability of keys in the VN hash tables share/opto/c2_globals.hpp
VerifyIdealNodeCount OpenJDK7 bool c2 false notproduct Verify that tracked dead ideal node count is accurate share/opto/c2_globals.hpp
VerifyInterpreterStackTop OpenJDK9 bool arm false develop Verify interpreter stack top at every stack expansion (AArch64 only) cpu/arm/globals_arm.hpp
Verify Def-Use modifications during sparse Iterative Global
VerifyIterativeGVN OpenJDK6 bool c2 false develop Value Numbering share/opto/c2_globals.hpp
Verify JNIEnv.thread == Thread::current() when entering VM
VerifyJNIEnvThread OpenJDK6 bool runtime false notproduct from JNI share/runtime/globals.hpp
VerifyJNIFields OpenJDK6 bool runtime trueInDebug develop Verify jfieldIDs for instance fields share/runtime/globals.hpp
VerifyLastFrame OpenJDK6 bool runtime false notproduct Verify oops on last frame on entry to VM share/runtime/globals.hpp
VerifyLoopOptimizations OpenJDK6 bool c2 false notproduct verify major loop optimizations share/opto/c2_globals.hpp
Obsoleted
VerifyMergedCPBytecodes OpenJDK6 in JDK16 bool runtime true product Verify bytecodes after RedefineClasses constant pool merging share/runtime/globals.hpp
Expired in
JDK17
VerifyMetaspace OpenJDK11 bool runtime false develop Verify metaspace on chunk movements. share/runtime/globals.hpp
VerifyMethodHandles OpenJDK6 bool runtime trueInDebug diagnostic perform extra checks when constructing method handles share/runtime/globals.hpp
VerifyObjectStartArray OpenJDK6 bool gc true diagnostic Verify GC object start array if verify before/after share/gc/shared/
gc_globals.hpp
VerifyOops OpenJDK6 bool runtime false develop Do plausibility checks for oops share/runtime/globals.hpp
VerifyOptoOopOffsets OpenJDK6 bool c2 false notproduct Check types of base addresses in field references share/opto/c2_globals.hpp
VerifyOpto OpenJDK6 bool c2 false notproduct Apply more time consuming verification during compilation share/opto/c2_globals.hpp
VerifyRegisterAllocator OpenJDK6 bool c2 false notproduct Verify Register Allocator share/opto/c2_globals.hpp
VerifyRememberedSets OpenJDK6 bool gc false diagnostic Verify GC remembered sets share/gc/shared/
gc_globals.hpp
Verify shared spaces (false for default archive, true for
VerifySharedSpaces OpenJDK8 bool runtime false product archive specified by -XX:SharedArchiveFile) share/runtime/globals.hpp
VerifyStackAtCalls OpenJDK6 bool runtime false develop Verify that the stack pointer is unchanged after calls share/runtime/globals.hpp
VerifyStack OpenJDK6 bool runtime false develop Verify stack of each thread when it is entering a runtime call share/runtime/globals.hpp
VerifyStringTableAtExit OpenJDK8 bool runtime false diagnostic verify StringTable contents at exit share/runtime/globals.hpp
Memory sub-systems to verify when Verify*GC flag(s)
are enabled. One or more sub-systems can be specified
in a comma separated string. Sub-systems are: share/gc/shared/
VerifySubSet OpenJDK8 ccstrlist gc diagnostic threads, heap, symbol_table, string_table, codecache, gc_globals.hpp
dictionary, classloader_data_graph, metaspace, jni_handles,
codecache_oops
VerifyThread OpenJDK6 bool runtime false develop Watch the thread register for corruption (SPARC only) share/runtime/globals.hpp
WalkStackALot OpenJDK6 bool runtime false notproduct Trace stack (no print) at every exit from the runtime system share/runtime/globals.hpp
999999 size of the largest inlinable method
WarmCallMaxSize OpenJDK6 intx c2 range(0, ((intx)MIN2((int64_t)max_intx, develop share/opto/c2_globals.hpp
(int64_t)(+1.0e10))))
999999 execution time of the largest inlinable method
WarmCallMaxWork OpenJDK6 intx c2 range(0, ((intx)MIN2((int64_t)max_intx, develop share/opto/c2_globals.hpp
(int64_t)(+1.0e10))))
-1 number of calls (per method invocation) to enable inlining
WarmCallMinCount OpenJDK6 intx c2 range(-1, ((intx)MIN2((int64_t)max_intx, develop share/opto/c2_globals.hpp
(int64_t)(+1.0e10))))
-1 number of calls (per method invocation) to enable inlining
WarmCallMinProfit OpenJDK6 intx c2 range(-1, ((intx)MIN2((int64_t)max_intx, develop share/opto/c2_globals.hpp
(int64_t)(+1.0e10))))
WarnOnStalledSpinLock OpenJDK6 uintx runtime 0 notproduct Print warnings for stalled SpinLocks share/runtime/globals.hpp
WhiteBoxAPI OpenJDK7 bool runtime false diagnostic Enable internal testing APIs share/runtime/globals.hpp
WizardMode OpenJDK6 bool runtime false develop Print much more debugging information share/runtime/globals.hpp
Number of iterations in a spin loop between checks on share/gc/shared/
WorkStealingHardSpins OpenJDK6 uintx gc 4096 experimental time out of hard spin gc_globals.hpp
WorkStealingSleepMillis OpenJDK6 uintx gc 1 experimental Sleep time when sleep is used for yields share/gc/shared/
gc_globals.hpp
WorkStealingSpinToYieldRatio OpenJDK6 uintx gc 10 experimental Ratio of hard spins to calls to yield share/gc/shared/
gc_globals.hpp
WorkStealingYieldsBeforeSleep OpenJDK6 uintx gc 5000 experimental Number of yields before a sleep is done during work stealing share/gc/shared/
gc_globals.hpp
YoungGenerationSizeIncrement OpenJDK6 uintx gc 20 product Adaptive size percentage change in young generation share/gc/shared/
range(0, 100) gc_globals.hpp
YoungGenerationSizeSupplementDecay OpenJDK6 uintx gc 8 product Decay factor to YoungedGenerationSizeSupplement share/gc/shared/
range(1, max_uintx) gc_globals.hpp
YoungGenerationSizeSupplement OpenJDK6 uintx gc 80 product Supplement to YoungedGenerationSizeIncrement used at startup share/gc/shared/
range(0, 100) gc_globals.hpp
YoungPLABSize OpenJDK6 size_t gc 4096 product Size of young gen promotion LAB's (in HeapWords) share/gc/shared/
gc_globals.hpp
ZAllocationSpikeTolerance OpenJDK11 double gc 2.0 product Allocation spike tolerance factor share/gc/z/z_globals.hpp
ZCollectionInterval OpenJDK11 uint gc 0 product Force GC at a fixed time interval (in seconds) share/gc/z/z_globals.hpp
ZConcurrentJNIWeakGlobalHandles OpenJDK11 bool gc true diagnostic Clean JNI WeakGlobalRefs concurrently share/gc/z/z_globals.hpp
ZConcurrentStringTable OpenJDK11 bool gc true diagnostic Clean StringTable concurrently share/gc/z/z_globals.hpp
ZConcurrentVMWeakHandles OpenJDK11 bool gc true diagnostic Clean VM WeakHandles concurrently share/gc/z/z_globals.hpp
ZFragmentationLimit OpenJDK11 double gc 25.0 product Maximum allowed heap fragmentation share/gc/z/z_globals.hpp
NOT_LP64(512*M) LP64_ONLY(8*G) Maximum number of bytes allocated for marking stacks
ZMarkStacksMax OpenJDK11 size_t gc range(32*M, NOT_LP64(512*M) LP64_ONLY product share/gc/z/z_globals.hpp
(1024*G))
ZOptimizeLoadBarriers OpenJDK11 bool gc true diagnostic Apply load barrier optimizations share/gc/z/z_globals.hpp
Filesystem path for Java heap backing storage
ZPath OpenJDK11 ccstr gc NULL product (must be a tmpfs or a hugetlbfs filesystem) share/gc/z/z_globals.hpp
ZProactive OpenJDK11 bool gc true diagnostic Enable proactive GC cycles share/gc/z/z_globals.hpp
Allow Java threads to stall and wait for GC to complete
ZStallOnOutOfMemory OpenJDK11 bool gc true product instead of immediately throwing an OutOfMemoryError share/gc/z/z_globals.hpp
ZStatisticsForceTrace OpenJDK11 bool gc false diagnostic Force tracing of ZStats share/gc/z/z_globals.hpp
ZStatisticsInterval OpenJDK11 uint gc 10 product Time between statistics print outs (in seconds) share/gc/z/z_globals.hpp
range(1, (uint)-1)
ZSymbolTableUnloading OpenJDK11 bool gc false diagnostic Unload unused VM symbols share/gc/z/z_globals.hpp
ZUnmapBadViews OpenJDK11 bool gc false diagnostic Unmap bad (inactive) heap views share/gc/z/z_globals.hpp
ZVerifyForwarding OpenJDK11 bool gc false diagnostic Verify forwarding tables share/gc/z/z_globals.hpp
ZVerifyLoadBarriers OpenJDK11 bool gc false develop Verify that reference loads are followed by barriers share/gc/z/z_globals.hpp
ZVerifyMarking OpenJDK11 bool gc false diagnostic Verify marking stacks share/gc/z/z_globals.hpp
ZWeakRoots OpenJDK11 bool gc true diagnostic Treat JNI WeakGlobalRefs and StringTable as weak roots share/gc/z/z_globals.hpp
Write 0x0101... to empty stack
ZapEmptyStackFields OpenJDK9 bool s390 false develop fields. Use this to ease stack debugging. cpu/s390/globals_s390.hpp
ZapFillerObjects OpenJDK6 bool runtime trueInDebug develop Zap filler objects share/runtime/globals.hpp
ZapHighNonSignificantBits OpenJDK9 bool arm false develop Zap high non-significant bits of values (AArch64 only) cpu/arm/globals_arm.hpp
Write 0x0101... to empty memory.
ZapMemory OpenJDK7 bool ppc false product Use this to ease debugging. cpu/ppc/globals_ppc.hpp
ZapResourceArea OpenJDK6 bool runtime trueInDebug develop Zap freed resource/arena space share/runtime/globals.hpp
ZapStackSegments OpenJDK6 bool runtime trueInDebug notproduct Zap allocated/freed stack segments share/runtime/globals.hpp
ZapUnusedHeapArea OpenJDK6 bool runtime trueInDebug develop Zap unused heap space share/runtime/globals.hpp
ZapVMHandleArea OpenJDK6 bool runtime trueInDebug notproduct Zap freed VM handle space share/runtime/globals.hpp
ZeroTLAB OpenJDK6 bool gc false product Zero out the newly created TLAB share/gc/shared/
gc_globals.hpp
ZombieALotInterval OpenJDK6 intx runtime 5 notproduct Number of exits until ZombieALot kicks in share/runtime/globals.hpp
ZombieALot OpenJDK6 bool runtime false notproduct Create zombies (non-entrant) at exit from the runtime system share/runtime/globals.hpp
batch OpenJDK6 disable background compilation Xusage.txt
bootclasspath/a OpenJDK6
bootclasspath/p OpenJDK6
bootclasspath OpenJDK6
check:jni OpenJDK6 perform additional checks for JNI functions Xusage.txt
future OpenJDK6 enable strictest checks, anticipating future default Xusage.txt
hashCode OpenJDK6 intx runtime 5 experimental (Unstable) select hashCode generation algorithm share/runtime/globals.hpp
int OpenJDK6 interpreted mode execution only Xusage.txt
log OpenJDK9 control JVM logging, use -Xlog:help for details Xusage.txt
mixed OpenJDK6 mixed mode execution (default) Xusage.txt
ms OpenJDK6 set initial Java heap size Xusage.txt
mx OpenJDK6 set maximum Java heap size Xusage.txt
noclassgc OpenJDK6 disable class garbage collection Xusage.txt
rs OpenJDK6 reduce use of OS signals by Java/VM (see documentation) Xusage.txt
share:auto OpenJDK6 use shared class data if possible (default) Xusage.txt
share:off OpenJDK6 do not attempt to use shared class data Xusage.txt
require using shared class data, otherwise fail.
share:on OpenJDK6 Xusage.txt
The -X options are non-standard and subject to change without notice.
ss OpenJDK6 set java thread stack size Xusage.txt
Built on Mon Apr 06 22:22:09 BST 2026 by chriswhocodes
All third party trademarks including logos and icons referenced on
chriswhocodes.com remain the property of their respective owners.
Use of third party trademarks does not indicate any relationship,
sponsorship, or endorsement between chriswhocodes.com and the owners
of these trademarks.
Magnifying glass icon from https://commons.wikimedia.org/wiki/
File:Magnifying_glass_icon_mgx2.svg