harmony-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Ivan Popov" <ivan.g.po...@gmail.com>
Subject Re: [Classlib][General] Looking for some profiler tools to use
Date Tue, 03 Apr 2007 08:55:36 GMT
I did not try running Harmony with IBMVME under TPTP profiler. I
usually use Harmony JDK created by federated build which includes
DRLVM. Separate DRLVM build should also work well. DRLVM implements
almost all JVMTI functionality required for TPTP profiler (except
RedefineClasses which is required only for attaching profiler to a
standalone application).

Thanks.
Ivan

On 4/3/07, LvJimmy,Jing <firepure@gmail.com> wrote:
> Thanks Chris and Ivan, it works for JVMTI (TPTP v4.4) :)
> Sorry for late reply, however I've try again and again but receive
> some empty or wrong report from Harmony with IBMVME, I haven't debug
> in, but doubt if there's something wrong with VM or classlib(e.g,
> java.lang.management, IIRC, it lacks native code currently).
> I haven't try DRLVM, is JVMTI of DRLVM implemented? Sorry that I
> haven't take a deeper look. If so, maybe we can also try on it.
> I'll  go on to try to get the correct report.
>
> 2007/3/31, Elford, Chris L <chris.l.elford@intel.com>:
> > Note also that if you are using the "External Java Application" launch configuration
from within the workbench, it will use whatever JVM you configured your agent controller to
use (which you can point to a Harmony JVM).  You can configure this when you run setConfig.bat.
> >
> > 1) Configure and start your external agent controller:
> > Then from within the workbench
> > 2) Run->open profile dialog
> > 3) Create an external java application configuration making sure to test the connectivity
to the agent controller
> > 4) Configuring the type of Java5+ (JVMTI) profiling you want (in the monitor tab)
> >         execution time (callgraph), memory analysis (heap), or thread analysis (thread)
> >
> > JVMTI based profiling has been in tech preview in Eclipse/TPTP for a while now and
is targeting GA in the Europa simultaneous release in a few months (http://www.eclipse.org/tptp/home/project_info/devplans/Eclipse%20TPTP%20Project%204.4%20Release%20Plan.htm#Features).
> >
> > Thanks,
> >
> > Chris
> >
> > -----Original Message-----
> > From: Elford, Chris L
> > Sent: Friday, March 30, 2007 5:55 PM
> > To: 'dev@harmony.apache.org'
> > Subject: RE: [Classlib][General] Looking for some profiler tools to use
> >
> > Hi Jimmy,
> >
> >   If you want to run TPTP JVMTI based profiling standalone and import the results
into Eclipse, you'll need to follow the instructions for setting your command line.
> >
> >   The readme for this will be in a subdirectory under where you installed your agent
controller....  Use instructions look like this:
> >
> > To run the new Java Profiler in standalone mode on Windows:
> > a) Set TPTP_AC_HOME=<<Agent Controller Home>>
> > b) Set JAVA_PROFILER_HOME=%TPTP_AC_HOME%\plugins\org.eclipse.tptp.javaprofiler
> > c) Set PATH=%JAVA_PROFILER_HOME%;%PATH%;%TPTP_AC_HOME%\bin
> > d) Set PATH=%PATH%;%JAVA_HOME%\bin
> > e) Execute the following command:
> >    java -agentlib:JPIBootLoader=JPIAgent:server=standalone;CGProf <<Your
> >    Application to profile>>
> >
> > To run the new Java Profiler in standalone mode on Linux:
> > a) Set TPTP_AC_HOME=<<Agent Controller Home>>
> > b) Set JAVA_PROFILER_HOME=%TPTP_AC_HOME%/plugins/org.eclipse.tptp.javaprofiler
> > c) Add the following directories to LD_LIBRARY_PATH:
> >    %JAVA_PROFILER_HOME%:%TPTP_AC_HOME%/lib
> > d) Execute the following command:
> >    java '-agentlib:JPIBootLoader=JPIAgent:server=standalone;CGProf' <<Your
> >    Application to profile>>
> >
> > The profiling output will be written to a file named trace.trcxml in the current
> > directory that can then be loaded into the TPTP GUI..
> >
> > There is a way to select the JRE to use from the GUI so that you can run directly
from the workbench.  The launch configurations have been undergoing some updates recently
and I don't see the dialog at the moment.
> >
> > Regards,
> >
> > Chris Elford
> > Intel SSG/Enterprise Solutions Software Division
> >
> > -----Original Message-----
> > From: LvJimmy,Jing [mailto:firepure@gmail.com]
> > Sent: Friday, March 30, 2007 3:08 AM
> > To: dev@harmony.apache.org
> > Subject: Re: [Classlib][General] Looking for some profiler tools to use
> >
> > 2007/3/30, Ivan Popov <ivan.g.popov@gmail.com>:
> > > You may want to use Eclipse TPTP Java profiler from Eclipse Test &
> > > Performance Tools Platform Project [1]. Current version 4.4.0 includes
> > > new JVMTI profiler, which supports Execution time analysis, Threads
> > > status analysis, and Objects allocation analysis. It supports
> > > profiling both application and system classes, just set appropriate
> > > filters in Monitor tab of launching configuration.
> > >
> > > This is development version, which is not yet much stable and
> > > convenient, but it became much better last time. You may download
> > > stable or candidate build here [2]. See good instruction how to setup
> > > TPTP JVMTI profiler in [3]. This instruction is slightly outdated, but
> > > still useful. Updated instruction will appear shortly. Also very
> > > useful changes in launching configuration are expected soon, which
> > > will greatly facilitate launching application under profiler.
> > >
> > > I checked TPTP profiler with Harmony JDK and it appeared working quite
> > > well. Let me know if you'll experience any problems with TPTP
> > > profiler.
> > >
> >
> > Thanks Ivan! I've download TPTP and have a try. It is properly a very
> > good profiler, nice-looking UI, easy to use.  However I can not find
> > how to set a certain VM in TPTP? I mean, when I try to profile some
> > codes under RI, it works (I start eclipse with RI), but when I try to
> > profiler under DRLVM or IBMVME, I can not find the right place to set
> > the proper JRE? I've tried to modify JRE in "Run" View, but it does
> > not effect profiler at all, System.getProperty("java.vm.name") show
> > that is RI.
> > But maybe we can start eclipse with Harmony and run profiler?
> >
> > > Thanks.
> > > Ivan
> > >
> > > [1] http://www.eclipse.org/tptp/
> > > [2] http://www.eclipse.org/tptp/home/downloads/?ver=4.4.0
> > > [3] http://www.eclipse.org/tptp/platform/documents/tutorials/jvmti/Java_Application_Profiling_using_TPTP-r4-3.html
> > >
> > >
> > > On 3/30/07, LvJimmy,Jing <firepure@gmail.com> wrote:
> > > > 2007/3/30, LvJimmy,Jing <firepure@gmail.com>:
> > > > > Hi All,
> > > > >     Harmony has reach 95% API coverage, IMHO it may be a good time
to
> > > > > start performance profiler/tuning. If so, I'd like  to do some
> > > > > performance profiler on Harmony Classlib from now on ;)
> > > > >     In order to look for performance bottleneck, we need some profiler
> > > > > tools. I've looked for some profiler to use in the while, but none
of
> > > > > them work perfectly.
> > > > >     I've tried yourkit (with a evaluation key, I try this because
it
> > > > > looks powerful and may offer a Open source project license for free),
> > > > > seems it check VM version and ask for sun's jdk or IBM sdk5, so
> > > > > Harmony fails on it (with DRLVM or IBMVME, I haven't try other VM
yet.
> > > > >     There's also some open source profiler. JRat works well with
some
> > > > > of benchmarks, but we can not use it with Harmony kernel classes
and
> > > > > some kernel-related class(e.g. Hashtable), as it uses a
> > > > > instrumentation machnism and causes a circular reference. And some
> > > > > other open source profilers use JVMPI but Harmony even can not run
on
> > > > > it at all (if I do not mis-configure something).
> > > > >     In all, I think we need a profiler that:
> > > > >     1. use JVMTI, avoid instrumentation that may causes a circular
> > > > > reference, and it is better that it do not use old JVMPI, for Harmony
> > > > > is J2SE5 classlib;
> > > > >     2. Do not check VM version, that means, use public API as JVMTI,
> > > > > in this way Harmony-compatible VM can work well on it
> > > > >     3. stable and powerful  :)
> > > >
> > > > I forget one important thing:  4. for free use, and it'll be better if
> > > > it is open-source  :)
> > > >
> > > > >     Of course it'll be better if the profiler has a UI, but it is
not necessary.
> > > > >
> > > > >     Do someone have some experience on profilers? Can someone tell
if
> > > > > there's a good profiler for Harmony classlib? Thanks!
> > > > >
> > > > > --
> > > > >
> > > > > Best Regards!
> > > > >
> > > > > Jimmy, Jing Lv
> > > > > China Software Development Lab, IBM
> > > > >
> > > >
> > > >
> > > > --
> > > >
> > > > Best Regards!
> > > >
> > > > Jimmy, Jing Lv
> > > > China Software Development Lab, IBM
> > > >
> > >
> >
> >
> > --
> >
> > Best Regards!
> >
> > Jimmy, Jing Lv
> > China Software Development Lab, IBM
> >
>
>
> --
>
> Best Regards!
>
> Jimmy, Jing Lv
> China Software Development Lab, IBM
>

Mime
View raw message