I have set up a local build against "hsx" hotspot compiler dev branch, thanks to Christian. I'll try to write something up with the process tomorrow.
Anyway, I wanted to test out Tom's patch for GWT bimorphic inlining and Christian's patch for push invalidation of mutable call sites. The results were peculiar! First I tried a build with no patches: headius@headius-desktop:~/projects/jruby$ JAVA_HOME=~/hsx-hotspot/build/linux/jdk-linux-i586/ bin/jruby --server bench/bench_fib_recursive.rb 5 35 9227465 1.977000 0.000000 1.977000 ( 1.867000) 9227465 1.524000 0.000000 1.524000 ( 1.524000) 9227465 1.524000 0.000000 1.524000 ( 1.524000) 9227465 1.535000 0.000000 1.535000 ( 1.535000) 9227465 1.529000 0.000000 1.529000 ( 1.529000) Then with both Tom's and Christian's patches applied together: headius@headius-desktop:~/projects/jruby$ JAVA_HOME=~/hsx-hotspot/build/linux/jdk-linux-i586/ bin/jruby --server bench/bench_fib_recursive.rb 5 35 9227465 1.761000 0.000000 1.761000 ( 1.651000) 9227465 1.457000 0.000000 1.457000 ( 1.457000) 9227465 1.456000 0.000000 1.456000 ( 1.456000) 9227465 1.482000 0.000000 1.482000 ( 1.482000) 9227465 1.454000 0.000000 1.454000 ( 1.453000) I like any improvements, so naturally I was happy. But Christian expected a bigger improvement. So I tried with just Christian's patch: headius@headius-desktop:~/projects/jruby$ JAVA_HOME=~/hsx-hotspot/build/linux/jdk-linux-i586/ bin/jruby --server bench/bench_fib_recursive.rb 5 35 9227465 1.665000 0.000000 1.665000 ( 1.555000) 9227465 1.270000 0.000000 1.270000 ( 1.270000) 9227465 1.268000 0.000000 1.268000 ( 1.268000) 9227465 1.292000 0.000000 1.292000 ( 1.292000) 9227465 1.259000 0.000000 1.259000 ( 1.259000) Interesting, eh? - Charlie _______________________________________________ mlvm-dev mailing list mlvm-dev@openjdk.java.net http://mail.openjdk.java.net/mailman/listinfo/mlvm-dev