Combining client and server VM
Stefan Reich
stefan.reich.maker.of.eye at googlemail.com
Fri Jan 24 15:50:26 PST 2014
Well... I should have used Java 7 in the first place of course. ^^ Times on
OpenJDK 7 improve some more:
-server -XX:+TieredCompilation
ImageToLua.convert: 221 ms
real 0m7.611s
user 0m3.088s
sys 0m0.208s
Closer to the client VM! (Now takes ~twice as long.)
Cheers,
Stefan
On Sat, Jan 25, 2014 at 12:36 AM, Stefan Reich <
stefan.reich.maker.of.eye at googlemail.com> wrote:
> Java version:
>
> java version "1.6.0_27"
> OpenJDK Runtime Environment (IcedTea6 1.12.6)
> (6b27-1.12.6-1ubuntu0.12.04.4)
> OpenJDK Client VM (build 20.0-b12, mixed mode, sharing)
>
> It's all 32 bit.
>
> > So, turning on -XX:+TieredCompilation with -client doesn't really make
> sense.
>
> Yup, I figured as much. Included that only to see what the switch does in
> both modes.
>
> Stefan
>
>
>
> On Sat, Jan 25, 2014 at 12:00 AM, Krystal Mok <rednaxelafx at gmail.com>wrote:
>
>> Hi Stefan,
>>
>> On what version of JDK are you testing with? Oracle JDK/OpenJDK doesn't
>> ship a 64-bit Client VM.
>>
>> Tiered-compilation is only available in the Server VM (which is actually
>> a Tiered VM now). The Server VM has both the Client Compiler (C1) and
>> Server Compiler (C2), and in tiered-mode both compilers are active; where
>> as the Client VM only has C1.
>>
>> So, turning on -XX:+TieredCompilation with -client doesn't really make
>> sense.
>>
>> - Kris
>>
>>
>> On Fri, Jan 24, 2014 at 2:35 PM, Stefan Reich <
>> stefan.reich.maker.of.eye at googlemail.com> wrote:
>>
>>> Hi David!
>>>
>>> Thanks, that was actually new to me even though I'm an avid Java fan.
>>>
>>> It does help a bit:
>>>
>>> -client
>>>
>>> ImageToLua.convert: 170 ms
>>> real 0m4.763s
>>> user 0m1.452s
>>> sys 0m0.124s
>>>
>>> -server
>>>
>>> ImageToLua.convert: 1108 ms
>>> real 0m12.597s
>>> user 0m7.008s
>>> sys 0m0.388s
>>>
>>> -client -XX:+TieredCompilation
>>>
>>> ImageToLua.convert: 181 ms
>>> real 0m5.686s
>>> user 0m1.488s
>>> sys 0m0.144s
>>>
>>> -server -XX:+TieredCompilation
>>>
>>> ImageToLua.convert: 398 ms
>>> real 0m8.827s
>>> user 0m4.572s
>>> sys 0m0.256s
>>>
>>> This is a run of a short program (as you can see), so we're testing
>>> start-up time and probably only first-level compilations.
>>> ImageToLua.convert is one of the calculating functions.
>>>
>>> So TieredCompilation is indeed faster in startup than the pure server VM.
>>> It still is quite a bit slower than -client, so I'm still lusting for a
>>> perfect solution (start-up performance on part with client VM).
>>>
>>> Cheers :)
>>> Stefan
>>>
>>>
>>>
>>> On Fri, Jan 24, 2014 at 9:49 PM, David Schlosnagle <schlosna at gmail.com
>>> >wrote:
>>>
>>> > Sounds like you're describing -XX:+TieredCompilation [1], already
>>> > available in HotSpot.
>>> >
>>> > [1]:
>>> >
>>> http://docs.oracle.com/javase/7/docs/technotes/guides/vm/performance-enhancements-7.html#tieredcompilation
>>> >
>>> >
>>> > On Fri, Jan 24, 2014 at 3:29 PM, Stefan Reich <
>>> > stefan.reich.maker.of.eye at googlemail.com> wrote:
>>> >
>>> >> Hi there!
>>> >>
>>> >> Is this the official HotSpot list? Looks like it.
>>> >>
>>> >> I am Stefan. Here's my short bio: I was an early HotSpot adopter
>>> (before
>>> >> its release) and now I reinvent programming (www.TinyBrain.de).
>>> >>
>>> >> OK, on to the topic: I'd LOVE to see the HotSpot client and server VMs
>>> >> combined into one engine. A combination seems to me like pretty much
>>> the
>>> >> ideal VM to have.
>>> >>
>>> >> It would basically start as the client VM in order to get stuff
>>> started
>>> >> quickly, least delays possible.
>>> >>
>>> >> When initialisations are done, after a few seconds or so, the VM
>>> switches
>>> >> to server mode, delivering highly-optimized code.
>>> >>
>>> >> I need to restart VMs a lot, but I still want maximum performance, for
>>> >> example for GUIs. It's OK to have a slower GUI for a few seconds if
>>> you're
>>> >> rewarded with full speed shortly after that.
>>> >>
>>> >> Is it possible? Shouldn't be too hard to implement, right? Anyone up
>>> for
>>> >> it?
>>> >>
>>> >> Cheers,
>>> >> Stefan
>>> >>
>>> >> --
>>> >>
>>> >> Stefan Reich
>>> >> TinyBrain.de
>>> >> We will beat Google to A.I.
>>> >>
>>> >
>>> >
>>>
>>
>>
>
More information about the hotspot-dev
mailing list