What are the default heap sizes for 64-bit VMs if GC ergonomics is not used?
The default heap size for all 32-bit J2SE implementations is 64MB. We have adjusted the defaults for 64-bit implementations to be 30% larger in order to make up for the increased size of Java objects due to larger native pointers. Remember that Java objects contain class and lock pointers so even if you create Java objects which contain only integers, each object takes up additional memory. How large a heap can I create using a 64-bit VM? On 64-bit VMs, you have 64 bits of addressability to work with resulting in a maximum Java heap size limited only by the amount of physical memory and swap space your system provides.
The default heap size for all 32-bit J2SE implementations is 64MB. We have adjusted the defaults for 64-bit implementations to be 30% larger in order to make up for the increased size of Java objects due to larger native pointers. Remember that Java objects contain class and lock pointers so even if you create Java objects which contain only integers, each object takes up additional memory.
Related Questions
- When using a default interface, are the WSDL and XSD files used by the SSE during the service execution or just for the workflow generation/compilation?
- What option can be specified as an argument to the jdk to increase the thread heap size used by the JDK in the context of the webserver?
- What are the default heap sizes for 64-bit VMs if GC ergonomics is not used?