From dev-return-35746-apmail-harmony-dev-archive=harmony.apache.org@harmony.apache.org Tue Dec 23 13:04:42 2008 Return-Path: Delivered-To: apmail-harmony-dev-archive@www.apache.org Received: (qmail 27559 invoked from network); 23 Dec 2008 13:04:42 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.2) by minotaur.apache.org with SMTP; 23 Dec 2008 13:04:42 -0000 Received: (qmail 33125 invoked by uid 500); 23 Dec 2008 13:04:37 -0000 Delivered-To: apmail-harmony-dev-archive@harmony.apache.org Received: (qmail 33085 invoked by uid 500); 23 Dec 2008 13:04:37 -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 33069 invoked by uid 99); 23 Dec 2008 13:04:37 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 23 Dec 2008 05:04:37 -0800 X-ASF-Spam-Status: No, hits=-0.0 required=10.0 tests=SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (nike.apache.org: domain of gshimansky@gmail.com designates 209.85.219.20 as permitted sender) Received: from [209.85.219.20] (HELO mail-ew0-f20.google.com) (209.85.219.20) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 23 Dec 2008 13:04:28 +0000 Received: by ewy13 with SMTP id 13so2578712ewy.12 for ; Tue, 23 Dec 2008 05:04:07 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:received:sender:message-id:date:from :user-agent:mime-version:to:subject:references:in-reply-to :content-type:content-transfer-encoding; bh=QM99PA0qd3B0Mn5lLdyaQLHrzFcRijMiU75rL0Su0Gc=; b=Mc7ENZWN65SkHxwTXihGwTPCMlB0uNQO/w4C1wfJOURWhlykmd9Y/LwGNpslxgq/w0 LBj6X3R2P6m34PP6ZAHNkEyAaCNdykxcHUID/KkMriKp/kjlaL2MMfcQUpaktlW51NYP l9xz1/suheAIfWfe1U2iX7U28GMJ/yX4Hkf74= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=sender:message-id:date:from:user-agent:mime-version:to:subject :references:in-reply-to:content-type:content-transfer-encoding; b=BZst8c8Z9R/t/wzFi9/kvQjFMA3cn5CmDNV4I0DzWncbgDAzrZCTDT86R+rpyIJw07 fDkhXYUP1v/DazN9uCGX6lBEgKHNURoMncM6x2lSK74bilbnWfUju8RuOiAxlU2rxiP7 LC7I65OPX7V3qWli6Z18D7dlqauSoo4LiAOXo= Received: by 10.210.66.13 with SMTP id o13mr8744910eba.172.1230037447467; Tue, 23 Dec 2008 05:04:07 -0800 (PST) Received: from ?0.0.0.0? (minotaur.apache.org [140.211.11.9]) by mx.google.com with ESMTPS id t12sm9326888gvd.1.2008.12.23.05.04.04 (version=SSLv3 cipher=RC4-MD5); Tue, 23 Dec 2008 05:04:06 -0800 (PST) Sender: Gregory Shimansky Message-ID: <4950E1C0.7070302@apache.org> Date: Tue, 23 Dec 2008 16:04:00 +0300 From: Gregory Shimansky User-Agent: Thunderbird 2.0.0.18 (Windows/20081105) MIME-Version: 1.0 To: dev@harmony.apache.org Subject: Re: [VM] On-demand class library parsing is ready to commit References: <4bebff790812211204o683f0bafp9346e02965410f11@mail.gmail.com> <4bebff790812221606v6068a35rb8672e403b6a3bf6@mail.gmail.com> <4950D305.1020307@apache.org> In-Reply-To: Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-Virus-Checked: Checked by ClamAV on apache.org Wenlong Li said the following on 23.12.2008 15:59: > Gregory, > > VM creation module includes function call to parse jar file and > load&initialize necessary classes stuffs. You can refer to the > vm_init1() and vm_init2() for detail. Ok I see. I didn't read the thread well enough before replying. Sorry for confusion. > On Tue, Dec 23, 2008 at 8:01 PM, Gregory Shimansky > wrote: >> Pavel Pervov said the following on 23.12.2008 10:34: >>> Guys, >>> >>> Why you are in need of instrumentation? >>> You only want to measure the time spent in JNI_CreateJavaVM method. It >>> is very-very simple to create C-program which utilizes invocation API >>> to call to JNI_CreateJavaVM and calls to performance counters before >>> and after VM creation to calculate that time. This will be exactly the >>> "startup-time" according to Wenlong. Then you can run it through the >>> script supplied by Aleksey. >>> >>> If you also want to include finding main class - you can look into our >>> launcher and borrow the code from there. >>> >>> Invocation API rules. ;) >> I don't quite agree. With lazy resolution CreateJavaVM doesn't really >> execute most of Java code that is required to load user program and execute >> all of the necessary code of system class loader which parses jar files and >> stuff like that. This code is what takes the most time on startup. >> >> -- >> Gregory >> >> -- Gregory