Aleksey, I think keep the benchmark somewhere such as JIRA is also ok. 7 serialization related errors in Collections2Test after applied your patch. All of them looked like below.
zeroLengthElementArray java.lang.NoSuchFieldError: zeroLengthElementArray at org.apache.harmony.misc.accessors.ObjectAccessor.getFieldID(ObjectAccessor.java:54) at org.apache.harmony.misc.accessors.ObjectAccessor.getFieldID(ObjectAccessor.java:56) at java.io.ObjectStreamField.getFieldID(ObjectStreamField.java:59) at java.io.ObjectInputStream.readFieldValues(ObjectInputStream.java:1133) at java.io.ObjectInputStream.defaultReadObject(ObjectInputStream.java:433) at java.io.ObjectInputStream.readObjectForClass(ObjectInputStream.java:1415) at java.io.ObjectInputStream.readHierarchy(ObjectInputStream.java:1322) at java.io.ObjectInputStream.readNewObject(ObjectInputStream.java:1978) at java.io.ObjectInputStream.readNonPrimitiveContent(ObjectInputStream.java:821) at java.io.ObjectInputStream.readObject(ObjectInputStream.java:2130) at java.io.ObjectInputStream.readObject(ObjectInputStream.java:285) at tests.util.SerializationTester.readObject(SerializationTester.java:171) at tests.util.SerializationTester.assertCompabilityEquals(SerializationTester.java:142) at org.apache.harmony.luni.tests.java.util.Collections2Test.test_checkedCollectionSerializationCompatability(Collections2Test.java:418) at java.lang.reflect.AccessibleObject.invokeV(AccessibleObject.java:25) On 4/15/08, Aleksey Shipilev <[EMAIL PROTECTED]> wrote: > Thanks, Tony! > > There is microbenchmark in [1], is it too big for regression test? > > Thanks, > Aleksey. > > [1] https://issues.apache.org/jira/browse/HARMONY-5632 > > On Tue, Apr 15, 2008 at 7:08 AM, Tony Wu <[EMAIL PROTECTED]> wrote: > > Hi, Aleksey > > I'm looking at 5722. I agree with you on leveraging the Accessor but I > > think it would be good if you can post some micro-benchmark on this > > JIRA so that we can utilize it as regression test in future. > > > > > > > > On 4/15/08, Aleksey Shipilev <[EMAIL PROTECTED]> wrote: > > > Hi all, > > > > > > As you might noticed, there is active work on serialization > > > performance improvements [1]. So far we had committed 4 patches > > > concerning scalability and boosted the performance on multi-threaded > > > serialization benchmarks more than 2x times. And this is not the end > > > of the journey: more issues coming. > > > > > > Dear committers, can you please review and commit the patches in ready > > JIRAs? > > > I will be happy if these two committed: > > > > > > a. [classlib][luni][performance] ObjectInputStream/ObjectOutputStream > > > can use optimized API for accessing fields - available at [2] > > > This issue moves the setField/getField functionality to ObjectAccessor > > > utility class. This eliminates one serious problem: creation of string > > > during field name lookup on native side. The second advantage is that > > > this solution checks security on accessor creation rather than on > > > every call (like Reflection API does). This improvement gives another > > > 30-120% boost for serialization workload. > > > > > > I expect more with rewriting these accessors on magics, thus > > > eliminating JNI overhead and native-side work. Those who interested in > > > this topic, feel free to join in corresponding JIRA [3]. > > > > > > b. [classlib][luni][performance] j.u.IdentityHashMap ariphmetic > > > improvements - available at [4] > > > After the moving of ObjectStreamClass cache to ThreadLocalCache [5], > > > performance of serialization depends on ThreadLocal performance and > > > then on IdentityHashMap performance. Simple benchmark shows that > > > ThreadLocal performance is devastating: 50x slower than Sun 1.6.0_05 > > > [6]. This is very first ready patch from that chain of issues. It > > > brings up +300% boost on ThreadLocal benchmark and +10% boost to > > > serialization benchmark. > > > > > > Thanks, > > > Aleksey. > > > > > > [1] https://issues.apache.org/jira/browse/HARMONY-5632 > > > [2] https://issues.apache.org/jira/browse/HARMONY-5722 (ready) > > > [3] https://issues.apache.org/jira/browse/HARMONY-5725 > > > [4] https://issues.apache.org/jira/browse/HARMONY-5718 (ready) > > > [5] https://issues.apache.org/jira/browse/HARMONY-5633 > > > [6] https://issues.apache.org/jira/browse/HARMONY-5703 > > > > > > > > > -- > > Tony Wu > > China Software Development Lab, IBM > > > -- Tony Wu China Software Development Lab, IBM