When you enable EM4J in a virtual machine, memory outside of the Java heap cannot be reclaimed. Therefore, EM4J should only be used in configurations where the majority of memory is used by Java heap.
EM4J does not function in heap sizes smaller than 512MB.
EM4J currently can reclaim a maximum of 2GB from a Java heap.
EM4J works equally well in virtual machines with large pages enabled as with small pages.
You can run more than one EM4J-enabled tc Runtime instance in a virtual machine. Each instance contributes to the overall balloon for the virtual machine. However, the individual instances do not coordinate ballooning with each other, so running large numbers of instances is not currently recommended. A pragmatic limit is four EM4J-enabled tc Runtime instances.