The memory requirements for the Tomcat service (aka VMware VirtualCenter Management Webservices service) has doubled from vCenter 2.5U5 and vCenter 4.0U1. Going from 128MB to 256MB as the minimum (JvmMs). At the same time the maximum memory setting is 4x higher, from 256MB to 1024MB (JvmMx).
If you have access to both environments, you can check by yourself. Open up REGEDIT and navigate to HKLM\SOFTWARE\Apache Software Foundation\Procrun 2.0\WebAccess\Parameters\Java
Compare the DWORD values for JvmMs and JvmMx for both installation. To learn more about those settings, visit the Apache.org web site.
Now the fact that vCenter 4.0U1 uses Tomcat6 doesn’t explain this big appetite and in my nested environment where memory is a rare element I didn’t want to have a process taking too much memory resources.
Thus I edited the registry keys and set them to 0 (zero), then restart VMware VirtualCenter Management Webservices service and in Task Manager, checked the memory usage for tomcat6.exe.
Columns are Mem Usage, Peak Mem Usage and VM Size. For Windows 2008 and Vista/W7 the columns are Working Set, Peak Working Set and Memory (Private Working Set) and Commit Size.
JvmMx defines the VM Size/Commit Size. It allocates x mega bytes of memory whether the process will use it or not. By setting the registry key to 0 (zero) the VM Size/Commit Size will grow along with the process loading up, using exactly what is necessary, that is 256MB in my environment thus saving me roughly 756MB.
For more information about the columns in Task Manager, read this KB at Microsoft.