By practice, I set min/max heap to the same number and pin memory to the VMware virtual host to guarantee that there is memory available for the JVM. What I need is a 'best guess' at the total memory that a typical JVM uses. Currently I assume 1.5 x the max heap (from observations based on 1G heap). This means that a 1G heap = 1.5G total JVM memory, 2GB heap = 3GB total, 4GB = 6GB total. I have a couple questions:

1) Is there a documented calculation that can be used to calculate total JVM memory footprint?
2) If not, does the 1.5 x make sense for the larger heaps, or would a non-linear formula fit better?