Surinx + backport
Rémi Forax
forax at univ-mlv.fr
Fri Sep 11 01:34:50 PDT 2009
Hi all,
I've done some benchs with Surinx + backport
First, Charles, there is a bug in compiler.rb that prevent me to use Surinx.
This bug was already present in Duby but I don't remember if I report it
or not.
The compiler generate a LDC + forName with a name containing slash ('/')
instead of dot ('.')
--- compiler.rb 2009-09-11 09:33:39.000000000 +0200
+++ compiler.old.rb 2009-09-11 10:19:15.000000000 +0200
@@ -245,7 +245,7 @@
def bootstrap
@cb.static_init do
- ldc this.name.gsub(/\//, '.')
+ ldc this.name
invokestatic java.lang.Class, "forName", [java.lang.Class, string]
invokestatic com.headius.surinx.SimpleJavaBootstrap,
"registerBootstrap", [void, java.lang.Class]
returnvoid
Here are the result with the backport:
[forax at localhost surinx]$ /usr/jdk/jdk1.6.0_11/bin/java -cp .:src
-javaagent:../indy-backport2/lib/jsr292-backport.jar examples/fib
hello
1.001
0.051
0.052
0.078
0.074
0.073
0.071
0.059
0.049
0.049
And with davinci VM (without inlining patch)
[forax at localhost surinx]$ java -J-davinci-server -cp .:src
-Xbootclasspath/p:/tmp/jdk7-jsr292.jar -XX:+UnlockExperimentalVMOptions
-XX:+EnableInvokeDynamic examples/fib
hello
0.288
0.273
0.277
0.277
0.272
0.271
0.272
0.272
0.271
0.272
Before trying to apply the inlining patch, is there a reason why it is
guarded by testable ?
Rémi
More information about the mlvm-dev
mailing list