Profile Image

What is Memory tuning: -XX:MaxHeapSize?

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

  • jvmargument

  • xx-maxheapsize

  • x-maxheapsize

  • Memory tuning

Please Sign In or to post your comment or answer

Profile Image

Pavel Khodakovsky



You can set maximum size in bytes for with:


-XX: MaxHeapSize=size[units], where size is the amount of memory in bytes of  your choice.




To set minimum value for heap at 80MB use:










Sets the maximum size (in byes) of the memory allocation pool. This value must be a multiple of 1024 and greater than 2 MB. Append the letter k or K to indicate kilobytes, m or M to indicate megabytes, or g or G to indicate gigabytes. The default value is selected at run time based on the system configuration. For server deployments, the options -XX:InitialHeapSize and -XX:MaxHeapSize are often set to the same value.


Default Value:


Default value is system-dependent.






Arguments related:


TODO link MinHeapFreeRatio, MaxHeapFreeRatio, Xmx, Xms, InitialHeapSize


 Related Posts



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-maxheapsize

  • x-maxheapsize

  • Memory tuning