harmony-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Jim Yu" <junjie0...@gmail.com>
Subject Re: [jira] Commented: (HARMONY-6056) [classlib][jit][opt][performance] Optimize heap allocations in String(String, int) constructor for JIT
Date Thu, 08 Jan 2009 09:11:59 GMT
Hi Aleksey,
I very agree with you and I have implemented an optimized algorithm for
Integer.toString(int) method. Thanks to your benchmark, here are the test
results[1] on my windows platform.  I've raised a JIRA at
https://issues.apache.org/jira/browse/HARMONY-6068
[1]
Result for Harmony java6 branch:
(String)base + (int)add:
-------------------------------------------
 base length (vars with rows): 0..2..10
  add length (vars with cols): 0..2..10

 loop duration = 100 msecs
 target variance = 0.05

ops/msec, the more the better:
6721, 6096, *4650, *3846, *3178,
*8080, *5833, *4447, 3731, 3048,
*7985, *5848, 4788, 3727, *3114,
*7891, 5592, *4389, *3560, 3048,
8388, 5607, *4522, 3727, 3051,

After applied my patch:
(String)base + (int)add:
-------------------------------------------
 base length (vars with rows): 0..2..10
  add length (vars with cols): 0..2..10

 loop duration = 100 msecs
 target variance = 0.05

ops/msec, the more the better:
8322, 6721, 4791, 4788, 4788,
8388, 6721, 5156, *5012, 4797,
8388, 6707, 5161, *4963, 4795,
8388, 6707, *5126, 4802, 4788,
*8048, 6700, *5021, 4802, *4687,

2009/1/7 Aleksey Shipilev <aleksey.shipilev@gmail.com>

> Ok, we can implement the in-place Integer.toString() and specialize
> the radix-10 conversion in Integer. Then Classlib performance guys
> might use the inplace conversion to optimize StringBuilder performance
> or even catch the concatenation like J9 does.
>
> My idea is to share whatever optimization between all VMs that use the
> Classlib.
>
> Thanks,
> Aleksey.
>
> On Wed, Jan 7, 2009 at 5:46 PM, Tim Ellison <t.p.ellison@gmail.com> wrote:
> > Aleksey Shipilev wrote:
> >> Am I understanding right that private String(String, int) is inlined
> >> by J9 JIT when (String)s1 + (int)v1 is required?
> >
> > Yes - so for DRLVM, Kevin's patch in HARMONY-6056 will be impotent.
> >
> > Regards,
> > Tim
> >
> >
>



-- 
Best Regards,
Jim, Jun Jie Yu

China Software Development Lab, IBM

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message