Return-Path: Delivered-To: apmail-harmony-dev-archive@www.apache.org Received: (qmail 53048 invoked from network); 27 Aug 2008 05:48:46 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.2) by minotaur.apache.org with SMTP; 27 Aug 2008 05:48:46 -0000 Received: (qmail 51479 invoked by uid 500); 27 Aug 2008 05:48:43 -0000 Delivered-To: apmail-harmony-dev-archive@harmony.apache.org Received: (qmail 51437 invoked by uid 500); 27 Aug 2008 05:48:43 -0000 Mailing-List: contact dev-help@harmony.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@harmony.apache.org Delivered-To: mailing list dev@harmony.apache.org Received: (qmail 51415 invoked by uid 99); 27 Aug 2008 05:48:43 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 26 Aug 2008 22:48:43 -0700 X-ASF-Spam-Status: No, hits=-0.0 required=10.0 tests=SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (athena.apache.org: domain of firepure@gmail.com designates 72.14.220.152 as permitted sender) Received: from [72.14.220.152] (HELO fg-out-1718.google.com) (72.14.220.152) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 27 Aug 2008 05:47:46 +0000 Received: by fg-out-1718.google.com with SMTP id d23so1389089fga.36 for ; Tue, 26 Aug 2008 22:47:58 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:received:message-id:date:from:to :subject:in-reply-to:mime-version:content-type :content-transfer-encoding:content-disposition:references; bh=hVOJk2WQUitnCYgcsrxzL6NCV6U5G+UU9ZILOcKaRVU=; b=rh/HlgxHaz2+f+6Qf3lGsfSzmH+O8oHWRZy4FeGcq6CcrMj7SfhYT+uJlEeREfBOxB E/mWH92J5HA/+I+UMRaveM5BBGDuF25xsw5eCPxyFDzmS921wPW3n7GN0rWX43Vo36NT HI5QaHpkqJ5147xtoAEmOVMuhXMOwcYbggo9w= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=message-id:date:from:to:subject:in-reply-to:mime-version :content-type:content-transfer-encoding:content-disposition :references; b=d2ukLXQDWq490Y08mWW8KkXFWioHz6HJ6kKBY5vqVqZpapb594yFJtUzpEK6xZKKMj hvi6Z1OXyb5MnC7aOp5MlBg9zJ7Z9wRE7BiJS9Q/2jJ+4tFyyTfyeQ8Yl37t8edqSD4z PXJYrONKnDINGhVun4+m7kYOpKCQdNzPZ9QPw= Received: by 10.187.159.15 with SMTP id l15mr554766fao.95.1219816077939; Tue, 26 Aug 2008 22:47:57 -0700 (PDT) Received: by 10.187.240.5 with HTTP; Tue, 26 Aug 2008 22:47:57 -0700 (PDT) Message-ID: <5c8e69f0808262247x4813b838hf079b75155eaa64a@mail.gmail.com> Date: Wed, 27 Aug 2008 13:47:57 +0800 From: "Jimmy,Jing Lv" To: dev@harmony.apache.org Subject: Re: [classlib][util]java6 TreeMap improvement In-Reply-To: <94d710af0808261819q32e23d7ck6537a85e16bc5ef9@mail.gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Content-Disposition: inline References: <5c8e69f0808260331n65ee1b8cqcdaebbd6fd2e43e4@mail.gmail.com> <94d710af0808261819q32e23d7ck6537a85e16bc5ef9@mail.gmail.com> X-Virus-Checked: Checked by ClamAV on apache.org Hi, Thanks Sean, I've noticed that and fixed them in the change already. And is there a jira for these failure? 2008/8/27 Sean Qiu : > Great, Jimmy. > > I have not merge the updates from trunk5 for TreeMap since you said > you will do it separately for it. > Could you please pay your attention to these tests as well? > They are supposed to pass after your updates. > > TreeMapTest test_entrySet_contains > TreeMapRndTest testValues > TreeMapRndTest testViews > > Thank you for your job. > > 2008/8/26 Jimmy,Jing Lv : >> Hi All, >> >> As we discussed before, I plan to merge TreeMap performance >> improvement into Harmony java6 level, which have many API enhancement, >> and the structure of code refactors a lot due to the API changes. >> Currently I am close to finish. >> Mainly Java6 TreeMap has a new interface "NavigableMap" which >> requires a lot more operations on TreeMap as ascending/descending the >> map, define submaps and entries more precisely. That's the reason we >> have many different inner classes for TreeMap. And in Harmony5 TreeMap >> performance improvement, the basic Node/Entry of the TreeMap is >> changed so it requires a big change in the whole TreeMap class and its >> variety of child classes. >> I've tried best to avoid performance downgrading with API changes >> in java6. The main solution is that I try to keep simple operations as >> it is in java5, that is, if some methods are changed due to Java6 >> inner classes changes at the begining, I may try to keep a java5 inner >> class and operate it. That's why the size of java6 TreeMap has >> increased a bit. However with some benchmark it shows the >> performance was at least no worse than harmony java5 TreeMap. And I've >> add a few more test cases to ensure the correctiveness of the >> refactor, and also fix some bugs that remains in the original java6 >> TreeMap. >> >> I'll soon commit the fix. I believe there's still a lot to be >> improved here, e.g, reduce the class size, refactor/merge some inner >> classes, and improve some methods that are not optimized yet. >> >> >> ------------ >> Best Regards! >> >> Jimmy, Jing Lv >> China Software Development Lab, IBM >> > > > > -- > Best Regards > Sean, Xiao Xia Qiu > > China Software Development Lab, IBM > -- Best Regards! Jimmy, Jing Lv China Software Development Lab, IBM