I have two tomcat servers running the same web application that exhibit very different behavior regarding JVM memory capacity. The main difference between the two servers is that server 1 has 15 GB of memory and server 2 has 3.75 GB (this difference apparently remained after the problem that was fixed, but the server size was not reduced).
On server 1 we have:
java -XX:+PrintCommandLineFlags -version
-XX:InitialHeapSize=245500672 -XX:MaxHeapSize=3928010752 -XX:+PrintCommandLineFlags -XX:+UseCompressedOops -XX:+UseParallelGC
java version "1.7.0_71"
Java(TM) SE Runtime Environment (build 1.7.0_71-b14)
Java HotSpot(TM) 64-Bit Server VM (build 24.71-b01, mixed mode)
On server 2:
java -XX:+PrintCommandLineFlags -version
-XX:InitialHeapSize=61513536 -XX:MaxHeapSize=984216576 -XX:+PrintCommandLineFlags -XX:+UseCompressedOops
java version "1.7.0_60"
Java(TM) SE Runtime Environment (build 1.7.0_60-b19)
Java HotSpot(TM) 64-Bit Server VM (build 24.60-b09, mixed mode)
Server 2 demonstrates the typical behavior that I'm used to seeing regarding capacity and usage. The ability (survivor in this case) remains somewhat stable, while dynamic use varies:

However, server 1 shows large and frequent changes in capacity:

. 1, , , 2.
"jstat -gc". - S0C + S1C. UseParallelGC? , . 1 , , .