|
Charles Oliver Nutter made changes - 01/May/08 07:48 PM
Updating bug title to reflect the actual problem.
Charles Oliver Nutter made changes - 01/May/08 07:49 PM
I don't have a good way to test performance on J9, but the same issue was causing a crash on some versions of HotSpot and now no longer is. So I'm optimistically marking this resolved...if there are still performance issues, and you can confirm they're the same problem, reopen. Otherwise report new issues.
Charles Oliver Nutter made changes - 23/May/08 09:15 AM
Charles Oliver Nutter made changes - 04/Jul/08 09:07 AM
I confirmed the bug fix on the J9 JVM. JRuby on J9 now handily outperforms CRuby for the algorithm included in the bug. I put some more details on my blog: http://fupeg.blogspot.com/2008/07/jruby-113-performance.html |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
This is likely due to an issue in the compiler that also causes the HotSpot C1 compiler to avoid compilation. The issue is that most of our compiled exception handling allows normal execution to fall through into exception-handling blocks. This case is not ever emitted by javac, and as such almost all JITs avoid compiling it in bytecode, leaving the code to interpret.
It is unknown whether this affects the HotSpot C2, compiler, but this is a critical performance issue for 1.1.2 since there are now two different JVM versions that we know downgrade optimization for these cases.