Le 26/05/2010 23:09, Charles Oliver Nutter a écrit :
On Tue, May 25, 2010 at 5:26 PM, Rémi Forax<[email protected]> wrote:
Going on to claim that JVM language developers' "house is burning"
because your language has started to do math faster (and not
drastically faster, I'd add; even Java's only 4x faster than JRuby on
this benchmark) is probably going a bit far.
It don't only do math faster. I do all codes that use primitives faster.
math is just an example.
Ok, by saying "math" I mean "primitives" in general. Anything that
fits unmodified into Object I would expect to perform very well on
JRuby.
My point is not that JSR292 directly help to have better performance,
it most probably will. But above all, it drastically simplify the code of
the runtime
and let us to focus on what is in my opinion more important i.e provide
good profile type information to the VM.
I you write a runtime compiler that is able to optimize/deopt and reopt
when necessary based on type profiling.
You will get a boost. This is applicable for any dynamic languages.
Yes, I definitely agree with that. And that's why I've started work
recently (and one of our committers started work some time ago) to
build both a better compiler and type-profiled optimizations for
JRuby. Hopefully we'll start to get some of that in place for JRuby
1.6 later this summer, at least to eliminate boxed math in local
scopes where it can be shown that we're only doing known operations
against numeric types. That much should be pretty easy.
- Charlie
Here is what I'm doing or planned to do:
I work at loop level and not at method level.
There is several reasons for that:
- loop body can be called often, so body can be hot
- you know the closure at that time and my language
as no real function, all is closures.
- you also know the range of the loop variable
the array size, etc
in your case, you will know if you will have to use bignum or not
Rémi
--
You received this message because you are subscribed to the Google Groups "JVM
Languages" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit this group at
http://groups.google.com/group/jvm-languages?hl=en.