dreamhead wrote:
Hi!
This is dreamhead (one of core developers from XRuby) from
ThoughtWorks. I have been working on JRuby performance recently. I
just add RubyID into JRuby which is helpful to performance in XRuby.
RubyID is similar ID(long) in MRI which use ID to replace String to
reduce comparison cost.
id.txt is test results. There are two tests in it. One is
bench_method_dispatch.rb which Ola has posted in the mailing. The
other is Mingle tests. As you know, ThoughtWorks. runs Mingle on
JRuby. In the id.txt, id result is to use RubyID and string result is
current JRuby.
As you'll see, RubyID gives JRuby a minor improvement. Ola has got
these results, but both of us think it is difficult to decide whether
merge these code to JRuby codebase, because the change is large (from
evaluator/compiler to builtin) and the improvement is minor (1-2%).
What's your idea?
I'm not as concerned about the size of the change as any complexity it
adds. If we're adding a substantial amount of complexity, or making the
codebase more fragile, then anything under 5% improvement probably isn't
worth it. If this is an orthogonal change, largely just swapping out one
dispatch/lookup mechanism for another, then there's not as much issue.
I had hoped we'd get more performance out of this. Can you determine why
we don't? Is our existing caching good enough that this change doesn't
improve things as much as in XRuby?
- Charlie
---------------------------------------------------------------------
To unsubscribe from this list please visit:
http://xircles.codehaus.org/manage_email