You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@harmony.apache.org by "Jim Yu (JIRA)" <ji...@apache.org> on 2009/01/08 10:08:59 UTC

[jira] Updated: (HARMONY-6068) [java6][luni] Improve Integer.toString(int) performance

     [ https://issues.apache.org/jira/browse/HARMONY-6068?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Jim Yu updated HARMONY-6068:
----------------------------

    Attachment: HARMONY-6068.diff

> [java6][luni] Improve Integer.toString(int) performance
> -------------------------------------------------------
>
>                 Key: HARMONY-6068
>                 URL: https://issues.apache.org/jira/browse/HARMONY-6068
>             Project: Harmony
>          Issue Type: Improvement
>          Components: Classlib
>    Affects Versions: 5.0M8
>            Reporter: Jim Yu
>             Fix For: 5.0M9
>
>         Attachments: HARMONY-6068.diff
>
>   Original Estimate: 24h
>  Remaining Estimate: 24h
>
> I very agree with Aleksey Shipilev' comment [1] for JIRA HARMONY-6056 as following, so I implement an optimized algorithm for  Integer.toString(int) method. Thanks to Aleksey Shipilev's benchmark,  here are the test results[2] on my windows platform.
> [1] "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."
> [2] 
> 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,

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.