The best profiler?

  • Thread starter Anton V. Goldberg
  • Start date
A

Anton V. Goldberg

Hi All,
What profiler do you use for J2EE apps? I used Borlands optimizeIt, but the
problem I'm facing now is that everything there is divided by thread, so if
I need a summary like (for example) method A was called 20 times and
min/max/average execution/CPU time was X ms, then either I have to go
through all the threads of execution and summarize the data manually or such
information is just plainly impossible to get, especially when the number of
clients/threads in an application server is in hundreds. I'd like to have
such summary for all methods/classes under certain package tree (like
com.company.*) and for all jsp pages I need time from starting the
processing till the response is send.
Any advices?
Anton
 
R

Robert Olofsson

: What profiler do you use for J2EE apps?

Depends on what I want to profile. For objects/memory I use my own
profiler, jmp, find it at http://www.khelekore.org/jmp/.

For method profiling I start by manual testing and then a clock and
then I try to find a profiler (again I use jmp).
I do not have big problems with method that take to long however, may
be that I have a problem to select the bad algorithms :)

: I used Borlands optimizeIt, but the
: problem I'm facing now is that everything there is divided by thread, so if
: I need a summary like (for example) method A was called 20 times and
: min/max/average execution/CPU time was X ms, then either I have to go
: through all the threads of execution and summarize the data manually

Ok, one more reason not to use optimizeit then. It must have some sort
of "aggregate data" must it not?

What j2ee system are you running? on what hardware? what OS?
(my guess is windows on x86).

JMP is currently broken on windows when it comes to see how long
methods take, but if you run linux it works fine.

Also: you do know that when you profile methods you get an incorrect
view of what the jvm is doing. Hotspot does not inline code when you
trace methods, this means that what you see is a slightly distorted
view on what the jvm does. Calling a methods takes a few clock
cycles.
However if you run without method tracing for a while and then enable
method tracing hotspot will have inlined most of the code...
So be sure that you know what you see when you profile.

/robo
 
A

Anton V. Goldberg

Robert Olofsson said:
: What profiler do you use for J2EE apps?

Depends on what I want to profile. For objects/memory I use my own
profiler, jmp, find it at http://www.khelekore.org/jmp/.

For method profiling I start by manual testing and then a clock and
then I try to find a profiler (again I use jmp).
I do not have big problems with method that take to long however, may
be that I have a problem to select the bad algorithms :)

How exactly do you clock methods in 200+ classes with 300+ clients
across web/EJB containers? I'd like to
be able to profile apps without modifying the source. If you have an
approach, which allows you to do that, I'd love to know it.
: I used Borlands optimizeIt, but the
: problem I'm facing now is that everything there is divided by thread, so if
: I need a summary like (for example) method A was called 20 times and
: min/max/average execution/CPU time was X ms, then either I have to go
: through all the threads of execution and summarize the data manually

Ok, one more reason not to use optimizeit then. It must have some sort
of "aggregate data" must it not?

I agree, it must. But it doesn't.
What j2ee system are you running? on what hardware? what OS?
(my guess is windows on x86).

JBoss/Tomcat, Win2000, Linux 8, Pentium 4 / 4 CPU boards. Close, but
still wrong.
JMP is currently broken on windows when it comes to see how long
methods take, but if you run linux it works fine.

Thanks, does it do what I need? (Description's in the first message
and above).
Also: you do know that when you profile methods you get an incorrect
Yes, I do.
Anton V. Goldberg
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

No members online now.

Forum statistics

Threads
473,769
Messages
2,569,580
Members
45,055
Latest member
SlimSparkKetoACVReview

Latest Threads

Top