How to get the min and max heap size settings of a VM from within a Java program?
Asked
Active
Viewed 3,463 times
4 Answers
14
max heap size:
Runtime.getRuntime().maxMemory();
Some other calculations which you may find interesting:
Runtime runtime = Runtime.getRuntime();
long maxMemory = runtime.maxMemory();
long allocatedMemory = runtime.totalMemory();
long freeMemory = runtime.freeMemory();
long totalFreeMemory = freeMemory + (maxMemory - allocatedMemory);
long usedMemory = maxMemory - totalFreeMemory;

cherouvim
- 31,725
- 15
- 104
- 153
-
I have set my max heap size as 512m. Runtime.getRuntime().maxMemory() returns 532742144 which is 508.0625 – java_geek Feb 12 '10 at 18:14
-
@sai praveen: yep, and if you set it to 1024m it will return something that approximates 1024m. – cherouvim Feb 12 '10 at 20:50
4
You just need to use the Runtime object with Runtime.getRuntime() and then use methods like totalMemory() and freeMemory().
1
maybe that could help you ?
http://download.oracle.com/docs/cd/E11035_01/wls100/perform/JVMTuning.html#wp1109778 http://javahowto.blogspot.com/2006/06/6-common-errors-in-setting-java-heap.html http://www.caucho.com/resin-3.0/performance/jvm-tuning.xtp http://blog.paulgu.com/2008/07/19/6-common-errors-in-setting-java-heap-size/

menardmam
- 9,860
- 28
- 85
- 113