Profile Image
vishnupriya

What is Memory tuning: -XX:UseCompressedOops?

What is Memory tuning: -XX:UseCompressedOops? 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-usecompressedoops

  • x-usecompressedoops

  • Memory tuning

Please Sign In or to post your comment or answer

Profile Image

Pavel Khodakovsky

Usage:

 

You can disable the use of compressed pointers with:

 

-XX:UseCompressedOops.

 

Description:

 

    Disables the use of compressed pointers. By default, this option is enabled, and compressed pointers are used. This will automatically limit the maximum ergonomically determined Java heap size to the maximum amount of memory that can be covered by compressed pointers. By default this range is 32 GB.

 

    With compressed oops enabled, object references are represented as 32-bit offsets instead of 64-bit pointers, which typically increases performance when running the application with Java heap sizes smaller than the compressed oops pointer range. This option works only for 64-bit JVMs.

 

It's possible to use compressed pointers with Java heap sizes greater than 32 GB.

 

Default Value:

 

Enabled by default

 

Errors:

 

None

 

Arguments related:

 

TODO link Xmx, Xms, ObjectAlignmentInBytes

 

 Related Posts:

NOTE:

 

If you have additional comments, interesting experiences or even point of disagreement with this JVM argument description, please leave a comment. Your insights will help the entire 10+ million java developer community to develop one standard source of documentation for all the JVM arguments.

Got something else on mind? Post Your Question

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

  • xx-usecompressedoops

  • x-usecompressedoops

  • Memory tuning