You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@harmony.apache.org by "Mikhail Fursov (JIRA)" <ji...@apache.org> on 2006/10/06 14:58:20 UTC

[jira] Created: (HARMONY-1754) [drlvm][jit] Refactoring of 'devirt' and 'unguard' optimizations in Jitrino.OPT

[drlvm][jit] Refactoring of  'devirt' and 'unguard' optimizations in Jitrino.OPT
--------------------------------------------------------------------------------

                 Key: HARMONY-1754
                 URL: http://issues.apache.org/jira/browse/HARMONY-1754
             Project: Harmony
          Issue Type: Improvement
          Components: DRLVM
            Reporter: Mikhail Fursov
         Attachments: devirt.diff

This patch contains the following changes:
1) All previously hardcoded parameters used by devirt and unguard optimization passes could be set up from command line. 
2) Unguard pass is usable from now. Now it processes edge profile correctly. I hope we add profile guided unguarding to the server path after this fix commited. It shows ~1-2% performance improvement on some benchmarks.
3) Profile guided devirtualization of object (not interface) methods added.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] Updated: (HARMONY-1754) [drlvm][jit] Refactoring of 'devirt' and 'unguard' optimizations in Jitrino.OPT

Posted by "Mikhail Fursov (JIRA)" <ji...@apache.org>.
     [ http://issues.apache.org/jira/browse/HARMONY-1754?page=all ]

Mikhail Fursov updated HARMONY-1754:
------------------------------------

    Attachment: devirt.diff

the patch

> [drlvm][jit] Refactoring of  'devirt' and 'unguard' optimizations in Jitrino.OPT
> --------------------------------------------------------------------------------
>
>                 Key: HARMONY-1754
>                 URL: http://issues.apache.org/jira/browse/HARMONY-1754
>             Project: Harmony
>          Issue Type: Improvement
>          Components: DRLVM
>            Reporter: Mikhail Fursov
>         Attachments: devirt.diff
>
>
> This patch contains the following changes:
> 1) All previously hardcoded parameters used by devirt and unguard optimization passes could be set up from command line. 
> 2) Unguard pass is usable from now. Now it processes edge profile correctly. I hope we add profile guided unguarding to the server path after this fix commited. It shows ~1-2% performance improvement on some benchmarks.
> 3) Profile guided devirtualization of object (not interface) methods added.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] Resolved: (HARMONY-1754) [drlvm][jit] Refactoring of 'devirt' and 'unguard' optimizations in Jitrino.OPT

Posted by "Geir Magnusson Jr (JIRA)" <ji...@apache.org>.
     [ http://issues.apache.org/jira/browse/HARMONY-1754?page=all ]

Geir Magnusson Jr resolved HARMONY-1754.
----------------------------------------

    Resolution: Fixed

r467429.

Ubuntu 6 - c-unit, smoke, ~kernel

Please test further.  There was no test to verify this patch

> [drlvm][jit] Refactoring of  'devirt' and 'unguard' optimizations in Jitrino.OPT
> --------------------------------------------------------------------------------
>
>                 Key: HARMONY-1754
>                 URL: http://issues.apache.org/jira/browse/HARMONY-1754
>             Project: Harmony
>          Issue Type: Improvement
>          Components: DRLVM
>            Reporter: Mikhail Fursov
>         Assigned To: Geir Magnusson Jr
>         Attachments: devirt.diff
>
>
> This patch contains the following changes:
> 1) All previously hardcoded parameters used by devirt and unguard optimization passes could be set up from command line. 
> 2) Unguard pass is usable from now. Now it processes edge profile correctly. I hope we add profile guided unguarding to the server path after this fix commited. It shows ~1-2% performance improvement on some benchmarks.
> 3) Profile guided devirtualization of object (not interface) methods added.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] Commented: (HARMONY-1754) [drlvm][jit] Refactoring of 'devirt' and 'unguard' optimizations in Jitrino.OPT

Posted by "Mikhail Fursov (JIRA)" <ji...@apache.org>.
    [ http://issues.apache.org/jira/browse/HARMONY-1754?page=comments#action_12444228 ] 
            
Mikhail Fursov commented on HARMONY-1754:
-----------------------------------------

Anything else I can do to make this patch commited?

> [drlvm][jit] Refactoring of  'devirt' and 'unguard' optimizations in Jitrino.OPT
> --------------------------------------------------------------------------------
>
>                 Key: HARMONY-1754
>                 URL: http://issues.apache.org/jira/browse/HARMONY-1754
>             Project: Harmony
>          Issue Type: Improvement
>          Components: DRLVM
>            Reporter: Mikhail Fursov
>         Assigned To: Geir Magnusson Jr
>         Attachments: devirt.diff
>
>
> This patch contains the following changes:
> 1) All previously hardcoded parameters used by devirt and unguard optimization passes could be set up from command line. 
> 2) Unguard pass is usable from now. Now it processes edge profile correctly. I hope we add profile guided unguarding to the server path after this fix commited. It shows ~1-2% performance improvement on some benchmarks.
> 3) Profile guided devirtualization of object (not interface) methods added.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] Commented: (HARMONY-1754) [drlvm][jit] Refactoring of 'devirt' and 'unguard' optimizations in Jitrino.OPT

Posted by "Mikhail Fursov (JIRA)" <ji...@apache.org>.
    [ http://issues.apache.org/jira/browse/HARMONY-1754?page=comments#action_12442833 ] 
            
Mikhail Fursov commented on HARMONY-1754:
-----------------------------------------

Egor, I'll try to answer some questions

>the code looks much cleaner and more profile-oriented, but I do not see the specific flaws in the previous impl of unguard.
The old code unguarded only 0 percent edges. To synchronize static & dynamic profilers output every edge has prob>0 even if it was not executed at all. So the old version did nothing.



> [drlvm][jit] Refactoring of  'devirt' and 'unguard' optimizations in Jitrino.OPT
> --------------------------------------------------------------------------------
>
>                 Key: HARMONY-1754
>                 URL: http://issues.apache.org/jira/browse/HARMONY-1754
>             Project: Harmony
>          Issue Type: Improvement
>          Components: DRLVM
>            Reporter: Mikhail Fursov
>         Assigned To: Geir Magnusson Jr
>         Attachments: devirt.diff
>
>
> This patch contains the following changes:
> 1) All previously hardcoded parameters used by devirt and unguard optimization passes could be set up from command line. 
> 2) Unguard pass is usable from now. Now it processes edge profile correctly. I hope we add profile guided unguarding to the server path after this fix commited. It shows ~1-2% performance improvement on some benchmarks.
> 3) Profile guided devirtualization of object (not interface) methods added.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] Commented: (HARMONY-1754) [drlvm][jit] Refactoring of 'devirt' and 'unguard' optimizations in Jitrino.OPT

Posted by "Geir Magnusson Jr (JIRA)" <ji...@apache.org>.
    [ http://issues.apache.org/jira/browse/HARMONY-1754?page=comments#action_12442741 ] 
            
Geir Magnusson Jr commented on HARMONY-1754:
--------------------------------------------

Any comments before I commit this?  I have no clue here :)

> [drlvm][jit] Refactoring of  'devirt' and 'unguard' optimizations in Jitrino.OPT
> --------------------------------------------------------------------------------
>
>                 Key: HARMONY-1754
>                 URL: http://issues.apache.org/jira/browse/HARMONY-1754
>             Project: Harmony
>          Issue Type: Improvement
>          Components: DRLVM
>            Reporter: Mikhail Fursov
>         Assigned To: Geir Magnusson Jr
>         Attachments: devirt.diff
>
>
> This patch contains the following changes:
> 1) All previously hardcoded parameters used by devirt and unguard optimization passes could be set up from command line. 
> 2) Unguard pass is usable from now. Now it processes edge profile correctly. I hope we add profile guided unguarding to the server path after this fix commited. It shows ~1-2% performance improvement on some benchmarks.
> 3) Profile guided devirtualization of object (not interface) methods added.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] Assigned: (HARMONY-1754) [drlvm][jit] Refactoring of 'devirt' and 'unguard' optimizations in Jitrino.OPT

Posted by "Geir Magnusson Jr (JIRA)" <ji...@apache.org>.
     [ http://issues.apache.org/jira/browse/HARMONY-1754?page=all ]

Geir Magnusson Jr reassigned HARMONY-1754:
------------------------------------------

    Assignee: Geir Magnusson Jr

> [drlvm][jit] Refactoring of  'devirt' and 'unguard' optimizations in Jitrino.OPT
> --------------------------------------------------------------------------------
>
>                 Key: HARMONY-1754
>                 URL: http://issues.apache.org/jira/browse/HARMONY-1754
>             Project: Harmony
>          Issue Type: Improvement
>          Components: DRLVM
>            Reporter: Mikhail Fursov
>         Assigned To: Geir Magnusson Jr
>         Attachments: devirt.diff
>
>
> This patch contains the following changes:
> 1) All previously hardcoded parameters used by devirt and unguard optimization passes could be set up from command line. 
> 2) Unguard pass is usable from now. Now it processes edge profile correctly. I hope we add profile guided unguarding to the server path after this fix commited. It shows ~1-2% performance improvement on some benchmarks.
> 3) Profile guided devirtualization of object (not interface) methods added.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] Commented: (HARMONY-1754) [drlvm][jit] Refactoring of 'devirt' and 'unguard' optimizations in Jitrino.OPT

Posted by "Egor Pasko (JIRA)" <ji...@apache.org>.
    [ http://issues.apache.org/jira/browse/HARMONY-1754?page=comments#action_12442806 ] 
            
Egor Pasko commented on HARMONY-1754:
-------------------------------------

comments:
* patch is great!
* more parameters is great! more opportunities for performance tuning we have
* self-doc for parameters would have also been good. I do not feel that a in-depth explanation is needed, a hacker can look in the code to understand what parameters do. A simple listing of available params would be enough. Mikhail, could you, please? 
* the code looks much cleaner and more profile-oriented, but I do not see the specific flaws in the previous impl of unguard. Are they easy to understand?
* I do not like lines wider than 80 characters, but it's not a disaster, let it bee

> [drlvm][jit] Refactoring of  'devirt' and 'unguard' optimizations in Jitrino.OPT
> --------------------------------------------------------------------------------
>
>                 Key: HARMONY-1754
>                 URL: http://issues.apache.org/jira/browse/HARMONY-1754
>             Project: Harmony
>          Issue Type: Improvement
>          Components: DRLVM
>            Reporter: Mikhail Fursov
>         Assigned To: Geir Magnusson Jr
>         Attachments: devirt.diff
>
>
> This patch contains the following changes:
> 1) All previously hardcoded parameters used by devirt and unguard optimization passes could be set up from command line. 
> 2) Unguard pass is usable from now. Now it processes edge profile correctly. I hope we add profile guided unguarding to the server path after this fix commited. It shows ~1-2% performance improvement on some benchmarks.
> 3) Profile guided devirtualization of object (not interface) methods added.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] Closed: (HARMONY-1754) [drlvm][jit] Refactoring of 'devirt' and 'unguard' optimizations in Jitrino.OPT

Posted by "Geir Magnusson Jr (JIRA)" <ji...@apache.org>.
     [ http://issues.apache.org/jira/browse/HARMONY-1754?page=all ]

Geir Magnusson Jr closed HARMONY-1754.
--------------------------------------


> [drlvm][jit] Refactoring of  'devirt' and 'unguard' optimizations in Jitrino.OPT
> --------------------------------------------------------------------------------
>
>                 Key: HARMONY-1754
>                 URL: http://issues.apache.org/jira/browse/HARMONY-1754
>             Project: Harmony
>          Issue Type: Improvement
>          Components: DRLVM
>            Reporter: Mikhail Fursov
>         Assigned To: Geir Magnusson Jr
>         Attachments: devirt.diff
>
>
> This patch contains the following changes:
> 1) All previously hardcoded parameters used by devirt and unguard optimization passes could be set up from command line. 
> 2) Unguard pass is usable from now. Now it processes edge profile correctly. I hope we add profile guided unguarding to the server path after this fix commited. It shows ~1-2% performance improvement on some benchmarks.
> 3) Profile guided devirtualization of object (not interface) methods added.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira