harmony-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Tony Wu <wuyue...@gmail.com>
Subject Re: [classlib][luni] Performance improvement patch for java.text.DateFormatSymbols.DateFormatSymbols(Locale)
Date Wed, 18 Feb 2009 06:53:53 GMT
Great! I think it does help us on start up time.

But your patch breaks the serialization compatibility. I suggest to
make the icuSymbols transient and override the writeObject to make
sure the zoneStrings has been initialized before writing it out. And I
think it is not necessay to maintain the local var with the same name
anymore.

On Wed, Feb 18, 2009 at 1:43 PM, Deven You <devyoudw@gmail.com> wrote:
> Hi,
> I have raised a jira HARMONY-6095 for improving java.text.DateFormatSymbols
> performance. I found  DateFormatSymbols(Locale) will invoke
> com.ibm.icu.text.DateFormatSymbols.getZoneStrings() which can take
> significant time but rarely used in real world applications. So I delay this
> call until it really be used. it seems the performance of
> DateFormatSymbols(Locale)  can be greatly improved.*
> *the testcase is:
>
> import java.text.DateFormatSymbols;
> import java.util.Locale;
>
> public class TestDateFormatSymbols {
>
>    /**
>     * @param args
>     */
>    public static void main(String[] args) {
>        long time = System.currentTimeMillis();
>        DateFormatSymbols dfs = new DateFormatSymbols(Locale.getDefault());
>        time = System.currentTimeMillis() - time;
>
>        System.out.println("the total time is " + time + " ms!");
>    }
>
> }
>
> I have tested  on Intel(R) Core(TM)2 Duo Cpu 2.4GHZ, 2.98GB Memory machine,
> the result is as below:
> Harmony patch before: 1125 ms
>  Harmony patched: 78 ms
>



-- 
Tony Wu
China Software Development Lab, IBM

Mime
View raw message