You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@tomcat.apache.org by "Caldarale, Charles R" <Ch...@unisys.com> on 2009/02/20 03:40:16 UTC

RE: very slow class loading on initial JSP/servlet request after restart

> From: Sam Hokin [mailto:sam@ims.net]
> Subject: very slow class loading on initial JSP/servlet
> request after restart
>
> The server that's being a problem is a Dell PowerEdge
> 1950, quad dual core.

Since I could never believe anything bad could be caused by chocolate (especially dark chocolate), let's go for something else.

1) What are the servers that don't have a problem?

2) How much RAM is on each server?

3) Is the JDK 32- or 64-bit on each server?

4) What's the Java heap size for Tomcat on each server?

5) Are you using the same file system on all three servers?  What is it (ext3, reiser, ???)?

 - Chuck


THIS COMMUNICATION MAY CONTAIN CONFIDENTIAL AND/OR OTHERWISE PROPRIETARY MATERIAL and is thus for use only by the intended recipient. If you received this in error, please contact the sender and delete the e-mail and its attachments from all computers.

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org


RE: very slow class loading on initial JSP/servlet request after restart

Posted by Peter Crowther <Pe...@melandra.com>.
> From: André Warnier [mailto:aw@ice-sa.com]
> >> From: Sam Hokin [mailto:sam@ims.net]
> >> The server that's being a problem is a Dell PowerEdge
> >> 1950, quad dual core.

> Since we have 4 processors here (do we, really? I am not so familiar
> with the multi-core architecture), can each of these processors be
> running a thread of these apps/classes, where on a single processor
> there would be only one thread running ?

Quad dual-core*.  That's 4 silicon dies, each with two copies of "the core of" a CPU.  So (4 * 2) = 8 separate instruction execution units, 8 program counters, executing up to 8 instruction streams in parallel.

The cores on one die share some infrastructure like cache and memory access, but the interesting feature here is that this machine can run 8 threads concurrently.

                - Peter

* Says the original poster.  Looking at the Dell site, I reckon it's actually dual quad-core - so two dies, 4 cores per die.  Still 8 concurrent threads, though.

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org


Re: very slow class loading on initial JSP/servlet request after restart

Posted by André Warnier <aw...@ice-sa.com>.
Caldarale, Charles R wrote:
>> From: Sam Hokin [mailto:sam@ims.net]
>> Subject: very slow class loading on initial JSP/servlet
>> request after restart
>>
>> The server that's being a problem is a Dell PowerEdge
>> 1950, quad dual core.
> 
> Since I could never believe anything bad could be caused by chocolate (especially dark chocolate), let's go for something else.
> 
> 1) What are the servers that don't have a problem?
> 
> 2) How much RAM is on each server?
> 
> 3) Is the JDK 32- or 64-bit on each server?
> 
> 4) What's the Java heap size for Tomcat on each server?
> 
> 5) Are you using the same file system on all three servers?  What is it (ext3, reiser, ???)?
> 
Dropping the dark chocolate then from my suspicions, and notwithstanding 
the above fact-finding questions, I still think the reindeers are 
suspect, such as 4 of them pulling in opposite directions.

It kind of reminds me of my xml-parsing webapp of a while ago, which 
took (and still takes) an inordinate amount of time to load initially 
(10 minutes or so), but then has a perfectly acceptable reponse time 
after that.  That is on a single slow cpu and with less RAM than Chuck 
has in his portable phone, but it may still be a good analogy since 
these elements merely exacerbate the problem.
What is that webapp (or these classes) really doing when initially 
loading, that they are no longer doing afterward ?
On my system also, the log message indicating that the application is 
"loaded" comes only after these initial 10 minutes during which the 
whole Tomcat is close to inoperative.

Since we have 4 processors here (do we, really? I am not so familiar 
with the multi-core architecture), can each of these processors be 
running a thread of these apps/classes, where on a single processor 
there would be only one thread running ?
And would it be possible that each of these cpus/threads is doing 
something that severely competes with the others trying to do the same 
thing at the same time ? (such as using a lot of memory, and resulting 
in massively swapping in/out).  There may be 4 cpus, but there is still 
only one each of the other resources, like RAM.
Would running Jconsole while the app is loading help ?


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org


Re: very slow class loading on initial JSP/servlet request after restart

Posted by Sam Hokin <sa...@ims.net>.
Caldarale, Charles R wrote:

> 1) What are the servers that don't have a problem?

One is a single AMD Athlon 64 2800+, running the 64-bit Sun JDK (same version).

The other is a dual AMD Athlon MP 2000+, running the 32-bit Sun JDK (same version).

And the "bad" server has "8" Intel Xeon E5310 CPUs running the 32-bit Sun JDK (it is indeed a dual quad-core, not a quad 
dual-core, as I incorrectly typed in my original post).

> 2) How much RAM is on each server?

The Athlon 64 has 1.5 GB RAM (2 GB swap).
The dual 32-bit Athlon has 1 GB RAM (2 GB swap).
The "bad" server has 2 GB RAM (2 GB swap).

> 3) Is the JDK 32- or 64-bit on each server?

32-bit on the two 32-bit machines, 64-bit on the 64-bit machine.

> 4) What's the Java heap size for Tomcat on each server?

I've played with heap size quite a bit to no avail.   Currently, all are running 768 MB with the following JDK options:

JAVA_OPTS="-Xms768m -Xmx768m -XX:NewSize=256m -XX:MaxNewSize=256m -XX:PermSize=128m -XX:MaxPermSize=128m"

> 5) Are you using the same file system on all three servers?  What is it (ext3, reiser, ???)?

Yes.  ext3 on all three machines, all are running current Fedora Core 9 distros (well, except for the new kernel which 
came out yesterday).

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org