JVM Ergonomics

[Last Updated: Feb 11, 2016]


Starting from JDK 5 a new feature known as JVM Ergonomics was added.

The feature is self turning of JVM based on underlying system resources. JVM determines some of the options values automatically. It is an attempt to provide a good performance from the JVM with a minimum of command line tuning.

For example, if a machine has more than 2 physical processors and it has more than 2GB of physical memory, it is classified as 'server-class' machine. In that case followings are selected by default:

  • Throughput garbage collection.
  • Initial heap size of 1/64 of physical memory up to 1 GB
  • Maximum heap size of 1/4 of physical memory up to 1 GB
  • Server runtime compiler


See Also