Exploring JRuby performance on HotSpot?

Tom Rodriguez Thomas.Rodriguez at Sun.COM
Tue Apr 14 13:10:25 PDT 2009

I'm not sure anyone has a lot of extra time to dedicate to this though  
I'm happy to help interpret your results if you provide more detail  
about what's happening.  I think looking at the LogCompilation results  
to figure out what's getting inlined and whether predicted call sites  
are playing a part would be a good first step.  In our current system  
the effects of profiling can sometimes be unstable and the performance  
difference can be great in those cases.  Have you looked at the  
results of any profiling tools?  If you have any egregious examples  
that you can't make sense of I could take a quick look at that to see  
what I see.


On Apr 10, 2009, at 1:20 PM, Charles Oliver Nutter wrote:

> Who would be the best person to talk to about our efforts to take  
> JRuby performance to the next level? I've run into some peculiarities.
> Most recently, I modified our dynamic call path to make it possible  
> for Hotspot to inline across dyncalls. While it seems to help some  
> benchmarks, it hurts others, and it only seems to help when we  
> remove a bunch of other logic. I have not been able to determine why  
> it degrades anything, since it should allow more code to inline and  
> ultimately reduce call overhead.
> I've been looking at OptoAssembly output and things look ok to me,  
> but I'm not sure I know what I'm looking at. I can definitely see  
> that CALL operations are largely eliminated.
> Anyone interested in a little JRuby optimzation adventure? I can  
> provide a binary snapshot and simple instructions to reproduce any  
> of these benchmarks.
> - Charlie

More information about the hotspot-compiler-dev mailing list