Forums Register Login
increase java heap size
I know this has been asked before, and I have tried to read the answers and implement their suggestions, but I have not succeeded yet. I have Tomcat 5.5 running as a Windows Service. I am running Windows XP SP2, with 2GB or real memory. The Tomcat service is started automatically at system start-up, not from a Start menu. I need to increase the heap size. I have tried setting CATALINA_OPTS in the system environment variables. It is now CATALINA_OPTS=-Xms64m -Xmx256m However, when I look at Tomcat status, I see Free memory: 17.16 MB Total memory: 63.56 MB Max memory: 63.56 MB.

How can I increase the heap size?
When you install this way, these settings are kept in the Windows Registry.
If you have the start menu items, the easiest way to change them is to go to
Start -> Programs -> Apache Tomcat -> Tomcat Configuration -> Java (tab).
There are fields for your initial and max heap sizes.
Thanks !
First Calculate the number of threads you can create

(MaxProcessMemory - JVMMemory - ReservedOsMemory) / (ThreadStackSize) = Number of threads


For Java 1.5 you will get the following results assuming that the OS reserves about 120MB:

1.5GB allocated to JVM: (2GB-1.5Gb-120MB)/(1MB) = ~380 threads

1.0GB allocated to JVM: (2GB-1.0Gb-120MB)/(1MB) = ~880 threads

Your Java Options Example:

-Xms 512m
-Xmx 1024m

For More Details i Found this link

we wish this may help you
if I wish to increase the maximum memory setting without using the Tomcat coniguration window(non windows environment) but modify the catalina.bat(or catalina.sh)
do I just add a line CATALINA_OPTS='-Xmx512m' in catlina.bat(.sh) or startup.bat(startup.sh) ?

or is it JAVA_OPTS=CATALINA_OPTS='-Xmx512m'

The bat files are for Windows and the sh files are for unix.
And it's JAVA_OPTS.
so do I add JAVA_OPTS='-Xmx512m' to catalina.sh or startup.sh?
Append following line in catalina.bat in front of JAVA_OPTS
-Xms1024m -Xmx1024m -XX:MaxPermSize=128m

It should look like.

there is another solution.
add a new environment variable called JAVA_OPTS with value
The maximum memory for JVM on windows machine is limited to 1.6 Gigs.
Sometimes, you do need more than that. But, can't do.
[quote=Anubhav Anand]The maximum memory for JVM on windows machine is limited to 1.6 Gigs.
Sometimes, you do need more than that. But, can't do.[/quote]

I do not have catalina.bat in my bin folder ... should i be setting this in the environment variables?
Hey guys,

I am using Tomcat 6.0.24 as Windows Service. There is no startup.bat.

Googling I stumbled with this blog post:


Here it says to execute "tomcat6 //US//Tomcat6 –JvmMs XXX –jvmMx YYY" in tomcat/bin folder.

I executed tomcat6 //US//Tomcat6 –-JvmMs=512 –-jvmMx=1024 and it is working now. I hope it helps somebody
(ref: http://tomcat.apache.org/tomcat-5.5-doc/windows-service-howto.html)

It's weird that we cook bacon and bake cookies. Eat this tiny ad:
ScroogeXHTML 7.1 - RTF to HTML5 / XHTML converter

This thread has been viewed 197940 times.

All times above are in ranch (not your local) time.
The current ranch time is
Feb 21, 2018 02:34:10.