Skip to main content


Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Archived » Test and Performance Tools Platform (TPTP) » Does tptp have true statistical information gathering?
Does tptp have true statistical information gathering? [message #47433] Mon, 19 December 2005 16:37 Go to next message
Andrea Aime is currently offline Andrea AimeFriend
Messages: 43
Registered: July 2009
Member
Hi,
I'm trying to profile the startup time of my application, but I need
to include in the profile the java* and org* classes.
This results in a completely unmanageable profiling run: the startup,
which is usually around 4 seconds, skyrockets (I've killed it after more than 2
minutes), and the amount of memory used by eclipse does the same ->
I have to kill both my application and eclipse to get back my PC
in a usable state....

As far as I understand, tptp does register every method entry and exit,
which is too much work when I include also the java runtime classes.
HProf also has a statistical profiling mode, that does not count method
invocations, but checks the stack every x milliseconds, gathering thus
statistical information. This is way faster, and allowed me to perform
full profiles of the application and the runtime even on big applications.

Is there any way to get the same functionality as hprof in tptp?

Best regards
Andrea Aime
Re: Does tptp have true statistical information gathering? [message #47493 is a reply to message #47433] Mon, 19 December 2005 18:30 Go to previous messageGo to next message
Eclipse UserFriend
Originally posted by: Navid_Mehregai_nmehrega.ca.ibm.com

This is a multipart message in MIME format.
--=_alternative 00659FE3852570DC_=
Content-Type: text/plain; charset="US-ASCII"

Hi Andrea,

>As far as I understand, tptp does register every method entry and exit,
>which is too much work when I include also the java runtime classes.
>HProf also has a statistical profiling mode, that does not count method
>invocations, but checks the stack every x milliseconds, gathering thus
>statistical information. This is way faster, and allowed me to perform
>full profiles of the application and the runtime even on big
applications.

There are a few diffrent enhancements opened to improve the performance of
the profiler for 4.2. Right now, there's no way to collect aggregate data
with TPTP, there's an enhacement opened for this. Please see:
https://bugs.eclipse.org/bugs/show_bug.cgi?id=108646

There are a few things you can do in your scenario:

- The fewer profiling options you select, the faster the profiler is going
to be.
- Even though you're including the java* and org* packages, you shouldn't
completely get rid of your filter set. Try to filter out as much of the
data as you can in other pacakges to speed things up.
- Also try profiling your application to a file by selecting the Profiling
tab in your launch configuration -> select the Destination sub-tab ->
'Send profiling data to a file' -> specify a file with .trcxml extension.
See how long this takes. You can import the file back to the workbench by
right clicking in the Profiling Monitor -> import -> profiling data -> in
the Range tab, specify how much data you want to show (i.e. 'show heap
statistics', 'show execution statistics', etc..).

Hope this helps. Let me know how things transpire.

Navid Mehregani
--=_alternative 00659FE3852570DC_=
Content-Type: text/html; charset="US-ASCII"


<br><font size=2 face="sans-serif">Hi Andrea,</font>
<br>
<br><font size=2><tt>&gt;As far as I understand, tptp does register every
method entry and exit,<br>
&gt;which is too much work when I include also the java runtime classes.<br>
&gt;HProf also has a statistical profiling mode, that does not count method<br>
&gt;invocations, but checks the stack every x milliseconds, gathering thus<br>
&gt;statistical information. This is way faster, and allowed me to perform<br>
&gt;full profiles of the application and the runtime even on big applications.</tt></font>
<br>
<br><font size=2><tt>There are a few diffrent enhancements opened to improve
the performance of the profiler for 4.2. &nbsp;Right now, there's no way
to collect aggregate data with TPTP, there's an enhacement opened for this.
&nbsp;Please see: https://bugs.eclipse.org/bugs/show_bug.cgi?id=108646</tt></font>
<br>
<br><font size=2><tt>There are a few things you can do in your scenario:</tt></font>
<br>
<br><font size=2><tt>- The fewer profiling options you select, the faster
the profiler is going to be.</tt></font>
<br><font size=2><tt>- Even though you're including the java* and org*
packages, you shouldn't completely get rid of your filter set. &nbsp;Try
to filter out as much of the data as you can in other pacakges to speed
things up.</tt></font>
<br><font size=2><tt>- Also try profiling your application to a file by
selecting the Profiling tab in your launch configuration -&gt; select the
Destination sub-tab -&gt; 'Send profiling data to a file' -&gt; specify
a file with .trcxml extension. &nbsp;See how long this takes. &nbsp;You
can import the file back to the workbench by right clicking in the Profiling
Monitor -&gt; import -&gt; profiling data -&gt; in the Range tab, specify
how much data you want to show (i.e. 'show heap statistics', 'show execution
statistics', etc..).</tt></font>
<br>
<br><font size=2><tt>Hope this helps. &nbsp;Let me know how things transpire.</tt></font>
<br>
<br><font size=2><tt>Navid Mehregani</tt></font>
--=_alternative 00659FE3852570DC_=--
Re: Does tptp have true statistical information gathering? [message #47581 is a reply to message #47493] Tue, 20 December 2005 09:13 Go to previous messageGo to next message
Andrea Aime is currently offline Andrea AimeFriend
Messages: 43
Registered: July 2009
Member
Navid_Mehregai_nmehrega@ca.ibm.com wrote:
>
> Hi Andrea,
>
> >As far as I understand, tptp does register every method entry and exit,
> >which is too much work when I include also the java runtime classes.
> >HProf also has a statistical profiling mode, that does not count method
> >invocations, but checks the stack every x milliseconds, gathering thus
> >statistical information. This is way faster, and allowed me to perform
> >full profiles of the application and the runtime even on big
> applications.
>
> There are a few diffrent enhancements opened to improve the performance
> of the profiler for 4.2. Right now, there's no way to collect aggregate
> data with TPTP, there's an enhacement opened for this. Please see:
> https://bugs.eclipse.org/bugs/show_bug.cgi?id=108646

Thanks :-)

> There are a few things you can do in your scenario:
>
> - The fewer profiling options you select, the faster the profiler is
> going to be.
> - Even though you're including the java* and org* packages, you
> shouldn't completely get rid of your filter set. Try to filter out as
> much of the data as you can in other pacakges to speed things up.
> - Also try profiling your application to a file by selecting the
> Profiling tab in your launch configuration -> select the Destination
> sub-tab -> 'Send profiling data to a file' -> specify a file with
> .trcxml extension. See how long this takes. You can import the file
> back to the workbench by right clicking in the Profiling Monitor ->
> import -> profiling data -> in the Range tab, specify how much data you
> want to show (i.e. 'show heap statistics', 'show execution statistics',
> etc..).

I've tried to send the output to a file, but it does not help. Eclipse
is still running at 100% CPU consumption and after 30 seconds the splash
screen of my app is still not showing (the splash screen display requires
more or less 10 lines of code from the main() start, but of course
trigger the loading and initialization of a ton of AWT/Swing classes...)

So, I'd say that in the current state tptp is (barely) usable if one can
afford to exclude the java runtime classes, and totally useless to profile
a Swing application if one is interested in profiling the java runtime as well...

Best regards
Andrea Aime
Re: Does tptp have true statistical information gathering? [message #47608 is a reply to message #47581] Tue, 20 December 2005 09:21 Go to previous messageGo to next message
Andrea Aime is currently offline Andrea AimeFriend
Messages: 43
Registered: July 2009
Member
Andrea Aime wrote:
> Navid_Mehregai_nmehrega@ca.ibm.com wrote:

> I've tried to send the output to a file, but it does not help. Eclipse
> is still running at 100% CPU consumption and after 30 seconds the splash
> screen of my app is still not showing (the splash screen display requires
> more or less 10 lines of code from the main() start, but of course
> trigger the loading and initialization of a ton of AWT/Swing classes...)

Erk! Sorry, I spoke too fast. I didn't notice that the raservice wasn't running,
so Eclipse did fall back on the local agent. I've tried again by using the
RAserver, and yes, it's better, yet still not usable. The unprofiled app takes
4 seconds to start up, while profiling to file and including only javax.swing
instead of the full java* the application starts up in 110 seconds!!!!
Just to give you a reference, with hProf or with YourKit profiler the
application starts up in 10 seconds, more or less...

Best regards
Andrea Aime
Re: Does tptp have true statistical information gathering? [message #47783 is a reply to message #47608] Tue, 20 December 2005 18:31 Go to previous message
Eclipse UserFriend
Originally posted by: Navid_Mehregani_nmehrega.ca.ibm.com

This is a multipart message in MIME format.
--=_alternative 0065C119852570DD_=
Content-Type: text/plain; charset="US-ASCII"

This is much better, but it's still pretty slow. It's unfortunate that
the profiler in TPTP is not very scalable. Hopefully we can make
significant improvements to it in future releases.

Navid Mehregani
--=_alternative 0065C119852570DD_=
Content-Type: text/html; charset="US-ASCII"


<br><font size=2 face="sans-serif">This is much better, but it's still
pretty slow. &nbsp;It's unfortunate that the profiler in TPTP is not very
scalable. &nbsp;Hopefully we can make significant improvements to it in
future releases.</font>
<br>
<br><font size=2 face="sans-serif">Navid Mehregani</font>
--=_alternative 0065C119852570DD_=--
Previous Topic:ConsoleDataProcessor.incomingData always sends null for peer
Next Topic:Monitoring Tomcat application
Goto Forum:
  


Current Time: Fri Apr 26 10:14:22 GMT 2024

Powered by FUDForum. Page generated in 0.03085 seconds
.:: Contact :: Home ::.

Powered by: FUDforum 3.0.2.
Copyright ©2001-2010 FUDforum Bulletin Board Software

Back to the top