harmony-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Nathan Beyer" <ndbe...@apache.org>
Subject Re: [performance] Startup cost is high for Harmony (HARMONY-6002)
Date Fri, 24 Oct 2008 03:04:00 GMT
On Thu, Oct 23, 2008 at 5:59 AM, Xiao-Feng Li <xiaofeng.li@gmail.com> wrote:
> On Thu, Oct 23, 2008 at 2:54 PM, Alexei Fedotov
> <alexei.fedotov@gmail.com> wrote:
>> Xiao Feng,
>> Thanks for a good question.
>>
>> The optimization improves so-called "peak score" which is calculated
>> from several subsequent executions. If you cache VM state in different
>> files for different command lines, you may even cache pre-compiled
>> class files for a particular benchmark. As I've got from a fellow SPEC
>> committee member this optimization is allowed unless the released VM
>> is specifically tuned to pass the spec.
>
> Thanks. Understand now. Yes, data cache can improve startup time obviously.
>
> I am wondering that, if HelloWorld takes two times of execution time
> with Harmony more than RI, there should be some obvious problem for
> Harmony to attack before we come to this data caching solution. For
> example, Harmony might load much more classes than RI, or its loader
> is much more slower, etc.

I agree with this sentiment. The suggestions brought up are
interesting, I'm inclined to see more obvious, straight-forward
improvements to be made. What exactly happens when a simple HelloWorld
is run? Is the performance profile the same across platforms (win,
linux, x86, x86_64, etc)

-Nathan

>
>> Sorry about the third bullet. Well, I thought if I should mention
>> pre-compiled classes there. I hesitate because I don't know any
>> trusted research which shows that loading pre-compiled classes from
>> disk is quicker than dynamic re-compilation.
>
> I have the same doubt about pre-compilation.
>
> Thanks,
> xiaofeng
>
>> Thanks!
>>
>> On Thu, Oct 23, 2008 at 10:21 AM, Xiao-Feng Li <xiaofeng.li@gmail.com> wrote:
>>> On Thu, Oct 23, 2008 at 1:44 PM, Alexei Fedotov
>>> <alexei.fedotov@gmail.com> wrote:
>>>> Hello Wenlong,
>>>> You have addressed a very interesting topic. Let me share few ideas
>>>> how to approach it:
>>>>
>>>> 1. The first thing I would expect to understand here is why we should
>>>> care about "Hello, World" startup. SPEC jvm [0] startup scores are
>>>> much more tempting to approach. Then one should compare the score with
>>>> one of our competitors. Taking into account that 300 ms = 300 context
>>>> switches I would not say that the number itself makes me unhappy about
>>>> Harmony speed.
>>>>
>>>> 2. Due to some bureaucracy the following tempting [1] idea is still
>>>> waiting for an experienced and accurate C coder to complete:
>>>>  * load classes into bootstrap class loader once
>>>>  * store the internal representation of classes as a memory mapped file;
>>>>  * next time, load the file if it exists.
>>>
>>> Fedotov, thanks. I guess this idea can only improve the second-time
>>> startup time? Is this be useful for SPECJVM startup score? Thanks.
>>>
>>> Btw, your email lost bullet 3. :)
>>>
>>> Thanks,
>>> xiaofeng
>>>
>>>> 4. If you don't like C, there are tunable things in a class library
>>>> you may find using Gregory's JVMTI profiler [2].
>>>>
>>>> [0] http://www.spec.org/jvm2008/
>>>> [1] a research shows +10% on "Hello, World"
>>>> [2] two first attachments at https://issues.apache.org/jira/browse/HARMONY-4569
>>>>
>>>> On Thu, Oct 23, 2008 at 12:29 AM, Tim Ellison <t.p.ellison@gmail.com>
wrote:
>>>>>
>>>>> Wenlong Li (JIRA) wrote:
>>>>> > The startup time is long for the simple helloworld program. On a
Core
>>>>> > 2 Quad-core processor, running the simple helloworld program will
take
>>>>> > more than 300 ms.
>>>>> > Can we reduce the startup cost?
>>>>>
>>>>> Yes, I hope so ... concrete suggestions or analysis of startup costs
are
>>>>> welcome.
>>>>>
>>>>> Regards,
>>>>> Tim
>>>>
>>>>
>>>>
>>>> --
>>>> With best regards,
>>>> Alexei
>>>>
>>>
>>>
>>>
>>> --
>>> http://xiao-feng.blogspot.com
>>>
>>
>>
>>
>> --
>> With best regards,
>> Alexei
>>
>
>
>
> --
> http://xiao-feng.blogspot.com
>

Mime
View raw message