Return-Path: Delivered-To: apmail-harmony-dev-archive@www.apache.org Received: (qmail 99912 invoked from network); 2 Apr 2007 13:05:26 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.2) by minotaur.apache.org with SMTP; 2 Apr 2007 13:05:26 -0000 Received: (qmail 47441 invoked by uid 500); 2 Apr 2007 13:05:27 -0000 Delivered-To: apmail-harmony-dev-archive@harmony.apache.org Received: (qmail 47404 invoked by uid 500); 2 Apr 2007 13:05:26 -0000 Mailing-List: contact dev-help@harmony.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@harmony.apache.org Delivered-To: mailing list dev@harmony.apache.org Received: (qmail 47395 invoked by uid 99); 2 Apr 2007 13:05:26 -0000 Received: from herse.apache.org (HELO herse.apache.org) (140.211.11.133) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 02 Apr 2007 06:05:26 -0700 X-ASF-Spam-Status: No, hits=0.3 required=10.0 tests=MAILTO_TO_SPAM_ADDR,SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (herse.apache.org: domain of ivan.g.popov@gmail.com designates 209.85.132.245 as permitted sender) Received: from [209.85.132.245] (HELO an-out-0708.google.com) (209.85.132.245) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 02 Apr 2007 06:05:17 -0700 Received: by an-out-0708.google.com with SMTP id b2so1266332ana for ; Mon, 02 Apr 2007 06:04:57 -0700 (PDT) DKIM-Signature: a=rsa-sha1; c=relaxed/relaxed; d=gmail.com; s=beta; h=domainkey-signature:received:received:message-id:date:from:to:subject:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references; b=HOyoDbtRed9ghxztpSoL+0TjtsTyYZdxlLQ84EpE6WIlry7N0Jpk3ivEo9NhcrnvTvjJHBWW6jYo24w50TWv9Qi3CVu4OqIZ38jRpUTMb9vSviGxg3/s/Ep0WI5Q2Wp6ISkCb5+9HQneu6W8aav8cNf91/uSV68+2zpKZDqEVTc= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=beta; h=received:message-id:date:from:to:subject:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references; b=azIVtOiUBDOqcfP9K5zDCYt/F7heZdDtkOgQ8RHruN7H9QqxOlIGbghIZlnSrjjNXmKXyu8yIbQhN+IRONCxv6Ouuf8ZhwtyHClBz++EZdu3Mi+oJm3qdJ+1mZXeFkGQwdVQ3obL8APX2nA4LxmIu2vPCjsadon539ltMcoAXE8= Received: by 10.114.159.1 with SMTP id h1mr1786823wae.1175519096213; Mon, 02 Apr 2007 06:04:56 -0700 (PDT) Received: by 10.114.137.5 with HTTP; Mon, 2 Apr 2007 06:04:55 -0700 (PDT) Message-ID: Date: Mon, 2 Apr 2007 20:04:55 +0700 From: "Ivan Popov" To: dev@harmony.apache.org Subject: Re: [Classlib][General] Looking for some profiler tools to use In-Reply-To: MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-2022-JP; format=flowed Content-Transfer-Encoding: 7bit Content-Disposition: inline References: <5c8e69f0703291929l3c24824et533743bffe98dc98@mail.gmail.com> <5c8e69f0703292024x10096b31k7a2b410a00c19e20@mail.gmail.com> <5c8e69f0703300307v4134e653nc661ca80714de947@mail.gmail.com> X-Virus-Checked: Checked by ClamAV on apache.org Leo, If you are using TPTP 4.3 stable version, you have to download JVMTI profiler from Tech preview section and follow instruction [1] how to setup and use it. However, I'd suggest you to use current development version 4.4. JVMTI profiler in 4.4 is not less stable, but much more functional and it is included into TPTP bundle. However, you still have to setup and launch Agent Controller or run application in standalone mode and then import data to Eclipse GUI as Chris suggested. Thanks. Ivan [1] http://www.eclipse.org/tptp/platform/documents/tutorials/jvmti/Java_Application_Profiling_using_TPTP-r4-3.html On 3/31/07, Leo Li wrote: > Hi, Ivan: > I have tried TPTP 4.1, but it can only profile the on the JRE on which > the eclipse is launched. And if the eclipse is launched on Harmony, TPTP > will not work. Actually it hangs after started.:( > I will try TPTP 4.4, but does TPTP4.3 which is the stable version > posted on eclipse.org work? > > Thanks. > > On 3/30/07, Ivan Popov wrote: > > > > Right now JVMTI profiler in TPTP 4.4.0 cannot be launched from Eclipse > > workbench directly. You need to download Agent Controller [1] and > > setup it to use appropriate JDK. To do setup, unpack Agent Controller > > bundle to some directory, go to "tptp\tptpdc\win_ia32\bin" directory > > and run SetConfig.bat. When prompted to input path to Java executable, > > put there path to java.exe from Harmony. For other questions you can > > just leave default values. After completing setup you have to start > > Agent Controller by running ACServer.exe. There is readme.txt file in > > bin directory which provides more details about using Agent > > Controller. > > > > After Agent Controller has been started, you can run profiling from > > Eclipse workbench, it will connect Agent Controller and use JDK > > specified there. Just ensure that you choose "Java Profiling (Java > > 5.0)" on Monitor tab of a launching configuration. The other item > > "Java Profiling" selected by default is for old JVMPI-based profiler > > which won't work with Harmony. > > > > You can find a more up-to-date description of TPTP JVMTI profiler > > provided in presentation at EclipseCon [2]. It better corresponds to > > the current TPTP release, than the instruction mentioned below. In the > > upcoming release of TPTP profiler it will be possible to use JVMTI > > profiler without starting Agent Controller, this will greatly > > facilitate its usage. > > > > [1] > > http://www.eclipse.org/tptp/home/downloads/?buildId=TPTP-4.4.0-200703270100A#agentController > > [2] http://www.eclipsecon.org/2007/index.php?page=sub/&id=3669 > > > > > > On 3/30/07, LvJimmy,Jing wrote: > > > 2007/3/30, Ivan Popov : > > > > 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 wrote: > > > > > 2007/3/30, LvJimmy,Jing : > > > > > > 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 > > > > > > > > > -- > Leo Li > China Software Development Lab, IBM >