harmony-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Alex Astapchuk (JIRA)" <j...@apache.org>
Subject [jira] Updated: (HARMONY-2223) [drlvm][jit][performance]Inlined int64 arithmetic routines - speedup of 64 arithmetics
Date Thu, 23 Nov 2006 13:36:04 GMT
     [ http://issues.apache.org/jira/browse/HARMONY-2223?page=all ]

Alex Astapchuk updated HARMONY-2223:

    Attachment: encoder_assertion_on_intel64_fix.patch

Ok, here's the next - and proper fix.
Passed build.test on Lin/Ia-32 & Lin/Intel64 with the exception that I saw java.lang.ThreadTest
::testYield failing.
(it fails even even w/o my fixes and even fails with  HARMONY-2223 reverted)

> [drlvm][jit][performance]Inlined int64 arithmetic routines - speedup of 64 arithmetics
> --------------------------------------------------------------------------------------
>                 Key: HARMONY-2223
>                 URL: http://issues.apache.org/jira/browse/HARMONY-2223
>             Project: Harmony
>          Issue Type: Improvement
>          Components: DRLVM
>            Reporter: Alex Astapchuk
>         Assigned To: Alexey Varlamov
>         Attachments: encoder_assertion_on_intel64_fix.patch, encoder_assertion_on_intel64_fix.patch,
jitrino_codegen.patch, jitrino_codegen.patch, jitrino_codegen.patch, test_longmuldiv_speed.class,
test_longmuldiv_speed.java, vm_port_encoder.patch, vm_port_encoder.patch, vm_port_encoder.patch
> The attached 2 patches contain IA-32 codegenerator fixes that generate inlined long 64
bit arithmetics 
> code instead of currently used internal or VM helper.
> One of the patches contains Encoder fixes and new instructions (so the whole VM must
be rebuild), and the 
> second one exploits them in Jitrino CG.
> The proposed code generates routines for 64bit multiplications, division and remainder.
> The attached test case shows nearly 20% speedup with the fix. 
> I got from 2954ms to 2344ms on WinXP/Pentium4 on the provided test.
> YMMV: this is a microbenchmark, and results on real apps may vary depending on workload.
> Please, run the test as follows:
> ===== run_measure.sh =====
> #!/bin/bash
> NOINLINE_ARGS="-Djit.arg.inline_mul64=false -Djit.arg.inline_mul64_checks=false -Djit.arg.inline_div64=false
> echo "*** No inlining"
> java ${NOINLINE_ARGS} test_longmuldiv_speed
> echo "***  With inlining"
> java test_longmuldiv_speed
> ==========================

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


View raw message