Profile Image
vishnupriya

What is JVM startup parameter: -XX:-TieredCompilation?

What is JVM startup parameter: -XX:-TieredCompilation? Have you used this JVM arguement before? What are the pros & cons of using this Java argument? Can you share your perspective/experience in using this JVM argument?

  • jvmargument

  • xx-tieredcompilation

  • x-tieredcompilation

  • JVM startup parameter

Please Sign In or to post your comment or answer

Profile Image

Pavel Khodakovsky

Usage:

 

This flag allows you to disables the use of tiered compilation.

 

Since:

 

Starting from JDK 6.

 

Examples:

 

This will instruct JVM to disable the use of tiered compilation:

 

java -XX:-TieredCompilation MainClass

 

Description:

 

This flag disables intermediate compilation of the execution level C1 so that a method is either interpreted or compiled at the maximum optimization level (C2). As a side effect TieredCompilation flag also changes the number of compiler threads, the compilation policy and the default code cache size. Note that with TieredCompilation disabled

  • there will be less compiler threads;
  • simple compilation policy (based on method invocation and backedge counters) will be chosen instead of advanced compilation policy;
  • default reserved code cache size will be 5 times smaller.

Default Value:

 

By default, this option is enabled.

 

Errors:

 

An exception is thrown if the JVM doesn’t not support the flag.

 

Related Posts:

NOTE:

 

Only the Java HotSpot Server VM supports this option.

 

The execution levels supported by the compilation system are:

  • level 0 - interpreter
  • level 1 - C1 with full optimization (no profiling)
  • level 2 - C1 with invocation and backedge counters
  • level 3 - C1 with full profiling (level 2 + MDO)
  • level 4 - C2

Got something else on mind? Post Your Question

Not the answer you're looking for? Browse other questions tagged
  • jvmargument

  • xx-tieredcompilation

  • x-tieredcompilation

  • JVM startup parameter