You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@harmony.apache.org by "Nikolay Sidelnikov (JIRA)" <ji...@apache.org> on 2007/02/27 07:58:06 UTC
[jira] Created: (HARMONY-3243) [drlvm][jit][opt]It's possible to
fill array with constant much faster
[drlvm][jit][opt]It's possible to fill array with constant much faster
----------------------------------------------------------------------
Key: HARMONY-3243
URL: https://issues.apache.org/jira/browse/HARMONY-3243
Project: Harmony
Issue Type: Improvement
Components: DRLVM
Reporter: Nikolay Sidelnikov
Filling an array with a constant is an often code pattern (see attached example).
We can encrease speed of such operation in about 4 times.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Resolved: (HARMONY-3243) [drlvm][jit][opt]It's possible to
fill array with constant much faster
Posted by "Alexey Varlamov (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/HARMONY-3243?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Alexey Varlamov resolved HARMONY-3243.
--------------------------------------
Resolution: Fixed
Applied at r521112.
> [drlvm][jit][opt]It's possible to fill array with constant much faster
> ----------------------------------------------------------------------
>
> Key: HARMONY-3243
> URL: https://issues.apache.org/jira/browse/HARMONY-3243
> Project: Harmony
> Issue Type: Improvement
> Components: DRLVM
> Reporter: Nikolay Sidelnikov
> Assigned To: Alexey Varlamov
> Attachments: faf_em64t.patch, faf_em64t_fixed.patch, tp.java
>
>
> Filling an array with a constant is an often code pattern (see attached example).
> We can encrease speed of such operation in about 4 times.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Commented: (HARMONY-3243) [drlvm][jit][opt]It's possible to
fill array with constant much faster
Posted by "Egor Pasko (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/HARMONY-3243?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12481226 ]
Egor Pasko commented on HARMONY-3243:
-------------------------------------
let's discuss this approach in dev@
> [drlvm][jit][opt]It's possible to fill array with constant much faster
> ----------------------------------------------------------------------
>
> Key: HARMONY-3243
> URL: https://issues.apache.org/jira/browse/HARMONY-3243
> Project: Harmony
> Issue Type: Improvement
> Components: DRLVM
> Reporter: Nikolay Sidelnikov
> Assigned To: Alexey Varlamov
> Attachments: faf_em64t.patch, tp.java
>
>
> Filling an array with a constant is an often code pattern (see attached example).
> We can encrease speed of such operation in about 4 times.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Updated: (HARMONY-3243) [drlvm][jit][opt]It's possible to
fill array with constant much faster
Posted by "Nikolay Sidelnikov (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/HARMONY-3243?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Nikolay Sidelnikov updated HARMONY-3243:
----------------------------------------
Attachment: (was: fastarrayfill.diff)
> [drlvm][jit][opt]It's possible to fill array with constant much faster
> ----------------------------------------------------------------------
>
> Key: HARMONY-3243
> URL: https://issues.apache.org/jira/browse/HARMONY-3243
> Project: Harmony
> Issue Type: Improvement
> Components: DRLVM
> Reporter: Nikolay Sidelnikov
> Assigned To: Alexey Varlamov
> Attachments: faf_em64t.patch, tp.java
>
>
> Filling an array with a constant is an often code pattern (see attached example).
> We can encrease speed of such operation in about 4 times.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Assigned: (HARMONY-3243) [drlvm][jit][opt]It's possible to
fill array with constant much faster
Posted by "Alexey Varlamov (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/HARMONY-3243?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Alexey Varlamov reassigned HARMONY-3243:
----------------------------------------
Assignee: Alexey Varlamov
> [drlvm][jit][opt]It's possible to fill array with constant much faster
> ----------------------------------------------------------------------
>
> Key: HARMONY-3243
> URL: https://issues.apache.org/jira/browse/HARMONY-3243
> Project: Harmony
> Issue Type: Improvement
> Components: DRLVM
> Reporter: Nikolay Sidelnikov
> Assigned To: Alexey Varlamov
> Attachments: fastarrayfill.diff, tp.java
>
>
> Filling an array with a constant is an often code pattern (see attached example).
> We can encrease speed of such operation in about 4 times.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Updated: (HARMONY-3243) [drlvm][jit][opt]It's possible to
fill array with constant much faster
Posted by "Nikolay Sidelnikov (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/HARMONY-3243?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Nikolay Sidelnikov updated HARMONY-3243:
----------------------------------------
Attachment: faf_em64t.patch
Optimization was enabled for EM64T platform.
> [drlvm][jit][opt]It's possible to fill array with constant much faster
> ----------------------------------------------------------------------
>
> Key: HARMONY-3243
> URL: https://issues.apache.org/jira/browse/HARMONY-3243
> Project: Harmony
> Issue Type: Improvement
> Components: DRLVM
> Reporter: Nikolay Sidelnikov
> Assigned To: Alexey Varlamov
> Attachments: faf_em64t.patch, tp.java
>
>
> Filling an array with a constant is an often code pattern (see attached example).
> We can encrease speed of such operation in about 4 times.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Updated: (HARMONY-3243) [drlvm][jit][opt]It's possible to
fill array with constant much faster
Posted by "Nikolay Sidelnikov (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/HARMONY-3243?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Nikolay Sidelnikov updated HARMONY-3243:
----------------------------------------
Attachment: fastarrayfill.diff
The optimization was added, it's turned off by default in server.emconf file
> [drlvm][jit][opt]It's possible to fill array with constant much faster
> ----------------------------------------------------------------------
>
> Key: HARMONY-3243
> URL: https://issues.apache.org/jira/browse/HARMONY-3243
> Project: Harmony
> Issue Type: Improvement
> Components: DRLVM
> Reporter: Nikolay Sidelnikov
> Attachments: fastarrayfill.diff, tp.java
>
>
> Filling an array with a constant is an often code pattern (see attached example).
> We can encrease speed of such operation in about 4 times.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Updated: (HARMONY-3243) [drlvm][jit][opt]It's possible to
fill array with constant much faster
Posted by "Nikolay Sidelnikov (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/HARMONY-3243?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Nikolay Sidelnikov updated HARMONY-3243:
----------------------------------------
Attachment: tp.java
> [drlvm][jit][opt]It's possible to fill array with constant much faster
> ----------------------------------------------------------------------
>
> Key: HARMONY-3243
> URL: https://issues.apache.org/jira/browse/HARMONY-3243
> Project: Harmony
> Issue Type: Improvement
> Components: DRLVM
> Reporter: Nikolay Sidelnikov
> Attachments: tp.java
>
>
> Filling an array with a constant is an often code pattern (see attached example).
> We can encrease speed of such operation in about 4 times.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Updated: (HARMONY-3243) [drlvm][jit][opt]It's possible to
fill array with constant much faster
Posted by "Nikolay Sidelnikov (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/HARMONY-3243?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Nikolay Sidelnikov updated HARMONY-3243:
----------------------------------------
Attachment: faf_em64t_fixed.patch
I can't reproduce this failure, but the new patch contains a check to prevent it.
Egor, could you check it?
> [drlvm][jit][opt]It's possible to fill array with constant much faster
> ----------------------------------------------------------------------
>
> Key: HARMONY-3243
> URL: https://issues.apache.org/jira/browse/HARMONY-3243
> Project: Harmony
> Issue Type: Improvement
> Components: DRLVM
> Reporter: Nikolay Sidelnikov
> Assigned To: Alexey Varlamov
> Attachments: faf_em64t.patch, faf_em64t_fixed.patch, tp.java
>
>
> Filling an array with a constant is an often code pattern (see attached example).
> We can encrease speed of such operation in about 4 times.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Commented: (HARMONY-3243) [drlvm][jit][opt]It's possible to
fill array with constant much faster
Posted by "Egor Pasko (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/HARMONY-3243?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12481588 ]
Egor Pasko commented on HARMONY-3243:
-------------------------------------
After applying the patch it failed for me during compilation of Thread::<init>:
/home/pasko/svn/1/trunk/working_vm/vm/jitrino/src/shared/LoopTree.h:85: bool Jitrino::LoopTree::hasLoops() const: Assertion `isValid()' failed.
steps to reproduce:
$DRLVM -showversion -Xem:server tp
Apache Harmony Launcher : (c) Copyright 1991, 2006 The Apache Software Foundation or its licensors, as applicable.
java version "1.5.0"
pre-alpha : not complete or compatible
svn = r515555, (Mar 15 2007), Linux/ia32/gcc 4.0.3, debug build
http://incubator.apache.org/harmony
java: /home/pasko/svn/1/trunk/working_vm/vm/jitrino/src/shared/LoopTree.h:85: bool Jitrino::LoopTree::hasLoops() const: Assertion `isValid()' failed.
SIGABRT in VM code.
Stack trace:
addr2line: '[vdso]': No such file
Terminated
hangs here while printig stack
the actual stack can be obtained via running from within debugger:
#0 0xffffe410 in __kernel_vsyscall ()
#1 0xb7a4b9a1 in raise () from /lib/tls/i686/cmov/libc.so.6
#2 0xb7a4d2b9 in abort () from /lib/tls/i686/cmov/libc.so.6
#3 0xb7a44f51 in __assert_fail () from /lib/tls/i686/cmov/libc.so.6
#4 0xb5b6059f in Jitrino::LoopTree::hasLoops (this=0x8426090) at LoopTree.h:85
#5 0xb5b5f152 in Jitrino::FastArrayFillPass::_run (this=0x843533c, irManager=@0x8432e90)
at /home/pasko/svn/1/trunk/working_vm/vm/jitrino/src/optimizer/FastArrayFilling.cpp:52
#6 0xb5da6196 in Jitrino::OptPass::run (this=0x843533c) at /home/pasko/svn/1/trunk/working_vm/vm/jitrino/src/optimizer/optpass.cpp:61
#7 0xb5c77c8b in Jitrino::runPipeline (c=0xbf989528) at /home/pasko/svn/1/trunk/working_vm/vm/jitrino/src/main/Jitrino.cpp:226
#8 0xb5c7829a in Jitrino::compileMethod (cc=0xbf989528) at /home/pasko/svn/1/trunk/working_vm/vm/jitrino/src/main/Jitrino.cpp:261
#9 0xb5c783ba in Jitrino::Jitrino::CompileMethod (cc=0xbf989528) at /home/pasko/svn/1/trunk/working_vm/vm/jitrino/src/main/Jitrino.cpp:286
that should be easily fixable
Ubuntu 6.06.1 LTS
> [drlvm][jit][opt]It's possible to fill array with constant much faster
> ----------------------------------------------------------------------
>
> Key: HARMONY-3243
> URL: https://issues.apache.org/jira/browse/HARMONY-3243
> Project: Harmony
> Issue Type: Improvement
> Components: DRLVM
> Reporter: Nikolay Sidelnikov
> Assigned To: Alexey Varlamov
> Attachments: faf_em64t.patch, tp.java
>
>
> Filling an array with a constant is an often code pattern (see attached example).
> We can encrease speed of such operation in about 4 times.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.