You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@harmony.apache.org by "Aleksey Shipilev (JIRA)" <ji...@apache.org> on 2008/03/23 20:45:24 UTC

[jira] Created: (HARMONY-5632) [general] Serialization performance improvements

[general] Serialization performance improvements
------------------------------------------------

                 Key: HARMONY-5632
                 URL: https://issues.apache.org/jira/browse/HARMONY-5632
             Project: Harmony
          Issue Type: Improvement
            Reporter: Aleksey Shipilev


This is umbrella issue for serialization performance improvements

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


[jira] Updated: (HARMONY-5632) [drlvm][general] Serialization performance improvements

Posted by "Aleksey Shipilev (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HARMONY-5632?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Aleksey Shipilev updated HARMONY-5632:
--------------------------------------

    Attachment: serialBench-TGN.PNG

serialBench-TGN.PNG
16-core Tigerton measurements.

Most noticeable patches are:
 1. lookupClass optimization (HARMONY-5633)
 2. emptyStream bugfix (HARMONY-5635)

Still, we have the degradation.

> [drlvm][general] Serialization performance improvements
> -------------------------------------------------------
>
>                 Key: HARMONY-5632
>                 URL: https://issues.apache.org/jira/browse/HARMONY-5632
>             Project: Harmony
>          Issue Type: Improvement
>            Reporter: Aleksey Shipilev
>         Attachments: MTHarness.jar, MTHarness.zip, serialBench-CTN.PNG, serialBench-HTN.PNG, serialBench-TGN.PNG
>
>
> This is umbrella issue for serialization performance improvements

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


[jira] Updated: (HARMONY-5632) [drlvm][general] Serialization performance improvements

Posted by "Aleksey Shipilev (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HARMONY-5632?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Aleksey Shipilev updated HARMONY-5632:
--------------------------------------

    Attachment: serialBench-CTN.PNG

serialBench-CTN.PNG
8-core Clovertown measurements.

Most noticeable patches are:
 1. lookupClass optimization (HARMONY-5633)
 2. emptyStream bugfix (HARMONY-5635)

> [drlvm][general] Serialization performance improvements
> -------------------------------------------------------
>
>                 Key: HARMONY-5632
>                 URL: https://issues.apache.org/jira/browse/HARMONY-5632
>             Project: Harmony
>          Issue Type: Improvement
>            Reporter: Aleksey Shipilev
>         Attachments: MTHarness.jar, MTHarness.zip, serialBench-CTN.PNG
>
>
> This is umbrella issue for serialization performance improvements

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


[jira] Updated: (HARMONY-5632) [drlvm][general] Serialization performance improvements

Posted by "Aleksey Shipilev (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HARMONY-5632?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Aleksey Shipilev updated HARMONY-5632:
--------------------------------------

    Description: 
This is umbrella issue for serialization performance improvements.

For now, distribution of clean/POC is following:

Clean:
HARMONY-5634 [classlib][luni][performance] ObjectInputStream should use HashMap instead of Hashtable for internal storage
HARMONY-5635 [classlib][luni][performance] ObjectInputStream should empty the underlying stream in right way
HARMONY-5633 [classlib][luni][performance] ObjectStreamClass lookup improvement
HARMONY-5640 [classlib][luni][performance] ObjectInputStream.resolveClass(ObjectStreamClass ...) optimization

Dirty/POC:
HARMONY-5636 [classlib][luni][performance] java.lang.reflect.Proxy cache should be unsynchronized
HARMONY-5637 [drlvm][classloader][performance] Make ClassLoader.loadClass desynchronized while trying to load already loaded class
HARMONY-5638 [drlvm][performance] String.intern() should use unsynchronized fast-path
HARMONY-5639 [drlvm][classloader][performance] Make native class/method/field lookups unsynchronized

  was:This is umbrella issue for serialization performance improvements


> [drlvm][general] Serialization performance improvements
> -------------------------------------------------------
>
>                 Key: HARMONY-5632
>                 URL: https://issues.apache.org/jira/browse/HARMONY-5632
>             Project: Harmony
>          Issue Type: Improvement
>            Reporter: Aleksey Shipilev
>         Attachments: MTHarness.jar, MTHarness.zip, serialBench-CTN.PNG, serialBench-HTN.PNG, serialBench-TGN.PNG
>
>
> This is umbrella issue for serialization performance improvements.
> For now, distribution of clean/POC is following:
> Clean:
> HARMONY-5634 [classlib][luni][performance] ObjectInputStream should use HashMap instead of Hashtable for internal storage
> HARMONY-5635 [classlib][luni][performance] ObjectInputStream should empty the underlying stream in right way
> HARMONY-5633 [classlib][luni][performance] ObjectStreamClass lookup improvement
> HARMONY-5640 [classlib][luni][performance] ObjectInputStream.resolveClass(ObjectStreamClass ...) optimization
> Dirty/POC:
> HARMONY-5636 [classlib][luni][performance] java.lang.reflect.Proxy cache should be unsynchronized
> HARMONY-5637 [drlvm][classloader][performance] Make ClassLoader.loadClass desynchronized while trying to load already loaded class
> HARMONY-5638 [drlvm][performance] String.intern() should use unsynchronized fast-path
> HARMONY-5639 [drlvm][classloader][performance] Make native class/method/field lookups unsynchronized

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


[jira] Updated: (HARMONY-5632) [drlvm][general] Serialization performance improvements

Posted by "Aleksey Shipilev (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HARMONY-5632?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Aleksey Shipilev updated HARMONY-5632:
--------------------------------------

    Summary: [drlvm][general] Serialization performance improvements  (was: [general] Serialization performance improvements)

> [drlvm][general] Serialization performance improvements
> -------------------------------------------------------
>
>                 Key: HARMONY-5632
>                 URL: https://issues.apache.org/jira/browse/HARMONY-5632
>             Project: Harmony
>          Issue Type: Improvement
>            Reporter: Aleksey Shipilev
>
> This is umbrella issue for serialization performance improvements

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


[jira] Commented: (HARMONY-5632) [drlvm][general] Serialization performance improvements

Posted by "Aleksey Shipilev (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/HARMONY-5632?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12581567#action_12581567 ] 

Aleksey Shipilev commented on HARMONY-5632:
-------------------------------------------

For now, distribution of clean/POC is following:

Clean:
HARMONY-5634 [classlib][luni][performance] ObjectInputStream should use HashMap instead of Hashtable for internal storage
HARMONY-5635 [classlib][luni][performance] ObjectInputStream should empty the underlying stream in right way

Dirty/POC:
HARMONY-5633 [drlvm][performance] ObjectStreamClass lookup improvement
HARMONY-5636 [classlib][luni][performance] java.lang.reflect.Proxy cache should be unsynchronized
HARMONY-5637 [drlvm][classloader][performance] Make ClassLoader.loadClass desynchronized while trying to load already loaded class
HARMONY-5638 [drlvm][performance] String.intern() should use unsynchronized fast-path
HARMONY-5639 [drlvm][classloader][performance] Make native class/method/field lookups unsynchronized
HARMONY-5640 [drlvm][performance] ObjectInputStream.resolveClass(ObjectStreamClass ...) optimization


> [drlvm][general] Serialization performance improvements
> -------------------------------------------------------
>
>                 Key: HARMONY-5632
>                 URL: https://issues.apache.org/jira/browse/HARMONY-5632
>             Project: Harmony
>          Issue Type: Improvement
>            Reporter: Aleksey Shipilev
>         Attachments: MTHarness.jar, MTHarness.zip, serialBench-CTN.PNG, serialBench-HTN.PNG, serialBench-TGN.PNG
>
>
> This is umbrella issue for serialization performance improvements

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


[jira] Updated: (HARMONY-5632) [drlvm][general] Serialization performance improvements

Posted by "Aleksey Shipilev (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HARMONY-5632?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Aleksey Shipilev updated HARMONY-5632:
--------------------------------------

    Attachment: MTHarness.zip

MTHarness.zip
MTHarness source code.

> [drlvm][general] Serialization performance improvements
> -------------------------------------------------------
>
>                 Key: HARMONY-5632
>                 URL: https://issues.apache.org/jira/browse/HARMONY-5632
>             Project: Harmony
>          Issue Type: Improvement
>            Reporter: Aleksey Shipilev
>         Attachments: MTHarness.jar, MTHarness.zip
>
>
> This is umbrella issue for serialization performance improvements

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


[jira] Updated: (HARMONY-5632) [drlvm][general] Serialization performance improvements

Posted by "Aleksey Shipilev (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HARMONY-5632?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Aleksey Shipilev updated HARMONY-5632:
--------------------------------------

    Attachment: serialBench-HTN.PNG

serialBench-HTN.PNG
8-core Harpertown measurements.

Most noticeable patches are:
 1. lookupClass optimization (HARMONY-5633)
 2. HashMap -> Hashtable change (HARMONY-5634)
 3. emptyStream bugfix (HARMONY-5635)

> [drlvm][general] Serialization performance improvements
> -------------------------------------------------------
>
>                 Key: HARMONY-5632
>                 URL: https://issues.apache.org/jira/browse/HARMONY-5632
>             Project: Harmony
>          Issue Type: Improvement
>            Reporter: Aleksey Shipilev
>         Attachments: MTHarness.jar, MTHarness.zip, serialBench-CTN.PNG, serialBench-HTN.PNG, serialBench-TGN.PNG
>
>
> This is umbrella issue for serialization performance improvements

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


[jira] Updated: (HARMONY-5632) [drlvm][general] Serialization performance improvements

Posted by "Aleksey Shipilev (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HARMONY-5632?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Aleksey Shipilev updated HARMONY-5632:
--------------------------------------

    Attachment: MTHarness.jar

MTHarness.jar
Multi-threaded Harness used in the experiments.

To run SeriaBench one should execute:
 java -jar MTHarness.jar harness.SerialBench <thread count> <times>


> [drlvm][general] Serialization performance improvements
> -------------------------------------------------------
>
>                 Key: HARMONY-5632
>                 URL: https://issues.apache.org/jira/browse/HARMONY-5632
>             Project: Harmony
>          Issue Type: Improvement
>            Reporter: Aleksey Shipilev
>         Attachments: MTHarness.jar, MTHarness.zip
>
>
> This is umbrella issue for serialization performance improvements

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


[jira] Updated: (HARMONY-5632) [drlvm][general] Serialization performance improvements

Posted by "Aleksey Shipilev (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HARMONY-5632?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Aleksey Shipilev updated HARMONY-5632:
--------------------------------------

    Comment: was deleted

> [drlvm][general] Serialization performance improvements
> -------------------------------------------------------
>
>                 Key: HARMONY-5632
>                 URL: https://issues.apache.org/jira/browse/HARMONY-5632
>             Project: Harmony
>          Issue Type: Improvement
>            Reporter: Aleksey Shipilev
>         Attachments: MTHarness.jar, MTHarness.zip, serialBench-CTN.PNG, serialBench-HTN.PNG, serialBench-TGN.PNG
>
>
> This is umbrella issue for serialization performance improvements

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


[jira] Commented: (HARMONY-5632) [drlvm][general] Serialization performance improvements

Posted by "Aleksey Shipilev (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/HARMONY-5632?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12586586#action_12586586 ] 

Aleksey Shipilev commented on HARMONY-5632:
-------------------------------------------

For now, distribution of clean/POC is following:

Clean:
HARMONY-5634 [classlib][luni][performance] ObjectInputStream should use HashMap instead of Hashtable for internal storage
HARMONY-5635 [classlib][luni][performance] ObjectInputStream should empty the underlying stream in right way
HARMONY-5633 [drlvm][performance] ObjectStreamClass lookup improvement
HARMONY-5640 [drlvm][performance] ObjectInputStream.resolveClass(ObjectStreamClass ...) optimization 

Dirty/POC:
HARMONY-5636 [classlib][luni][performance] java.lang.reflect.Proxy cache should be unsynchronized
HARMONY-5637 [drlvm][classloader][performance] Make ClassLoader.loadClass desynchronized while trying to load already loaded class
HARMONY-5638 [drlvm][performance] String.intern() should use unsynchronized fast-path
HARMONY-5639 [drlvm][classloader][performance] Make native class/method/field lookups unsynchronized


> [drlvm][general] Serialization performance improvements
> -------------------------------------------------------
>
>                 Key: HARMONY-5632
>                 URL: https://issues.apache.org/jira/browse/HARMONY-5632
>             Project: Harmony
>          Issue Type: Improvement
>            Reporter: Aleksey Shipilev
>         Attachments: MTHarness.jar, MTHarness.zip, serialBench-CTN.PNG, serialBench-HTN.PNG, serialBench-TGN.PNG
>
>
> This is umbrella issue for serialization performance improvements

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