Option | Type | 1.3.1 | 1.4.0 | 1.4.1 | 1.4.2 | 1.5.0 | 1.6.0 | Description |
-client |
bool |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
Use Client HotSpot VM. Must be first
option. |
-server |
bool |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
Use Server HotSpot VM. Must be first
option. |
-verbose[:class|gc|jni] |
bool |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
enable output of
various pieces of the VM. specifying options twice may produce more
detailed output. |
-cp |
path |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
set search path for application classes and
resources |
-classpath |
path |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
set search path for application classes and
resources |
-version |
bool |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
print product version and exit |
-showversion |
bool |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
print product version and continue |
-fullversion |
bool |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
print full java version and exit |
-agentlib:<libname>[=<options>] |
nv |
|
|
|
|
|
1.6.0 |
load native agent library
<libname>, e.g. -agentlib:hprof
see also, -agentlib:jdwp=help and
-agentlib:hprof=help
|
-agentpath:<pathname>[=<options>] |
nv |
|
|
|
|
|
1.6.0 |
load native agent library by full
pathname |
-javaagent:<jarpath>[=<options>] |
nv |
|
|
|
|
|
1.6.0 |
load Java programming language
agent, see java.lang.instrument |
-d32 |
bool |
|
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
use a 32-bit data model if available |
-d64 |
bool |
|
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
use a 64-bit data model if available |
-ea[:packagename...|:classname] |
list |
|
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
enable assertions |
-enableassertions[:packagename...|:classname] |
list |
|
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
enable assertions |
-da[:packagename...|:classname] |
list |
|
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
disable
assertions |
-disableassertions[:packagename...|:classname] |
list |
|
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
disable
assertions |
-esa |
bool |
|
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
enable system assertions |
-enablesystemassertions |
bool |
|
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
enable system
assertions |
-dsa |
bool |
|
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
disable system assertions |
-disablesystemassertions |
bool |
|
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
disable system
assertions |
-Dname=value |
nv |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
set a system property |
-jre-restrict-search |
bool |
|
|
|
|
1.5.0 |
1.6.0 |
include user private JREs in the version
search |
-jre-no-restrict-search |
bool |
|
|
|
|
1.5.0 |
1.6.0 |
exclude user
private JREs in the version search |
-Xt |
bool |
O |
O |
O |
O |
O |
O |
turn
on instruction tracing |
-Xtm |
bool |
O |
O |
O |
O |
O |
O |
turn
on method tracing |
-Xbootclasspath[/a|/p]:<path> |
list |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
set, append to,
or prepend to boot class path |
-Xdebug |
bool |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
enable remote debugging |
-Xfuture |
bool |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
enable strictest checks, anticipating
future default |
-Xcheck:jni |
bool |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
perform additional checks for JNI functions |
-Xshare:off |
bool |
|
|
|
|
|
1.6.0 |
do
not attempt to use shared class data |
-Xshare:auto |
bool |
|
|
|
|
|
1.6.0 |
use
shared class data if possible (default) |
-Xshare:on |
bool |
|
|
|
|
|
1.6.0 |
require
using shared class data, otherwise fail. |
-Xnoclassgc |
bool |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
disable class garbage collection |
-Xss<size> |
size |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
set maximum native stack size for
any thread |
-Xoss<size> |
size |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
set maximum Java stack size for
any thread. Note: This option is useless with HotSpot as HotSpot doesn't
have separate native and Java stacks. |
-Xms<size> |
size |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
set initial Java heap size |
-Xmx<size> |
size |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
set maximum Java heap size |
-Xmn<size> |
size |
|
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
Size of young generation |
-Xrs |
bool |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
reduce the use of OS signals |
-Xrunhprof[:help]|[:option=value, ...] |
list |
1.3.1 |
1.4.0 |
|
1.4.2 |
1.5.0 |
1.6.0 |
perform heap or
cpu profiling |
-Xmaxjitcodesize<size> |
size |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
set the maximum
size (in bytes) for the JIT code area |
-Xsqnopause |
bool |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
do not pause for user interaction on
SIGQUIT |
-Xoptimize |
bool |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
Use optimizing JIT compiler (SPARC only).
Replaced by -server in later VMs |
-Xmixed |
bool |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
mixed mode execution (default) |
-Xint |
bool |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
interpreted mode execution only |
-Xincgc |
bool |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
Incremental GC |
-Xconcgc |
bool |
|
|
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
Concurrent GC. Replaced by
-XX:+UseConcMarkSweepGC (available beginning with J2SE 1.4.1) |
-Xprof |
bool |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
Precursor to -Xrunprof. |
-Xaprof |
path |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
Simple allocation profiler. unstable. debug
only. |
-Xloggc:<file> |
path |
|
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
Log garbage collection actions to a
specified file. |
-Xcomp |
bool |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
Forces HotSpot to compile 100% of the code
with maximum optimization. |
-Xbatch |
bool |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
Forces HotSpot to compile methods in the
foreground. Normally method compilation is moved from the foreground to a
background process if they take long. This allows allows the
interpreted version to continue to run until the compiled version is
complete. This option prevents background compiling. |
-Xconcurrentio |
bool |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
The main feature turned on with
-Xconcurrentio is to use LWP based synchronization instead of thread
based synchronization. We have found certain applications to speed up by
over 40%. In 1.4, LWP based synchronization is the default, but
-Xconcurrentio can still help since it turns on some other internal
options. |
-Xgenconfig |
bool |
|
|
|
|
|
1.6.0 |
1.2
option only |
-Xverifyheap |
bool |
O |
O |
O |
O |
O |
|
Verify
heap integrity. Replaced by -XX:+VerifyBeforeGC -XX:+VerifyAfterGC
-XX:+VerifyTLE (-XX:+VerifyTLAB in J2SE 1.4) -XX:+VerifyBeforeScavenge
-XX:+VerifyAfterScavenge (all debug only) |
-XX:AdaptivePermSizeWeight=<value> |
uintx |
|
|
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
-XX:AdaptiveSizeDecrementScaleFactor=<value> |
uintx |
|
|
|
|
1.5.0 |
1.6.0 |
|
-XX:AdaptiveSizePolicyCollectionCostMargin=<value> |
uintx |
|
|
|
|
1.5.0 |
1.6.0 |
|
-XX:AdaptiveSizePolicyFootprintThreshold=<value> |
uintx |
|
|
|
|
1.5.0 |
|
|
-XX:AdaptiveSizePolicyInitializingSteps=<value> |
uintx |
|
|
|
|
1.5.0 |
1.6.0 |
|
-XX:AdaptiveSizePolicyWeight=<value> |
uintx |
|
|
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
-XX:AdaptiveSizeThroughPutPolicy=<value> |
uintx |
|
|
|
|
1.5.0 |
1.6.0 |
|
-XX:AdaptiveTimeWeight=<value> |
uintx |
|
|
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
-XX:+AdjustConcurrency |
bool |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
|
-XX:+AggressiveHeap |
bool |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
This option instructs the JVM to
push memory use to the limit: the overall heap is more than 3850MB, the
allocation area of each thread is 256K, the memory management policy
defers collection as long as possible, and (beginning with J2SE
1.3.1_02) some GC activity is done in parallel. |
|
-XX:+AggressiveOpts |
bool |
|
|
|
|
|
1.6.0 |
|
-XX:AliasLevel=<value> |
intx |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
-XX:AllocatePrefetchDistance=<value> |
intx |
|
|
|
|
|
1.6.0 |
|
-XX:AllocatePrefetchInstr=<value> |
intx |
|
|
|
|
|
1.6.0 |
|
-XX:AllocatePrefetchLines=<value> |
intx |
|
|
|
|
|
1.6.0 |
|
-XX:AllocatePrefetchStepSize=<value> |
intx |
|
|
|
|
|
1.6.0 |
|
-XX:AllocatePrefetchStyle=<value> |
intx |
|
|
|
|
|
1.6.0 |
|
-XX:+AllowJNIEnvProxy |
bool |
|
|
|
|
|
1.6.0 |
|
-XX:+AllowUserSignalHandlers |
bool |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
Do not complain
if the application installs signal handlers (Solaris Only) |
|
-XX:AltStackSize=<value> |
intx |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
|
|
Alternate signal stack size (in Kbytes,
Solaris Only) |
|
-XX:+AlwaysActAsServerClassMachine |
bool |
|
|
|
|
|
1.6.0 |
|
-XX:+AlwaysCompileLoopMethods |
bool |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
-XX:AlwaysInflate=<value> |
intx |
|
|
|
|
|
1.6.0 |
|
-XX:+AlwaysPreTouch |
bool |
|
|
|
|
|
1.6.0 |
|
-XX:+AlwaysTenure |
bool |
|
|
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
-XX:AppendRatio=<value> |
intx |
|
|
|
|
1.5.0 |
1.6.0 |
|
-XX:+BackgroundCompilation |
bool |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
Enables or
disables JIT compilation in the background. When enabled, interpreted
methods are still executed until background compilation is complete. |
|
-XX:BaseFootPrintEstimate=<value> |
uintx |
|
|
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
-XX:BCEATraceLevel=<value> |
intx |
|
|
|
|
|
1.6.0 |
|
-XX:BiasedLockingBulkRebiasThreshold=<value> |
intx |
|
|
|
|
|
1.6.0 |
|
-XX:BiasedLockingBulkRevokeThreshold=<value> |
intx |
|
|
|
|
|
1.6.0 |
|
-XX:BiasedLockingDecayTime=<value> |
intx |
|
|
|
|
|
1.6.0 |
|
-XX:BiasedLockingStartupDelay=<value> |
intx |
|
|
|
|
|
1.6.0 |
|
-XX:+BindCMSThreadToCPU |
bool |
|
|
|
|
|
1.6.0 |
|
-XX:+BindGCTaskThreadsToCPUs |
bool |
|
|
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
-XX:+BindScavengeThreads |
bool |
1.3.1 |
|
|
|
|
|
|
-XX:+BlockOffsetArrayUseUnallocatedBlock |
bool |
|
|
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
-XX:+BytecodeVerificationLocal |
bool |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
|
-XX:+BytecodeVerificationRemote |
bool |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
|
-XX:+CheckJNICalls |
bool |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
-XX:+CheckUnsafeOps |
bool |
|
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
|
|
-XX:CICompilerCount=<value> |
intx |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
|
-XX:+CICompilerCountPerCPU |
bool |
|
|
|
1.4.2 |
1.5.0 |
1.6.0 |
|
-XX:+CIDynamicCompilePriority |
bool |
1.3.1 |
1.4.0 |
1.4.1 |
|
|
|
|
-XX:+CIMaxPriority |
bool |
|
1.4.0 |
1.4.1 |
|
|
|
|
-XX:+CITime |
bool |
|
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
Time spent in JIT Compiler |
|
-XX:+ClassUnloading |
bool |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
-XX:ClearFPUAtPark=<value> |
intx |
|
|
|
|
|
1.6.0 |
|
-XX:+ClipInlining |
bool |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
-XX:CMSAbortablePrecleanMinWorkPerIteration=<value> |
uintx |
|
|
|
|
1.5.0 |
1.6.0 |
|
-XX:CMSAbortablePrecleanWaitMillis=<value> |
intx |
|
|
|
|
1.5.0 |
1.6.0 |
|
-XX:+CMSAbortSemantics |
bool |
|
|
|
|
|
1.6.0 |
|
-XX:CMSBitMapYieldQuantum=<value> |
uintx |
|
|
|
1.4.2 |
1.5.0 |
|
|
-XX:CMSBootstrapOccupancy=<value> |
intx |
|
|
|
|
1.5.0 |
1.6.0 |
|
-XX:+CMSClassUnloadingEnabled |
bool |
|
|
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
It has been
reported that for 1.5, this apparently needs to be combined with
-XX:+CMSPermGenSweepingEnabled in order to take effect. |
|
-XX:+CMSCompactWhenClearAllSoftRefs |
bool |
|
|
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
-XX:+CMSConcurrentMTEnabled |
bool |
|
|
|
|
|
1.6.0 |
|
-XX:CMSDictionaryChoice=<value> |
intx |
|
1.4.0 |
|
|
|
|
|
-XX:CMSExpAvgFactor=<value> |
uintx |
|
|
|
1.4.2 |
1.5.0 |
1.6.0 |
|
-XX:CMSFullGCsBeforeCompaction=<value> |
uintx |
|
|
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
Parameter that
affects compaction of the old generation. If at least this number of
concurrent collections has not succeeded between full collection, do a
compaction on full collections. If 0, always do compactions on full
collections when UseCMSCompactAtFullCollection is true |
|
-XX:CMSIncrementalDutyCycle=<value> |
uintx |
|
|
|
1.4.2 |
1.5.0 |
1.6.0 |
|
-XX:CMSIncrementalDutyCycleMin=<value> |
uintx |
|
|
|
1.4.2 |
1.5.0 |
1.6.0 |
|
-XX:+CMSIncrementalMode |
bool |
|
|
|
1.4.2 |
1.5.0 |
1.6.0 |
|
-XX:CMSIncrementalOffset=<value> |
uintx |
|
|
|
1.4.2 |
1.5.0 |
1.6.0 |
|
-XX:+CMSIncrementalPacing |
bool |
|
|
|
1.4.2 |
1.5.0 |
1.6.0 |
|
-XX:CMSIncrementalSafetyFactor=<value> |
uintx |
|
|
|
1.4.2 |
1.5.0 |
1.6.0 |
|
-XX:CMSIndexedFreeListReplenish=<value> |
uintx |
|
|
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
-XX:CMSInitiatingOccupancyFraction=<value> |
intx |
|
|
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
Sets the
threshold percentage of the used heap in the old generation at which the
CMS collection takes place. For example, if set to 60, the CMS
collector will be initiated every time the old generation becomes 60%
full. By default, this threshold is calculated at run time, and the CMS
collector might be triggered only when the old generation heap is about
80-90% full. Tuning this value can improve performance in many cases.
Since the CMS collector does not suspend the mutators as it sweeps and
frees memory, setting this switch can ensure that enough free memory is
available for object promotion from the young generation as more data is
allocated by the application. Sometimes, if this switch is not tuned,
CMS collection might not be able to keep up and may fail, eventually
triggering the default stop-the-world mark-compact collector. Available
from J2SE1.4.1. |
|
-XX:+CMSLoopWarn |
bool |
|
|
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
-XX:CMSMarkStackSize=<value> |
uintx |
|
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
-XX:CMSMarkStackSizeMax=<value> |
uintx |
|
|
|
|
1.5.0 |
1.6.0 |
|
-XX:CMSMaxAbortablePrecleanLoops=<value> |
uintx |
|
|
|
|
1.5.0 |
1.6.0 |
|
-XX:CMSMaxAbortablePrecleanTime=<value> |
intx |
|
|
|
|
1.5.0 |
1.6.0 |
|
-XX:+CMSNoWarning |
bool |
|
1.4.0 |
1.4.1 |
|
|
|
|
|
-XX:+CMSParallelRemarkEnabled |
bool |
|
|
|
1.4.2 |
1.5.0 |
1.6.0 |
Attempt to
descrease remark pauses when used with -XX:+UseParNewGC. |
|
-XX:+CMSParallelSurvivorRemarkEnabled |
bool |
|
|
|
|
|
1.6.0 |
|
-XX:+CMSPermGenPrecleaningEnabled |
bool |
|
|
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
-XX:+CMSPermGenSweepingEnabled |
bool |
|
|
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
It has been
reported that for 1.5, this apparently needs to be combined with
-XX:+CMSClassUnloadingEnabled in order to take effect. |
-XX:+CMSPLABRecordAlways |
bool |
|
|
|
|
|
1.6.0 |
|
-XX:CMSPrecleanDenominator=<value> |
uintx |
|
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
-XX:+CMSPrecleaningEnabled |
bool |
|
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
-XX:CMSPrecleanIter=<value> |
uintx |
|
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
-XX:CMSPrecleanNumerator=<value> |
uintx |
|
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
-XX:+CMSPrecleanRefLists1 |
bool |
|
|
|
|
1.5.0 |
1.6.0 |
|
-XX:+CMSPrecleanRefLists2 |
bool |
|
|
|
|
1.5.0 |
1.6.0 |
|
-XX:+CMSPrecleanSurvivors1 |
bool |
|
|
|
|
|
1.6.0 |
|
-XX:+CMSPrecleanSurvivors2 |
bool |
|
|
|
|
|
1.6.0 |
|
-XX:CMSPrecleanThreshold=<value> |
uintx |
|
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
-XX:CMSRescanMultiple=<value> |
uintx |
|
|
|
1.4.2 |
1.5.0 |
1.6.0 |
|
-XX:CMSRevisitStackSize=<value> |
uintx |
|
|
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
-XX:CMSSamplingGrain=<value> |
uintx |
|
|
|
|
1.5.0 |
1.6.0 |
|
-XX:+CMSScavengeBeforeRemark |
bool |
|
|
|
|
|
1.6.0 |
|
-XX:CMSScheduleRemarkEdenPenetration=<value> |
uintx |
|
|
|
|
1.5.0 |
1.6.0 |
|
-XX:CMSScheduleRemarkEdenSizeThreshold=<value> |
uintx |
|
|
|
|
1.5.0 |
1.6.0 |
|
-XX:CMSScheduleRemarkSamplingRatio=<value> |
uintx |
|
|
|
|
1.5.0 |
1.6.0 |
|
-XX:CMSTriggerRatio=<value> |
intx |
|
|
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
-XX:+CMSUseOldDefaults |
bool |
|
|
|
|
|
1.6.0 |
|
-XX:CMSWaitDuration=<value> |
intx |
|
|
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
-XX:CMSWorkQueueDrainThreshold=<value> |
uintx |
|
|
|
1.4.2 |
1.5.0 |
1.6.0 |
|
-XX:+CMSYield |
bool |
|
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
-XX:CMSYieldQuantum=<value> |
intx |
|
1.4.0 |
1.4.1 |
|
|
|
|
-XX:CMSYoungGenPerWorker=<value> |
intx |
|
|
|
|
|
1.6.0 |
|
-XX:CodeCacheExpansionSize=<value> |
intx |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
-XX:CodeCacheMinimumFreeSpace=<value> |
uintx |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
-XX:+CodeForP6 |
bool |
1.3.1 |
|
|
|
|
|
|
|
-XX:+CollectGen0First |
bool |
|
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
-XX:+CompactFields |
bool |
|
|
|
|
|
1.6.0 |
|
-XX:CompilationPolicyChoice=<value> |
intx |
|
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
-XX:CompilationRepeat=<value> |
intx |
|
|
|
1.4.2 |
1.5.0 |
|
|
-XX:CompileCommand=<value> |
ccstr |
|
|
|
1.4.2 |
1.5.0 |
1.6.0 |
|
-XX:CompileCommandFile=<value> |
ccstr |
|
|
|
1.4.2 |
1.5.0 |
1.6.0 |
Allows you to
specify alternate compiler command files. When used, this overrides the
default behavior of the VM and the VM will NOT scan either the libjvm.sl
directory or the current directory for a .hotspot_compiler file. |
|
-XX:CompileOnly=<value> |
ccstr |
|
|
|
1.4.2 |
1.5.0 |
1.6.0 |
|
-XX:+CompilerThreadHintNoPreempt |
bool |
|
|
|
1.4.2 |
1.5.0 |
1.6.0 |
|
-XX:CompilerThreadPriority=<value> |
intx |
|
|
|
1.4.2 |
1.5.0 |
1.6.0 |
|
-XX:CompilerThreadStackSize=<value> |
intx |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
-XX:CompileThreshold=<value> |
intx |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
number of method
invocations/branches before (re-)compiling [10,000 -server, 1,500
-client] |
|
-XX:+ConvertSleepToYield |
bool |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
-XX:+ConvertYieldToSleep |
bool |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
-XX:+DebugNonSafepoints |
bool |
|
|
|
|
|
1.6.0 |
|
-XX:DefaultInitialRAMFraction=<value> |
uintx |
|
|
|
|
1.5.0 |
1.6.0 |
|
-XX:DefaultMaxRAM=<value> |
uintx |
|
|
|
|
1.5.0 |
1.6.0 |
|
-XX:DefaultMaxRAMFraction=<value> |
uintx |
|
|
|
|
1.5.0 |
1.6.0 |
|
-XX:DefaultThreadPriority=<value> |
intx |
|
|
|
1.4.2 |
1.5.0 |
1.6.0 |
|
-XX:DefaultTickInterval=<value> |
intx |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
O |
|
-XX:+DefaultUseSpecLock |
bool |
1.3.1 |
1.4.0 |
|
|
|
|
|
|
-XX:DeferPollingPageLoopCount=<value> |
intx |
|
|
|
|
|
1.6.0 |
|
-XX:DeferThrSuspendLoopCount=<value> |
intx |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
-XX:DelayTickAdjustment=<value> |
intx |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
O |
|
-XX:+DisableAttachMechanism |
bool |
|
|
|
|
|
1.6.0 |
|
-XX:+DisableExplicitGC |
bool |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
Disable calls to
System.gc(), JVM still performs garbage collection when necessary |
|
-XX:+DisplayVMOutput |
bool |
|
|
|
1.4.2 |
1.5.0 |
1.6.0 |
|
-XX:+DisplayVMOutputToStderr |
bool |
|
|
|
|
1.5.0 |
1.6.0 |
|
-XX:+DisplayVMOutputToStdout |
bool |
|
|
|
|
1.5.0 |
1.6.0 |
|
-XX:+DontCompileHugeMethods |
bool |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
-XX:+DontYieldALot |
bool |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
|
-XX:+DontYieldALotInterval |
bool |
|
|
|
|
|
|
Interval in milliseconds between
yields. (debug only) |
|
-XX:+DTraceAllocProbes |
bool |
|
|
|
|
|
1.6.0 |
|
-XX:+DTraceMethodProbes |
bool |
|
|
|
|
|
1.6.0 |
|
-XX:+DTraceMonitorProbes |
bool |
|
|
|
|
|
1.6.0 |
|
-XX:+DumpSharedSpaces |
bool |
|
|
|
|
1.5.0 |
1.6.0 |
|
-XX:+EagerInitialization |
bool |
|
|
1.4.1 |
|
|
|
|
|
-XX:+EagerXrunInit |
bool |
|
|
|
1.4.2 |
1.5.0 |
1.6.0 |
|
-XX:EmitLFence=<value> |
intx |
|
|
|
|
|
1.6.0 |
|
-XX:EmitSync=<value> |
intx |
|
|
|
|
|
1.6.0 |
|
-XX:+EnableJVMPIInstructionStartEvent |
bool |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
Enables or
disables the JVMPI event, JVMPI_EVENT_INSTRUCTION_START, which is sent
when each instruction is issued by the interpreter |
|
-XX:ErrorFile=<value> |
ccstr |
|
|
|
|
|
1.6.0 |
|
-XX:+EstimateArgEscape |
bool |
|
|
|
|
|
1.6.0 |
|
-XX:EventLogLength=<value> |
intx |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
|
-XX:+ExitOnBadLibThread |
bool |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
|
|
-XX:+ExplicitGCInvokesConcurrent |
bool |
|
|
|
|
|
1.6.0 |
|
-XX:+ExtendedDTraceProbes |
bool |
|
|
|
|
|
1.6.0 |
|
-XX:+FailOverToOldVerifier |
bool |
|
|
|
|
|
1.6.0 |
|
-XX:+FasterSync |
bool |
1.3.1 |
|
|
|
|
|
|
-XX:+FastNMethodDependencies |
bool |
|
|
1.4.1 |
1.4.2 |
1.5.0 |
|
|
|
-XX:+FastTLABRefill |
bool |
|
|
|
|
1.5.0 |
|
|
-XX:FieldsAllocationStyle=<value> |
intx |
|
|
|
|
|
1.6.0 |
|
-XX:+FilterSpuriousWakeups |
bool |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
-XX:FloatCacheThreshold=<value> |
intx |
|
1.4.0 |
|
|
|
|
|
-XX:+FLSVerifyAllHeapReferences |
bool |
|
|
|
|
|
1.6.0 |
|
-XX:+FLSVerifyIndexTable |
bool |
|
|
|
|
|
1.6.0 |
|
-XX:+FLSVerifyLists |
bool |
|
|
|
|
|
1.6.0 |
|
-XX:+ForceSharedSpaces |
bool |
|
|
|
|
1.5.0 |
1.6.0 |
|
-XX:+ForceTimeHighResolution |
bool |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
|
-XX:+ForceUseSpecLock |
bool |
1.3.1 |
1.4.0 |
|
|
|
|
|
|
-XX:FreqInlineSize=<value> |
intx |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
Integer
specifying maximum number of bytecode instructions in a frequently
executed method which gets inlined. |
|
-XX:+FullSpeedJVMDI |
bool |
|
1.4.0 |
1.4.1 |
1.4.2 |
|
|
|
|
-XX:GCHeapFreeLimit=<value> |
uintx |
|
|
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
Used with
-XX:+UseParallelGC to help prevent out-of-memory exceptions from
occuring during garbage collection. This parameter specifies the lower
limit on the amount of space freed during a garbage collection in per
cent of the maximum heap (default is 5). |
|
-XX:GCTaskTimeStampEntries=<value> |
uintx |
|
|
|
1.4.2 |
1.5.0 |
1.6.0 |
|
-XX:GCTimeLimit=<value> |
uintx |
|
|
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
Used with
-XX:+UseParallelGC to help prevent out-of-memory exceptions from
occuring during garbage collection. This parameter specifies the upper
limit on the amount of time spent in garbage collection in per cent of
total time (default is 90) |
|
-XX:GCTimeRatio=<value> |
uintx |
|
|
|
|
1.5.0 |
1.6.0 |
The ratio of GC
time to application time, ratio being: 1 / (1 + nnn). For example
-XX:GCTimeRatio=19 sets a goal of 5% of the total time for GC. |
|
-XX:+HandlePromotionFailure |
bool |
|
|
|
|
1.5.0 |
1.6.0 |
|
-XX:hashCode=<value> |
intx |
|
|
|
|
|
1.6.0 |
|
-XX:+HeapDumpOnOutOfMemoryError |
bool |
|
|
|
|
|
1.6.0 |
|
-XX:HeapDumpPath=<value> |
ccstr |
|
|
|
|
|
1.6.0 |
|
-XX:HPILibPath=<value> |
ccstr |
|
|
|
|
|
1.6.0 |
|
-XX:InitialCodeCacheSize=<value> |
intx |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
|
-XX:InitialSurvivorRatio=<value> |
uintx |
|
|
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
|
-XX:InitialTenuringThreshold=<value> |
intx |
|
|
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
-XX:+Inline |
bool |
1.3.1 |
|
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
|
-XX:InlineSmallCode=<value> |
intx |
1.3.1 |
|
|
1.4.2 |
|
|
|
-XX:+InlineUnreachedCalls |
bool |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
|
|
-XX:+InstallMethods |
bool |
1.3.1 |
|
|
|
|
|
|
-XX:InterpreterProfilePercentage=<value> |
intx |
|
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
-XX:+JavaMonitorsInStackTrace |
bool |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
Useful to display
more stack trace information about monitors |
|
-XX:JavaPriority1_To_OSPriority=<value> |
intx |
|
|
|
1.4.2 |
1.5.0 |
1.6.0 |
|
-XX:JavaPriority10_To_OSPriority=<value> |
intx |
|
|
|
1.4.2 |
1.5.0 |
1.6.0 |
|
|
-XX:JavaPriority2_To_OSPriority=<value> |
intx |
|
|
|
1.4.2 |
1.5.0 |
1.6.0 |
|
|
-XX:JavaPriority3_To_OSPriority=<value> |
intx |
|
|
|
1.4.2 |
1.5.0 |
1.6.0 |
|
|
-XX:JavaPriority4_To_OSPriority=<value> |
intx |
|
|
|
1.4.2 |
1.5.0 |
1.6.0 |
|
|
-XX:JavaPriority5_To_OSPriority=<value> |
intx |
|
|
|
1.4.2 |
1.5.0 |
1.6.0 |
|
|
-XX:JavaPriority6_To_OSPriority=<value> |
intx |
|
|
|
1.4.2 |
1.5.0 |
1.6.0 |
|
|
-XX:JavaPriority7_To_OSPriority=<value> |
intx |
|
|
|
1.4.2 |
1.5.0 |
1.6.0 |
|
|
-XX:JavaPriority8_To_OSPriority=<value> |
intx |
|
|
|
1.4.2 |
1.5.0 |
1.6.0 |
|
|
-XX:JavaPriority9_To_OSPriority=<value> |
intx |
|
|
|
1.4.2 |
1.5.0 |
1.6.0 |
|
|
-XX:+JNIDetachReleasesMonitors |
bool |
|
|
|
|
|
1.6.0 |
|
-XX:+JVMPICheckGCCompatibility |
bool |
|
|
|
|
1.5.0 |
1.6.0 |
|
-XX:LargePageHeapSizeThreshold=<value> |
uintx |
|
|
|
|
1.5.0 |
1.6.0 |
|
-XX:LargePageSizeInBytes=<value> |
uintx |
|
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
-XX:+LazyBootClassLoader |
bool |
|
|
|
|
|
1.6.0 |
|
-XX:+LIRCacheLocals |
bool |
|
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
|
|
|
-XX:+LIRFillDelaySlots |
bool |
|
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
|
|
-XX:+LIROptimize |
bool |
|
1.4.0 |
|
|
|
|
|
-XX:+LIROptimizeDeleteOps |
bool |
|
1.4.0 |
|
|
|
|
|
-XX:+LIROptimizeFloats |
bool |
|
1.4.0 |
|
|
|
|
|
-XX:+LIROptimizeStack |
bool |
|
1.4.0 |
|
|
|
|
|
-XX:LocalCacheThreshold=<value> |
intx |
|
1.4.0 |
|
|
|
|
|
-XX:+LogCompilation |
bool |
|
|
|
1.4.2 |
1.5.0 |
1.6.0 |
|
|
-XX:LogFile=<value> |
ccstr |
|
|
|
1.4.2 |
1.5.0 |
|
|
|
-XX:+LogVMOutput |
bool |
|
|
|
1.4.2 |
1.5.0 |
1.6.0 |
|
|
-XX:MallocVerifyInterval=<value> |
intx |
|
|
|
|
|
1.6.0 |
|
-XX:MallocVerifyStart=<value> |
intx |
|
|
|
|
|
1.6.0 |
|
-XX:+ManagementServer |
bool |
|
|
|
|
1.5.0 |
1.6.0 |
|
-XX:MarkSweepAlwaysCompactCount=<value> |
intx |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
|
-XX:MarkSweepDeadRatio=<value> |
intx |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
|
-XX:MaxBCEAEstimateLevel=<value> |
intx |
|
|
|
|
|
1.6.0 |
|
-XX:MaxBCEAEstimateSize=<value> |
intx |
|
|
|
|
|
1.6.0 |
|
-XX:MaxDirectMemorySize=<value> |
intx |
|
|
|
1.4.2 |
1.5.0 |
1.6.0 |
|
|
-XX:+MaxFDLimit |
bool |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
Bump the number of file
descriptors to max. (Solaris only) |
|
-XX:MaxGCMinorPauseMillis=<value> |
uintx |
|
|
|
|
1.5.0 |
1.6.0 |
|
-XX:MaxGCPauseMillis=<value> |
uintx |
|
|
|
|
1.5.0 |
1.6.0 |
A hint to the
virtual machine that pause times of nnn milliseconds or less are
desired. The vm will adjust the java heap size and other gc-related
parameters in an attempt to keep gc-induced pauses shorter than nnn
milliseconds. Note that this may cause the vm to reduce overall
throughput, and in some cases the vm will not be able to meet the
desired pause time goal. |
|
-XX:MaxHeapFreeRatio=<value> |
intx |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
heap free
percentage (default 70) |
|
-XX:MaxHeapSize=<value> |
uintx |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
-XX:MaxInlineLevel=<value> |
intx |
1.3.1 |
|
|
1.4.2 |
|
|
|
|
-XX:MaxInlineSize=<value> |
intx |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
Integer
specifying maximum number of bytecode instructions in a method which
gets inlined. |
|
-XX:MaxJavaStackTraceDepth=<value> |
intx |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
|
-XX:MaxLiveObjectEvacuationRatio=<value> |
uintx |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
|
-XX:MaxNewSize=<value> |
uintx |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
Maximum size of
new generation (in bytes) [32m sparc, 2.5m intel for 1.3, no limit for
1.4 as NewRatio is now used to determine MaxNewSize] |
|
-XX:MaxPermHeapExpansion=<value> |
uintx |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
-XX:MaxPermSize=<value> |
uintx |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
Size of the
Permanent Generation |
|
-XX:MaxRecursiveInlineLevel=<value> |
intx |
1.3.1 |
|
|
1.4.2 |
|
|
|
-XX:MaxSurvivorShrinkRatio=<value> |
size_t |
1.3.1 |
|
|
|
|
|
|
-XX:MaxTenuringThreshold=<value> |
intx |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
This switch
determines how much the objects may age in the young generation before
getting promoted to the older generation. The default value is 31. For a
big enough young generation and "survivor space", the long-lived
objects may be copied up to 31 times between the survivor spaces before
they are finally promoted to the old generation. |
|
-XX:MaxTickInterval=<value> |
intx |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
O |
|
-XX:MaxTLABRatio=<value> |
uintx |
|
1.4.0 |
1.4.1 |
1.4.2 |
|
|
|
-XX:MaxTLERatio=<value> |
|
1.3.1 |
|
|
|
|
1.6.0 |
|
-XX:MinHeapDeltaBytes=<value> |
uintx |
|
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
-XX:MinHeapFreeRatio=<value> |
intx |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
heap free
percentage (default 40) |
|
-XX:MinOldHeapExpansion=<value> |
size_t |
1.3.1 |
|
|
|
|
|
|
-XX:MinPermHeapExpansion=<value> |
uintx |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
-XX:MinSurvivorRatio=<value> |
uintx |
|
|
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
-XX:MinTickInterval=<value> |
intx |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
O |
|
-XX:MinTLABSize=<value> |
uintx |
|
|
|
|
1.5.0 |
1.6.0 |
|
-XX:NativeSynchronization=<value> |
ccstr |
|
|
|
|
1.5.0 |
|
|
-XX:+NeverActAsServerClassMachine |
bool |
|
|
|
|
|
1.6.0 |
|
-XX:+NeverTenure |
bool |
|
|
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
-XX:NewRatio=<value> |
intx |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
Ratio of new/old
generation sizes [sparc -server: 2, sparc -client: 4 (1.3) 8 (1.3.1+),
intel: 12] |
-XX:NewSize=<value> |
uintx |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
Default size of
new generation (in bytes) [sparc 2.125M, intel: 640k] |
|
-XX:NewSizeThreadIncrease=<value> |
uintx |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
As more threads
are created in a server application, the object allocation rate may
increase with the number of active threads. The number of active
threads is considered when adjusting the size of the young space, after a
garbage collection. This flag specifies, in Kilobytes, the increment in
young object space size, per active thread, to accomodate potentially
faster object allocation rate. |
|
-XX:NmethodSweepFraction=<value> |
intx |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
-XX:NMethodSweepInterval=<value> |
|
1.3.1 |
|
|
|
|
|
|
-XX:NUMAChunkResizeWeight=<value> |
intx |
|
|
|
|
|
1.6.0 |
|
-XX:NUMAPageScanRate=<value> |
intx |
|
|
|
|
|
1.6.0 |
|
-XX:NUMASpaceResizeRate=<value> |
intx |
|
|
|
|
|
1.6.0 |
|
-XX:+NUMAStats |
bool |
|
|
|
|
|
1.6.0 |
|
-XX:OldPLABSize=<value> |
uintx |
|
|
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
-XX:OldSize=<value> |
uintx |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
-XX:+OmitStackTraceInFastThrow |
bool |
|
|
|
|
|
1.6.0 |
|
-XX:OnError=<value> |
ccstr |
|
|
|
|
1.5.0 |
1.6.0 |
The Hotspot JVM
includes a fatal error hander that can run a user-supplied script or
program if the JVM aborts. A debug tool can also connect to a hung JVM
or core file using the Hotspot JVM serviceability agent connector. |
|
-XX:OnOutOfMemoryError=<value> |
ccstr |
|
|
|
|
|
1.6.0 |
|
-XX:OnStackReplacePercentage=<value> |
intx |
|
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
-XX:OnStackReplaceThreshold=<value> |
|
1.3.1 |
|
|
|
|
|
|
-XX:+OptimizeSinglePrecision |
bool |
|
1.4.0 |
|
|
|
|
|
-XX:+OverrideDefaultLibthread |
bool |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
|
On Solaris 9, this
option is not necessary. On Solaris 8, J2SE? versions 1.3.1_02+ and 1.4+
require this option when using the alternate threads library. This
option is not possible on pre-Solaris 8 operating environments. |
|
-XX:OversizedCarThreshold=<value> |
uintx |
|
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
O |
|
-XX:ParallelGCBufferWastePct=<value> |
intx |
|
|
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
-XX:ParallelGCG1AllocBufferSize=<value> |
intx |
|
|
1.4.1 |
1.4.2 |
1.5.0 |
|
|
-XX:ParallelGCOldGenAllocBufferSize=<value> |
intx |
|
|
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
Java 6: se
-XX:OldPLABSize in place of -XX:ParallelGCOldGenAllocBufferSize in the
future.
|
-XX:+ParallelGCRetainPLAB |
bool |
|
|
|
|
1.5.0 |
1.6.0 |
|
-XX:ParallelGCTermSpinLoopMS=<value> |
intx |
|
|
1.4.1 |
1.4.2 |
1.5.0 |
|
|
-XX:ParallelGCThreads=<value> |
uintx |
|
|
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
This switch sets
the number of parallel GC threads that the JVM must run for performing
garbage collection in the young generation. The default value of n is
equal to the number of CPUs on the system. However, it has been observed
that tweaking this number may improve performance in some cases. An
example might be that of multiple instances of JVM running on a single
multi-CPU system. In this case, the number of parallel GC threads for
each JVM may need to be set to less than the number of CPUs by using
this switch. Available from J2SE1.4.1. |
|
-XX:ParallelGCToSpaceAllocBufferSize=<value> |
intx |
|
|
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
Java 6: Use
-XX:YoungPLABSize in place of -XX:ParallelGCToSpaceAllocBufferSize in
the future.
|
-XX:+ParallelGCVerbose |
bool |
|
|
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
-XX:+ParallelRefProcEnabled |
bool |
|
|
|
|
1.5.0 |
1.6.0 |
|
-XX:ParCMSPromoteBlocksToClaim=<value> |
intx |
|
|
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
Java 6: Use
-XX:CMSParPromoteBlocksToClaim in place of
-XX:ParCMSPromoteBlocksToClaim in the future.
|
-XX:ParGCArrayScanChunk=<value> |
intx |
|
|
|
|
1.5.0 |
1.6.0 |
|
-XX:ParGCDesiredObjsFromOverflowList=<value> |
intx |
|
|
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
-XX:ParGCMaxArrayAsNormalObject=<value> |
intx |
|
|
1.4.1 |
1.4.2 |
|
|
|
-XX:+ParkTLE |
bool |
1.3.1 |
|
|
|
|
|
|
-XX:+PassParametersInRegisters |
bool |
1.3.1 |
|
|
|
|
|
|
-XX:+PauseAtStartup |
bool |
|
|
|
|
|
1.6.0 |
|
-XX:PauseAtStartupFile=<value> |
ccstr |
|
|
|
|
|
1.6.0 |
|
-XX:PerBytecodeRecompilationCutoff=<value> |
intx |
|
|
|
|
|
1.6.0 |
|
-XX:PerBytecodeTrapLimit=<value> |
intx |
|
|
|
|
|
1.6.0 |
|
-XX:+PerfAllowAtExitRegistration |
bool |
|
|
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
-XX:+PerfBypassFileSystemCheck |
bool |
|
|
|
1.4.2 |
1.5.0 |
1.6.0 |
|
-XX:PerfDataMemorySize=<value> |
intx |
|
|
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
|
-XX:PerfDataSamplingInterval=<value> |
intx |
|
|
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
-XX:+PerfDataSaveToFile |
bool |
|
|
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
|
-XX:+PerfDisableSharedMem |
bool |
|
|
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
|
-XX:PerfMaxStringConstLength=<value> |
intx |
|
|
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
-XX:PerMethodRecompilationCutoff=<value> |
intx |
|
|
|
|
|
1.6.0 |
|
-XX:PerMethodTrapLimit=<value> |
intx |
|
|
|
|
|
1.6.0 |
|
-XX:PermGenPadding=<value> |
uintx |
|
|
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
-XX:PermMarkSweepDeadRatio=<value> |
intx |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
|
-XX:PermSize=<value> |
uintx |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
Initial size of
permanent generation |
|
-XX:+PostSpinYield |
bool |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
-XX:PreBlockSpin=<value> |
intx |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
-XX:+PreferInterpreterNativeStubs |
bool |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
-XX:PrefetchCopyIntervalInBytes=<value> |
intx |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
Prefetch n bytes
ahead for scavenge copy destination area. The default is 0. The ideal
value may vary depending on the processor. |
|
-XX:PrefetchFieldsAhead=<value> |
intx |
|
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
-XX:PrefetchScanIntervalInBytes=<value> |
intx |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
Prefetch n bytes
ahead for scavenge scan area. The default is 0. The ideal value may
vary depending on the processor. |
|
-XX:PrefetchScavengeFieldsAhead=<value> |
|
1.3.1 |
|
|
|
|
|
Prefetch the next n
fields of objects during scavenge. The default is 0. The ideal value may
vary depending on the processor. |
|
-XX:PreInflateSpin=<value> |
intx |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
-XX:+PreserveAllAnnotations |
bool |
|
|
|
|
1.5.0 |
1.6.0 |
|
-XX:PreserveMarkStackSize=<value> |
uintx |
|
|
|
|
1.5.0 |
1.6.0 |
|
-XX:+PreSpinYield |
bool |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
-XX:PretenureSizeThreshold=<value> |
uintx |
|
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
Objects size
greater than this is directly allocated in the older generation |
|
-XX:+PrintAdaptiveSizePolicy |
bool |
|
|
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
Prints
information about adaptive size policy |
|
-XX:+PrintClassHistogram |
bool |
|
|
|
1.4.2 |
1.5.0 |
1.6.0 |
Prints the all
the java heap objects, their instance count and total space they occupy
in the heap. The only downside is that you need to issue a SIGQUIT (see
-Xsqnopause) which will leave the app running but will dump all of this
data to stdout. Very useful to assist in identifying memory problems for
example on a production platform where an CPU intensive profiler cannot
be used. |
-XX:+PrintCMSInitiationStatistics |
bool |
|
|
|
|
|
1.6.0 |
|
-XX:PrintCMSStatistics=<value> |
intx |
|
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
If > 0, Print
statistics about the concurrent collections. For example, the number of
times the concurrent collection yield to a young generation collection
and the number of cards precleaned |
|
-XX:+PrintCommandLineFlags |
bool |
|
|
|
|
1.5.0 |
1.6.0 |
|
|
-XX:+PrintCompilation |
bool |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
traces methods as
compiled |
|
-XX:+PrintConcurrentLocks |
bool |
|
|
|
|
|
1.6.0 |
|
-XX:PrintFLSCensus=<value> |
intx |
|
|
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
if > 0, print
the populations of the CMS free lists |
|
-XX:PrintFLSStatistics=<value> |
intx |
|
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
If > 0, print
statistics about the concurrent free lists. For example, a fragmentation
parameter |
|
-XX:+PrintGC |
bool |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
|
-XX:+PrintGCApplicationConcurrentTime |
bool |
|
|
|
1.4.2 |
1.5.0 |
1.6.0 |
Measure the
amount of time the applications runs between collection pauses |
|
-XX:+PrintGCApplicationStoppedTime |
bool |
|
|
|
1.4.2 |
1.5.0 |
1.6.0 |
Measure the
length of the collection pauses. |
|
-XX:+PrintGCDetails |
bool |
|
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
Gives some details about the GCs,
such as size of the young and old generation before and after GCs, size
of total heap, time it takes for a GC to happen in young and old
generation, size of objects promoted at every GC etc. |
|
-XX:+PrintGCTaskTimeStamps |
bool |
|
|
|
1.4.2 |
1.5.0 |
1.6.0 |
|
-XX:+PrintGCTimeStamps |
bool |
|
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
Prints the times
at which the GCs happen relative to the start of the application |
|
-XX:+PrintHeapAtGC |
bool |
|
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
Prints detailed GC info including
heap occupancy before and after GC. |
|
-XX:+PrintHeapAtSIGBREAK |
bool |
|
|
|
|
|
1.6.0 |
|
-XX:+PrintHeapUsageOverTime |
bool |
|
|
|
|
|
|
Print heap usage and capacity with
timestamps |
|
-XX:+PrintInlining |
bool |
|
|
|
|
|
|
Print message about inlined methods (debug
only) |
|
-XX:+PrintInterpreter |
bool |
|
|
|
|
|
1.6.0 |
|
-XX:+PrintJNIResolving |
bool |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
-XX:+PrintParallelOldGCPhaseTimes |
bool |
|
|
|
|
|
1.6.0 |
|
-XX:+PrintParScavenge |
bool |
1.3.1 |
|
|
|
|
|
|
-XX:+PrintPLAB |
bool |
|
|
|
|
|
1.6.0 |
|
-XX:+PrintScavenge |
bool |
1.3.1 |
|
|
|
|
|
|
|
-XX:+PrintSharedSpaces |
bool |
|
|
|
|
1.5.0 |
1.6.0 |
|
-XX:+PrintTenuringDistribution |
bool |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
Gives the aging
distribution of the allocated objects in the young generation. Tuning of
-XX:NewSize, -XX:MaxNewSize, -XX:SurvivorRatio and
-XX:MaxTenuringThreshold=0as described earlier, should be directed by
the analysis of the output from this switch to determine that objects
are not prematurely promoted to the old generation. |
|
-XX:+PrintTLAB |
bool |
|
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
trace all the operations on TLAB's
(Thread Allocation Buffers) |
|
-XX:+PrintTLE |
bool |
1.3.1 |
|
|
|
|
1.6.0 |
|
-XX:+PrintVMOptions |
bool |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
|
-XX:+PrintVMQWaitTime |
bool |
|
|
|
|
|
1.6.0 |
|
-XX:ProcessDistributionStride=<value> |
uintx |
|
|
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
-XX:ProcessingToTenuringRatio=<value> |
intx |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
O |
|
-XX:+ProfileIntervals |
bool |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
|
-XX:ProfileIntervalsTicks=<value> |
intx |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
|
-XX:ProfileMaturityPercentage=<value> |
intx |
|
|
|
|
|
1.6.0 |
|
-XX:+ProfilerLight |
bool |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
|
|
-XX:+ProfilerPrintByteCodeStatistics |
bool |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
|
-XX:+ProfilerRecordPC |
bool |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
|
-XX:+ProfileVM |
bool |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
|
-XX:PromotedPadding=<value> |
uintx |
|
|
|
|
1.5.0 |
1.6.0 |
|
|
-XX:QueuedAllocationWarningCount=<value> |
intx |
|
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
|
-XX:+RangeCheckElimination |
bool |
|
|
|
|
|
1.6.0 |
|
-XX:ReadPrefetchInstr=<value> |
intx |
|
|
|
|
|
1.6.0 |
|
-XX:ReadSpinIterations=<value> |
intx |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
|
-XX:+ReduceSignalUsage |
bool |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
|
-XX:RefDiscoveryPolicy=<value> |
intx |
|
|
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
-XX:+RegisterFinalizersAtInit |
bool |
|
|
|
|
|
1.6.0 |
|
-XX:+RelaxAccessControlCheck |
bool |
|
|
|
|
|
1.6.0 |
|
-XX:+RequireSharedSpaces |
bool |
|
|
|
|
1.5.0 |
1.6.0 |
|
-XX:ReservedCodeCacheSize=<value> |
intx |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
Reserved code
cache size (in bytes) - maximum code cache size. [Solaris 64-bit: 1024m] |
|
-XX:+ResizePLAB |
bool |
|
|
|
|
|
1.6.0 |
|
-XX:+ResizeTLAB |
bool |
|
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
Enable or disable resizing of
TLABs. The -server VM has this option enabled by default. |
|
-XX:+ResizeTLE |
bool |
1.3.1 |
|
|
|
|
1.6.0 |
|
|
-XX:+RestoreMXCSROnJNICalls |
bool |
|
|
|
|
|
1.6.0 |
|
-XX:+RewriteBytecodes |
bool |
|
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
|
-XX:+RewriteFrequentPairs |
bool |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
|
-XX:+SafepointPolling |
bool |
|
|
|
|
1.5.0 |
|
|
|
-XX:SafepointSpinBeforeYield=<value> |
intx |
|
|
|
|
|
1.6.0 |
|
-XX:+ScavengeBeforeFullGC |
bool |
|
|
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
-XX:ScavengeThreads=<value> |
|
1.3.1 |
|
|
|
|
|
|
-XX:SelfDestructTimer=<value> |
intx |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
|
-XX:+SerializeVMOutput |
bool |
|
|
|
1.4.2 |
1.5.0 |
1.6.0 |
|
|
-XX:SharedDummyBlockSize=<value> |
uintx |
|
|
|
|
1.5.0 |
1.6.0 |
|
-XX:SharedMiscDataSize=<value> |
uintx |
|
|
|
|
1.5.0 |
1.6.0 |
|
-XX:+SharedOptimizeColdStart |
bool |
|
|
|
|
|
1.6.0 |
|
-XX:SharedReadOnlySize=<value> |
uintx |
|
|
|
|
1.5.0 |
1.6.0 |
|
-XX:SharedReadWriteSize=<value> |
uintx |
|
|
|
|
1.5.0 |
1.6.0 |
|
-XX:+SharedSkipVerify |
bool |
|
|
|
|
|
1.6.0 |
|
-XX:+ShowMessageBoxOnError |
bool |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
|
-XX:SliceSizeInCards=<value> |
|
1.3.1 |
|
|
|
|
|
|
-XX:SoftRefLRUPolicyMSPerMB=<value> |
intx |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
Starting with
Java HotSpot VM implementations in J2SE 1.3.1, softly reachable objects
will remain alive for some amount of time after the last time they were
referenced. The default value is one second of lifetime per free
megabyte in the heap. This value can be adjusted using the
-XX:SoftRefLRUPolicyMSPerMB flag, which accepts integer values
representing milliseconds per MB of free memory. |
|
-XX:+SplitIfBlocks |
bool |
|
|
|
|
|
1.6.0 |
|
-XX:StackRedPages=<value> |
intx |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
-XX:StackShadowPages=<value> |
intx |
|
|
|
1.4.2 |
1.5.0 |
1.6.0 |
|
|
-XX:+StackTraceInThrowable |
bool |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
Enable or disable
stack traces in exceptions. |
|
-XX:StackYellowPages=<value> |
intx |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
-XX:Stage2CompileThreshold=<value> |
intx |
|
1.4.0 |
|
|
|
|
|
-XX:+StagedCompilation |
bool |
|
1.4.0 |
|
|
|
|
|
-XX:+StartAttachListener |
bool |
|
|
|
|
|
1.6.0 |
|
-XX:StarvationMonitorInterval=<value> |
intx |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
-XX:+StressLdcRewrite |
bool |
|
|
|
|
|
1.6.0 |
|
-XX:+StressTieredRuntime |
bool |
|
|
|
|
|
1.6.0 |
|
-XX:+SuppressFatalErrorMessage |
bool |
|
|
|
|
|
1.6.0 |
|
-XX:SurvivorPadding=<value> |
uintx |
|
|
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
-XX:SurvivorRatio=<value> |
intx |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
Sets the ratio of
the survivor spaces (there are two) to the whole of the young
generation. |
|
-XX:SuspendRetryCount=<value> |
intx |
|
|
|
|
|
1.6.0 |
|
-XX:SuspendRetryDelay=<value> |
intx |
|
|
|
|
|
1.6.0 |
|
-XX:SyncFlags=<value> |
intx |
|
|
|
|
|
1.6.0 |
|
-XX:SyncKnobs=<value> |
ccstr |
|
|
|
|
|
1.6.0 |
|
-XX:SyncVerbose=<value> |
intx |
|
|
|
|
|
1.6.0 |
|
-XX:+TaggedStackInterpreter |
bool |
|
|
|
|
|
1.6.0 |
|
-XX:TargetPLABWastePct=<value> |
intx |
|
|
|
|
|
1.6.0 |
|
-XX:TargetSurvivorOccupationRatio=<value> |
size_t |
1.3.1 |
|
|
|
|
|
|
-XX:TargetSurvivorPadding=<value> |
size_t |
1.3.1 |
|
|
|
|
|
|
-XX:TargetSurvivorRatio=<value> |
intx |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
This flag sets
the desired percentage of the survivor space heap which must be used
before objects are promoted to the old generation. For example, setting z
to 90 would mean that 90% of the survivor space must be used before the
young generation is considered full and objects are promoted to the old
generation. This would allow objects to age more in the young
generation before being tenured. The default value is 50. |
|
-XX:TenuredGenerationSizeIncrement=<value> |
uintx |
|
|
|
|
1.5.0 |
1.6.0 |
|
-XX:TenuredGenerationSizeSupplement=<value> |
uintx |
|
|
|
|
1.5.0 |
1.6.0 |
|
-XX:TenuredGenerationSizeSupplementDecay=<value> |
uintx |
|
|
|
|
1.5.0 |
1.6.0 |
|
-XX:ThreadPriorityPolicy=<value> |
intx |
|
|
|
|
1.5.0 |
1.6.0 |
|
-XX:+ThreadPriorityVerbose |
bool |
|
|
|
1.4.2 |
1.5.0 |
1.6.0 |
|
|
-XX:ThreadSafetyMargin=<value> |
intx |
|
|
|
|
1.5.0 |
1.6.0 |
|
-XX:ThreadStackSize=<value> |
intx |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
Thread Stack Size
(in Kbytes) (0 means use default stack size) [Sparc: 512, Solaris
Intel: 256, Sparc 64bit: 1024 all others 0] |
|
-XX:ThresholdTolerance=<value> |
uintx |
|
|
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
-XX:Tier1BytecodeLimit=<value> |
intx |
|
|
|
|
|
1.6.0 |
|
-XX:+Tier1UpdateMethodData |
bool |
|
|
|
|
|
1.6.0 |
|
-XX:Tier2BackEdgeThreshold=<value> |
intx |
|
|
|
|
|
1.6.0 |
|
-XX:Tier2CompileThreshold=<value> |
intx |
|
|
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
-XX:+TieredCompilation |
bool |
|
|
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
-XX:TLABAllocationWeight=<value> |
uintx |
|
|
|
|
1.5.0 |
1.6.0 |
|
-XX:TLABFragmentationRatio=<value> |
uintx |
|
1.4.0 |
1.4.1 |
1.4.2 |
|
|
|
-XX:TLABRefillWasteFraction=<value> |
uintx |
|
|
|
|
1.5.0 |
1.6.0 |
|
-XX:TLABSize=<value> |
uintx |
|
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
Set the size of
the TLAB in bytes. |
|
-XX:+TLABStats |
bool |
|
|
|
|
1.5.0 |
1.6.0 |
|
-XX:TLABThreadRatio=<value> |
uintx |
|
1.4.0 |
1.4.1 |
1.4.2 |
|
|
|
|
-XX:TLABWasteIncrement=<value> |
uintx |
|
|
|
|
1.5.0 |
1.6.0 |
|
-XX:TLABWasteTargetPercent=<value> |
uintx |
|
|
|
|
1.5.0 |
1.6.0 |
|
-XX:TLEFragmentationRatio=<value> |
|
1.3.1 |
|
|
|
|
1.6.0 |
|
-XX:TLESize=<value> |
size_t |
1.3.1 |
|
|
|
|
1.6.0 |
Sets the size of the TLEs (in
bytes) |
|
-XX:TLEThreadRatio=<value> |
|
1.3.1 |
|
|
|
|
1.6.0 |
|
|
-XX:+TraceBiasedLocking |
bool |
|
|
|
|
|
1.6.0 |
|
-XX:+TraceClassLoading |
bool |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
Display classes
as they are loaded. Similar to -verbose:class |
-XX:+TraceClassLoadingPreorder |
bool |
|
|
|
1.4.2 |
1.5.0 |
1.6.0 |
|
-XX:+TraceClassResolution |
bool |
|
|
|
1.4.2 |
1.5.0 |
1.6.0 |
|
-XX:+TraceClassUnloading |
bool |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
Display classes
as they are unloaded. |
|
-XX:+TraceFailedVMTextSegmentRetarget |
bool |
|
1.4.0 |
1.4.1 |
|
|
|
|
-XX:+TraceGen0Time |
bool |
|
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
-XX:+TraceGen1Time |
bool |
|
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
-XX:TraceJVMTI=<value> |
ccstr |
|
|
|
|
1.5.0 |
1.6.0 |
|
|
-XX:+TraceJVMTIObjectTagging |
bool |
|
|
|
|
1.5.0 |
1.6.0 |
|
-XX:+TraceLoaderConstraints |
bool |
|
|
|
|
|
1.6.0 |
|
-XX:+TraceMonitorInflation |
bool |
|
|
|
|
|
1.6.0 |
|
-XX:+TraceParallelOldGCTasks |
bool |
|
|
|
|
|
1.6.0 |
|
-XX:TraceRedefineClasses=<value> |
intx |
|
|
|
|
|
1.6.0 |
|
-XX:TypeProfileFailureLimit=<value> |
intx |
|
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
|
|
-XX:TypeProfileMinimumRatio=<value> |
intx |
|
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
-XX:Ultra3PrefetchCopyIntervalInBytes=<value> |
|
1.3.1 |
|
|
|
|
|
|
-XX:Ultra3PrefetchScanIntervalInBytes=<value> |
|
1.3.1 |
|
|
|
|
|
|
-XX:Ultra3PrefetchScavengeFieldsAhead=<value> |
|
1.3.1 |
|
|
|
|
|
|
-XX:UnguardOnExecutionViolation=<value> |
intx |
|
|
|
|
|
1.6.0 |
|
-XX:+UnlockDiagnosticVMOptions |
bool |
|
|
|
1.4.2 |
1.5.0 |
1.6.0 |
|
|
-XX:+Use486InstrsOnly |
bool |
|
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
-XX:+UseAdaptiveGCBoundary |
bool |
|
|
|
|
1.5.0 |
1.6.0 |
|
-XX:+UseAdaptiveGenerationSizePolicyAtMajorCollection |
bool |
|
|
|
|
1.5.0 |
1.6.0 |
|
-XX:+UseAdaptiveGenerationSizePolicyAtMinorCollection |
bool |
|
|
|
|
1.5.0 |
1.6.0 |
|
-XX:+UseAdaptiveNUMAChunkSizing |
bool |
|
|
|
|
|
1.6.0 |
|
-XX:+UseAdaptiveSizeDecayMajorGCCost |
bool |
|
|
|
|
|
1.6.0 |
|
-XX:+UseAdaptiveSizePolicy |
bool |
|
|
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
Automatically
sizes the young generation and chooses an optimum survivor ratio to
maximize performance. |
|
-XX:+UseAdaptiveSizePolicyAggressiveFootprintGoal |
bool |
|
|
|
|
1.5.0 |
|
|
-XX:+UseAdaptiveSizePolicyFootprintGoal |
bool |
|
|
|
|
1.5.0 |
1.6.0 |
|
-XX:+UseAdaptiveSizePolicyWithSystemGC |
bool |
|
|
|
|
1.5.0 |
1.6.0 |
|
-XX:+UseAdaptiveSizeScaleFootprintChangeByRatio |
bool |
|
|
|
|
1.5.0 |
|
|
-XX:+UseAdaptiveSizeScaleThroughputChangeByRatio |
bool |
|
|
|
|
1.5.0 |
|
|
-XX:+UseAltSigs |
bool |
1.3.1 |
|
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
On the Solaris operating
environment, the VM uses SIGUSR1 by default, which can sometimes
conflict with applications that signal-chain SIGUSR1. -XX:+UseAltSigs
will cause the VM to use signals other than SIGUSR1 and SIGUSR2 as the
default. |
|
-XX:+UseAutoGCSelectPolicy |
bool |
|
|
|
|
|
1.6.0 |
|
-XX:+UseBiasedLocking |
bool |
|
|
|
|
1.5.0 |
1.6.0 |
This option first
appears in 1.5.0_06. Enables a technique for improving the performance
of uncontended synchronization. Some applications with significant
amounts of uncontended synchronization may attain significant speedups
with this flag enabled. |
|
-XX:+UseBoundThreads |
bool |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
Bind user level threads (Solaris
only) |
|
-XX:+UseC2CallingConventions |
bool |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
|
|
|
|
-XX:+UseCMSBestFit |
bool |
|
|
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
-XX:+UseCMSCollectionPassing |
bool |
|
|
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
-XX:+UseCMSCompactAtFullCollection |
bool |
|
|
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
Normally the
concurrent low pause collector does not copy nor compact the live
objects. A garbage collection is done without moving the live objects.
If fragmentation becomes a problem, allocate a larger heap. In 1.4.2 if
fragmentation in the tenured generation becomes a problem, a compaction
of the tenured generation will be done although not concurrently. In
1.4.1 that compaction will occur if the UseCMSCompactAtFullCollection
option is turned on. |
|
-XX:+UseCMSInitiatingOccupancyOnly |
bool |
|
|
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
Used to
enabled/disable the use of the anticipated promotions to start a
concurrent collection set |
|
-XX:+UseCompiler |
bool |
|
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
-XX:+UseCompilerSafepoints |
bool |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
|
-XX:+UseConcMarkSweepGC |
bool |
|
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
This flag turns
on concurrent garbage collection in the old generation. Available from
J2SE1.4.1. |
|
-XX:+UseDefaultStackSize |
bool |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
|
|
-XX:+UseDepthFirstScavengeOrder |
bool |
|
|
|
|
|
1.6.0 |
|
-XX:+UseExtendedFileIO |
bool |
|
|
|
|
|
1.6.0 |
|
-XX:+UseFastAccessorMethods |
bool |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
|
-XX:+UseFastEmptyMethods |
bool |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
|
-XX:+UseFastJNIAccessors |
bool |
|
|
|
|
1.5.0 |
1.6.0 |
|
|
-XX:+UseFixedFrameSize |
bool |
|
1.4.0 |
1.4.1 |
1.4.2 |
|
|
|
|
-XX:+UseForcedSuspension |
bool |
|
|
1.4.1 |
1.4.2 |
|
|
|
|
-XX:+UseGCOverheadLimit |
bool |
|
|
|
|
|
1.6.0 |
|
-XX:+UseGCTaskAffinity |
bool |
|
|
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
-XX:+UseHeavyMonitors |
bool |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
|
-XX:+UseInterpreter |
bool |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
|
-XX:+UseISM |
bool |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
Intimate Shared Memory |
|
-XX:+UseLargePages |
bool |
|
|
|
|
|
1.6.0 |
|
-XX:+UseLargePageSize |
bool |
|
1.4.0 |
1.4.1 |
|
|
|
|
-XX:+UseLoopCounter |
bool |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
|
-XX:+UseLWPSynchronization |
bool |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
Use LWP-based
instead of thread based synchronization. Default is on in J2SE 1.4.0 or
higher. (Solaris only) |
|
-XX:+UseMaximumCompactionOnSystemGC |
bool |
|
|
|
|
|
1.6.0 |
|
-XX:+UseMembar |
bool |
|
|
|
|
|
1.6.0 |
|
-XX:+UseMPSS |
bool |
|
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
Use Multiple Page Size Support (Solaris 9
only) w/4mb pages for the heap. Do not use with ISM as this replaces the
need for ISM. |
|
-XX:+UseNewCode |
bool |
|
|
|
|
|
1.6.0 |
|
-XX:+UseNewCode2 |
bool |
|
|
|
|
|
1.6.0 |
|
-XX:+UseNewCode3 |
bool |
|
|
|
|
|
1.6.0 |
|
-XX:+UseNewFeature1 |
bool |
|
|
|
1.4.2 |
1.5.0 |
|
|
-XX:+UseNewFeature2 |
bool |
|
|
|
1.4.2 |
1.5.0 |
|
|
-XX:+UseNewFeature3 |
bool |
|
|
|
1.4.2 |
1.5.0 |
|
|
-XX:+UseNewFeature4 |
bool |
|
|
|
1.4.2 |
1.5.0 |
|
|
-XX:+UseNiagaraInstrs |
bool |
|
|
|
|
|
1.6.0 |
|
-XX:+UseOnStackReplacement |
bool |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
|
-XX:+UseOversizedCarHandling |
bool |
|
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
O |
|
-XX:+UseParallelDensePrefixUpdate |
bool |
|
|
|
|
|
1.6.0 |
|
-XX:+UseParallelGC |
bool |
|
|
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
This flag also turns on parallel
garbage collection policy in the young generation; however, it does not
work with the CMS collector in the old generation. It is more suitable
for enterprise applications which can benefit from very large young
generation heaps. |
|
-XX:+UseParallelOldGC |
bool |
|
|
|
|
|
1.6.0 |
|
-XX:+UseParallelOldGCCompacting |
bool |
|
|
|
|
|
1.6.0 |
|
-XX:+UseParallelOldGCDensePrefix |
bool |
|
|
|
|
|
1.6.0 |
|
-XX:+UseParallelScavenge |
bool |
1.3.1 |
|
|
|
|
|
|
|
-XX:+UseParNewGC |
bool |
|
|
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
This flag turns on parallel
garbage collection in the young generation. It can be enabled together
with the CMS collector in the old generation. Available in J2SE1.4.1 on
an experimental basis. |
|
-XX:+UsePerfData |
bool |
|
|
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
|
-XX:+UsePermISM |
bool |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
|
-XX:+UsePSAdaptiveSurvivorSizePolicy |
bool |
|
|
|
|
1.5.0 |
1.6.0 |
|
-XX:+UseRecompilation |
bool |
1.3.1 |
|
|
|
|
|
|
|
-XX:+UseResizableSurvivorSpaces |
bool |
1.3.1 |
|
|
|
|
|
|
-XX:+UseSerialGC |
bool |
|
|
|
|
1.5.0 |
1.6.0 |
Enable the "legacy" serial garbage
collector. The 1.5+ collectors are generally more robust now, and this
garbage collector will not be supported much longer |
|
-XX:+UseSharedSpaces |
bool |
|
|
|
|
1.5.0 |
1.6.0 |
|
|
-XX:+UseSignalChaining |
bool |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
|
-XX:+UseSpecLock |
bool |
1.3.1 |
1.4.0 |
|
|
|
|
|
|
-XX:+UseSpinning |
bool |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
|
-XX:+UseSplitVerifier |
bool |
|
|
|
|
1.5.0 |
1.6.0 |
|
-XX:UseSSE=<value> |
intx |
|
|
|
|
1.5.0 |
1.6.0 |
From Bug 5108893,
The option probably indicates whether the compiler should
make use of the processor's SSEi instructions and is only available in
server VMs. |
-XX:+UseStoreImmI16 |
bool |
|
|
|
|
|
1.6.0 |
|
-XX:+UseSuspendResumeThreadLists |
bool |
|
|
|
1.4.2 |
1.5.0 |
1.6.0 |
|
-XX:+UseThreadPriorities |
bool |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
Use native thread
priorities |
|
-XX:+UseTLAB |
bool |
|
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
Turn off thread-local object allocation |
|
-XX:+UseTLE |
bool |
1.3.1 |
|
|
|
|
1.6.0 |
Turn
off thread local portions of the heap in the young generation |
|
-XX:+UseTrainGC |
bool |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
O |
|
|
-XX:+UseTypeProfile |
bool |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
|
-XX:+UseUnsupportedDeprecatedJVMPI |
bool |
|
|
|
|
|
1.6.0 |
|
-XX:+UseVectoredExceptions |
bool |
|
|
|
|
|
1.6.0 |
|
-XX:+UseVMInterruptibleIO |
bool |
|
|
|
|
|
1.6.0 |
|
-XX:ValueMapBucketInitialSize=<value> |
intx |
|
1.4.0 |
|
|
|
|
|
-XX:ValueMapBucketMaxSize=<value> |
intx |
|
1.4.0 |
|
|
|
|
|
-XX:ValueMapMaxSize=<value> |
intx |
|
1.4.0 |
|
|
|
|
|
-XX:+VerifyAfterGC |
bool |
|
|
|
|
|
1.6.0 |
|
|
-XX:+VerifyAfterScavenge |
bool |
|
|
|
|
|
|
|
|
-XX:+VerifyBeforeExit |
bool |
|
|
|
|
|
1.6.0 |
|
-XX:+VerifyBeforeGC |
bool |
|
|
|
|
|
1.6.0 |
|
|
-XX:+VerifyBeforeIteration |
bool |
|
|
|
|
1.5.0 |
1.6.0 |
|
-XX:+VerifyBeforeScavenge |
bool |
|
|
|
|
|
|
|
|
-XX:+VerifyDuringGC |
bool |
|
|
|
|
|
1.6.0 |
|
-XX:VerifyGCLevel=<value> |
intx |
|
|
|
|
|
1.6.0 |
|
-XX:+VerifyMergedCPBytecodes |
bool |
|
|
|
|
|
1.6.0 |
|
-XX:+VerifyObjectStartArray |
bool |
|
|
|
|
|
1.6.0 |
|
-XX:+VerifyRememberedSets |
bool |
|
|
|
|
|
1.6.0 |
|
-XX:+VerifyTLAB |
bool |
|
|
|
1.4.2 |
|
|
|
|
-XX:+VerifyTLE |
bool |
|
|
|
|
|
|
|
|
-XX:+VMThreadHintNoPreempt |
bool |
|
|
|
1.4.2 |
1.5.0 |
1.6.0 |
|
-XX:VMThreadPriority=<value> |
intx |
|
|
|
1.4.2 |
1.5.0 |
1.6.0 |
|
-XX:VMThreadStackSize=<value> |
intx |
1.3.1 |
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
|
-XX:WorkAroundNPTLTimedWaitHang=<value> |
intx |
|
|
|
|
|
1.6.0 |
|
-XX:YoungGenerationSizeIncrement=<value> |
uintx |
|
|
|
|
1.5.0 |
1.6.0 |
|
-XX:YoungGenerationSizeSupplement=<value> |
uintx |
|
|
|
|
1.5.0 |
1.6.0 |
|
-XX:YoungGenerationSizeSupplementDecay=<value> |
uintx |
|
|
|
|
1.5.0 |
1.6.0 |
|
-XX:YoungPLABSize=<value> |
uintx |
|
|
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
-XX:+ZeroTLAB |
bool |
|
1.4.0 |
1.4.1 |
1.4.2 |
1.5.0 |
1.6.0 |
|
|
-XX:+ZeroTLE |
bool |
1.3.1 |
|
|
|
|
|
|
|