You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@harmony.apache.org by "Evgeniya Maenkova (JIRA)" <ji...@apache.org> on 2008/01/22 10:12:35 UTC
[jira] Created: (HARMONY-5409) [drlvm]jit] Object.getClass
implementation by vmmagics
[drlvm]jit] Object.getClass implementation by vmmagics
------------------------------------------------------
Key: HARMONY-5409
URL: https://issues.apache.org/jira/browse/HARMONY-5409
Project: Harmony
Issue Type: Improvement
Components: DRLVM
Reporter: Evgeniya Maenkova
Object.getClass implemented by vmmagics can give significant speedup (8x):
$ /cygdrive/w/UBS/Builds/egm_r613191_getClass/bin/java -Xem:server SimpleGetClassTest 10000
Warmup start...
Warmup end....
result:2016
Administrator@EGMAENKO-MOBL /cygdrive/c/ecl_311_ws/MicroBenches/bin1
$ /cygdrive/w/UBS/Builds/egm_r613191/bin/java -Xem:server SimpleGetClassTest 10000
Warmup start...
Warmup end....
result:16016
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Assigned: (HARMONY-5409) [drlvm]jit] Object.getClass
implementation by vmmagics
Posted by "Mikhail Fursov (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/HARMONY-5409?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Mikhail Fursov reassigned HARMONY-5409:
---------------------------------------
Assignee: Mikhail Fursov
> [drlvm]jit] Object.getClass implementation by vmmagics
> ------------------------------------------------------
>
> Key: HARMONY-5409
> URL: https://issues.apache.org/jira/browse/HARMONY-5409
> Project: Harmony
> Issue Type: Improvement
> Components: DRLVM
> Reporter: Evgeniya Maenkova
> Assignee: Mikhail Fursov
> Attachments: getclass.diff, getClass_patch, SimpleGetClassTest.java
>
>
> Object.getClass implemented by vmmagics can give significant speedup (8x):
> $ /cygdrive/w/UBS/Builds/egm_r613191_getClass/bin/java -Xem:server SimpleGetClassTest 10000
> Warmup start...
> Warmup end....
> result:2016
> Administrator@EGMAENKO-MOBL /cygdrive/c/ecl_311_ws/MicroBenches/bin1
> $ /cygdrive/w/UBS/Builds/egm_r613191/bin/java -Xem:server SimpleGetClassTest 10000
> Warmup start...
> Warmup end....
> result:16016
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Updated: (HARMONY-5409) [drlvm]jit] Object.getClass
implementation by vmmagics
Posted by "Mikhail Fursov (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/HARMONY-5409?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Mikhail Fursov updated HARMONY-5409:
------------------------------------
Attachment: getclass.diff
Evgeniya, I fixed problems found in initial patch.
Check "getclass.diff" file.
The testcase I used:
public class TT {
static {
Object o = Object.class;
}
public static void main(String[] args) {
Object o = new Object();
Class c = null ;
long t = System.currentTimeMillis();
for (int i = 0; i < 100*1000*1000; i ++) {
c = o.getClass();
}
System.out.println("result:" +c.getName() + " time ="+(System.currentTimeMillis()-t));
}
}
The command line params to run it in -Xem:opt mode:
-Xem:opt -XX:jit.CS_OPT.arg.optimizer.inline.bonus_methods=java/lang/Object::getClass,java/lang/VMClassRegistry::getClass
It shows significant (>10times) improvement for getClass operation.
> [drlvm]jit] Object.getClass implementation by vmmagics
> ------------------------------------------------------
>
> Key: HARMONY-5409
> URL: https://issues.apache.org/jira/browse/HARMONY-5409
> Project: Harmony
> Issue Type: Improvement
> Components: DRLVM
> Reporter: Evgeniya Maenkova
> Attachments: getclass.diff, getClass_patch, SimpleGetClassTest.java
>
>
> Object.getClass implemented by vmmagics can give significant speedup (8x):
> $ /cygdrive/w/UBS/Builds/egm_r613191_getClass/bin/java -Xem:server SimpleGetClassTest 10000
> Warmup start...
> Warmup end....
> result:2016
> Administrator@EGMAENKO-MOBL /cygdrive/c/ecl_311_ws/MicroBenches/bin1
> $ /cygdrive/w/UBS/Builds/egm_r613191/bin/java -Xem:server SimpleGetClassTest 10000
> Warmup start...
> Warmup end....
> result:16016
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Updated: (HARMONY-5409) [drlvm]jit] Object.getClass
implementation by vmmagics
Posted by "Evgeniya Maenkova (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/HARMONY-5409?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Evgeniya Maenkova updated HARMONY-5409:
---------------------------------------
Attachment: SimpleGetClassTest.java
test case
> [drlvm]jit] Object.getClass implementation by vmmagics
> ------------------------------------------------------
>
> Key: HARMONY-5409
> URL: https://issues.apache.org/jira/browse/HARMONY-5409
> Project: Harmony
> Issue Type: Improvement
> Components: DRLVM
> Reporter: Evgeniya Maenkova
> Attachments: getClass_patch, SimpleGetClassTest.java
>
>
> Object.getClass implemented by vmmagics can give significant speedup (8x):
> $ /cygdrive/w/UBS/Builds/egm_r613191_getClass/bin/java -Xem:server SimpleGetClassTest 10000
> Warmup start...
> Warmup end....
> result:2016
> Administrator@EGMAENKO-MOBL /cygdrive/c/ecl_311_ws/MicroBenches/bin1
> $ /cygdrive/w/UBS/Builds/egm_r613191/bin/java -Xem:server SimpleGetClassTest 10000
> Warmup start...
> Warmup end....
> result:16016
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Updated: (HARMONY-5409) [drlvm]jit] Object.getClass
implementation by vmmagics
Posted by "Evgeniya Maenkova (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/HARMONY-5409?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Evgeniya Maenkova updated HARMONY-5409:
---------------------------------------
Attachment: getClass_patch
patch (works on micro tests, but crashes on some apps, need further debug)
> [drlvm]jit] Object.getClass implementation by vmmagics
> ------------------------------------------------------
>
> Key: HARMONY-5409
> URL: https://issues.apache.org/jira/browse/HARMONY-5409
> Project: Harmony
> Issue Type: Improvement
> Components: DRLVM
> Reporter: Evgeniya Maenkova
> Attachments: getClass_patch, SimpleGetClassTest.java
>
>
> Object.getClass implemented by vmmagics can give significant speedup (8x):
> $ /cygdrive/w/UBS/Builds/egm_r613191_getClass/bin/java -Xem:server SimpleGetClassTest 10000
> Warmup start...
> Warmup end....
> result:2016
> Administrator@EGMAENKO-MOBL /cygdrive/c/ecl_311_ws/MicroBenches/bin1
> $ /cygdrive/w/UBS/Builds/egm_r613191/bin/java -Xem:server SimpleGetClassTest 10000
> Warmup start...
> Warmup end....
> result:16016
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Commented: (HARMONY-5409) [drlvm]jit] Object.getClass
implementation by vmmagics
Posted by "Evgeniya Maenkova (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/HARMONY-5409?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12563420#action_12563420 ]
Evgeniya Maenkova commented on HARMONY-5409:
--------------------------------------------
Thanks, Mikhail. Let's check in this patch. It gives expected speedup on my apps.
> [drlvm]jit] Object.getClass implementation by vmmagics
> ------------------------------------------------------
>
> Key: HARMONY-5409
> URL: https://issues.apache.org/jira/browse/HARMONY-5409
> Project: Harmony
> Issue Type: Improvement
> Components: DRLVM
> Reporter: Evgeniya Maenkova
> Assignee: Mikhail Fursov
> Attachments: getclass.diff, getClass_patch, SimpleGetClassTest.java
>
>
> Object.getClass implemented by vmmagics can give significant speedup (8x):
> $ /cygdrive/w/UBS/Builds/egm_r613191_getClass/bin/java -Xem:server SimpleGetClassTest 10000
> Warmup start...
> Warmup end....
> result:2016
> Administrator@EGMAENKO-MOBL /cygdrive/c/ecl_311_ws/MicroBenches/bin1
> $ /cygdrive/w/UBS/Builds/egm_r613191/bin/java -Xem:server SimpleGetClassTest 10000
> Warmup start...
> Warmup end....
> result:16016
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Updated: (HARMONY-5409) [drlvm]jit] Object.getClass
implementation by vmmagics
Posted by "Mikhail Fursov (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/HARMONY-5409?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Mikhail Fursov updated HARMONY-5409:
------------------------------------
Attachment: getclass2.diff
getclass2: @Inline pragma support was refactored in Jitrino.OPT
> [drlvm]jit] Object.getClass implementation by vmmagics
> ------------------------------------------------------
>
> Key: HARMONY-5409
> URL: https://issues.apache.org/jira/browse/HARMONY-5409
> Project: Harmony
> Issue Type: Improvement
> Components: DRLVM
> Reporter: Evgeniya Maenkova
> Assignee: Mikhail Fursov
> Attachments: getclass.diff, getclass2.diff, getClass_patch, SimpleGetClassTest.java
>
>
> Object.getClass implemented by vmmagics can give significant speedup (8x):
> $ /cygdrive/w/UBS/Builds/egm_r613191_getClass/bin/java -Xem:server SimpleGetClassTest 10000
> Warmup start...
> Warmup end....
> result:2016
> Administrator@EGMAENKO-MOBL /cygdrive/c/ecl_311_ws/MicroBenches/bin1
> $ /cygdrive/w/UBS/Builds/egm_r613191/bin/java -Xem:server SimpleGetClassTest 10000
> Warmup start...
> Warmup end....
> result:16016
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Resolved: (HARMONY-5409) [drlvm]jit] Object.getClass
implementation by vmmagics
Posted by "Mikhail Fursov (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/HARMONY-5409?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Mikhail Fursov resolved HARMONY-5409.
-------------------------------------
Resolution: Fixed
Committed revision 617509
> [drlvm]jit] Object.getClass implementation by vmmagics
> ------------------------------------------------------
>
> Key: HARMONY-5409
> URL: https://issues.apache.org/jira/browse/HARMONY-5409
> Project: Harmony
> Issue Type: Improvement
> Components: DRLVM
> Reporter: Evgeniya Maenkova
> Assignee: Mikhail Fursov
> Attachments: getclass.diff, getclass2.diff, getClass_patch, SimpleGetClassTest.java
>
>
> Object.getClass implemented by vmmagics can give significant speedup (8x):
> $ /cygdrive/w/UBS/Builds/egm_r613191_getClass/bin/java -Xem:server SimpleGetClassTest 10000
> Warmup start...
> Warmup end....
> result:2016
> Administrator@EGMAENKO-MOBL /cygdrive/c/ecl_311_ws/MicroBenches/bin1
> $ /cygdrive/w/UBS/Builds/egm_r613191/bin/java -Xem:server SimpleGetClassTest 10000
> Warmup start...
> Warmup end....
> result:16016
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Commented: (HARMONY-5409) [drlvm]jit] Object.getClass
implementation by vmmagics
Posted by "Pavel Pervov (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/HARMONY-5409?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12563422#action_12563422 ]
Pavel Pervov commented on HARMONY-5409:
---------------------------------------
Mikhail,
one cosmetic comment: please, when committing, rename CLASS_MO_OFFSET and getClassManagedObjectOffset because they actually return offset of j.l.Class _handle_ rather than offset of direct pointer to j.l.Class.
Thanks.
> [drlvm]jit] Object.getClass implementation by vmmagics
> ------------------------------------------------------
>
> Key: HARMONY-5409
> URL: https://issues.apache.org/jira/browse/HARMONY-5409
> Project: Harmony
> Issue Type: Improvement
> Components: DRLVM
> Reporter: Evgeniya Maenkova
> Assignee: Mikhail Fursov
> Attachments: getclass.diff, getClass_patch, SimpleGetClassTest.java
>
>
> Object.getClass implemented by vmmagics can give significant speedup (8x):
> $ /cygdrive/w/UBS/Builds/egm_r613191_getClass/bin/java -Xem:server SimpleGetClassTest 10000
> Warmup start...
> Warmup end....
> result:2016
> Administrator@EGMAENKO-MOBL /cygdrive/c/ecl_311_ws/MicroBenches/bin1
> $ /cygdrive/w/UBS/Builds/egm_r613191/bin/java -Xem:server SimpleGetClassTest 10000
> Warmup start...
> Warmup end....
> result:16016
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Updated: (HARMONY-5409) [drlvm][jit] Object.getClass
implementation by vmmagics
Posted by "Pavel Pervov (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/HARMONY-5409?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Pavel Pervov updated HARMONY-5409:
----------------------------------
Summary: [drlvm][jit] Object.getClass implementation by vmmagics (was: [drlvm]jit] Object.getClass implementation by vmmagics)
> [drlvm][jit] Object.getClass implementation by vmmagics
> -------------------------------------------------------
>
> Key: HARMONY-5409
> URL: https://issues.apache.org/jira/browse/HARMONY-5409
> Project: Harmony
> Issue Type: Improvement
> Components: DRLVM
> Reporter: Evgeniya Maenkova
> Assignee: Mikhail Fursov
> Attachments: getclass.diff, getclass2.diff, getClass_patch, SimpleGetClassTest.java
>
>
> Object.getClass implemented by vmmagics can give significant speedup (8x):
> $ /cygdrive/w/UBS/Builds/egm_r613191_getClass/bin/java -Xem:server SimpleGetClassTest 10000
> Warmup start...
> Warmup end....
> result:2016
> Administrator@EGMAENKO-MOBL /cygdrive/c/ecl_311_ws/MicroBenches/bin1
> $ /cygdrive/w/UBS/Builds/egm_r613191/bin/java -Xem:server SimpleGetClassTest 10000
> Warmup start...
> Warmup end....
> result:16016
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.