Standard JRE Options

To get the list of standard JRE options, run DRLVM with the -help option:

java -help

Non-standard JRE Options

To get the list of non-standard JRE options, run DRLVM with the -X option:

java -X

Component-specific Options and Properties

(since revision r552672, (Jul 03, 2007))

VM Core (vm/vmcore)

OPTIONS

COMMENTS

-XX:-vm.assert_dialog

Use to prevent assertion failures from popping up a dialog box.

-XX:+vm.crash_handler

Use to invoke gdb on crashes (POSIX only).

-XX:-vm.finalize

Use to disable finalization subsystem, that is, not to start finalization threads and to ignore finalization requests from the GC.

-XX:+vm.jvmti_compiled_method_load_inlined

Use to report inlined methods with JVMTI_EVENT_COMPILED_METHOD_LOAD event. Makes sense for optimizing jit.

-XX:+vm_bootclasspath_appendclasspath

Use to append classpath to the bootclasspath.

-XX:gc.dll=<GC_DLL>

Use to run DRLVM with non-default GC taken from GC_DLL dynamic library.

EM (Execution Manager)

OPTIONS

COMMENTS

-Xverbose:em

A commonly-used options to print method compilation events to stdout. Helps detect which method failed to compile (not an EM option, but very informative at EM behavior). This option is available in debug build only.

-Xem:<config>

Specify Execution Manager configuration file to use. There is a set of predefined configuration files (client, server, opt, jet - please see below). You may also define your own EM configuration file.

Thread Manager

GCv5 (vm/gc_gen)

Specifies a fixed size for NOS (nursery object space or young generation).

-XX:gc.num_collectors=N

Specifies the number of collectors used for collections for parallel collection.

-XX:+gc.use_large_page

Use to turn on large page support of the platform.

-XX:+gc.verify

Use to turn on GC verifier for GC debugging, type to see available options.

-XX:+gc.force_major_collect

Use to force every collection to be full heap collection (i.e., no minor collections).

-XX:+gc.ignore_finref

Disables processing finalizer and weak references.

-XX:-gc.heap_iteration

Disables JVMTI functionality of heap iteration.

GCv41 (vm/gc_cc)

OPTIONS

COMMENTS

-verbose:gc

Use to enable init messages from GC and information about GC pauses.

-XX:-gc.adaptive

Use to disable adaptive selection between GC algorithms: copying and sliding compaction.

-XX:gc.type=N

Use to specify the number of the GC algorithm to use (use together with -Dgc.adaptive=0). Available algorithms: 1.copying + fallback to sliding compaction; 2.full collection using sliding compaction; 3.sliding compaction.

-XX:+gc.heap_iteration

Enables JVMTI functionality of heap iteration.

-XX:+gc.ignore_finalizers

Use to ignore finalizable objects, that is, not to track reachability of finalizable object, not to revive them and not to pass revived objects to VM for finalization.

-XX:+gc.lp

Use to turn on large page support on Windows to utilize TLB more efficiently. Use -verbose:gc.lp for more diagnostics.

-XX:gc.lp=/mnt/huge

Use on Linux to enable (1) or disable (0) using of large pages to utilize TLB more efficiently. Huge pages are allocated with the 1mmap1 method. You should specify the mount point where hugetlbfs is mounted. Use -verbose:gc.lp for more diagnostics.

-XX:+gc.remember_root_set

Use to enable a root-set caching mode. By default, the copying collector starts evacuating objects as soon as it starts receiving roots during root set enumeration. This option disables immediate evacuation and ensures no objects are moved until the root-set enumeration is complete.