Tomcat JMX Monitoring problem with Perm Gen

You are presumably using different garbage collectors. The name of the PermGen memory area is different depending on the selected garbage collector:

  • -XX:+UseParallelGC : PS PermGen
  • -XX:+UseConcMarkSweepGC : CMS PermGen
  • -XX:+UseSerialGC : PermGen

Looks like Tomcat is started up with either the serial ( stop-the-world ) collector or the parallel collector.

Verify any inconsistencies in the startup scripts or the environment settings.

Update: The garbage collector and memory settings are influenced by the JVM ergonomics , which means that they get auto-selected at startup based on the characteristics of the computer the JVM is running on. I can't find any references right now but IIRC they are based on CPU architecture and total memory available.

I suggest you specify one of the garbage collectors in your startup scripts. Depending on your application, it might not be good to have a random garbage collector picked.