On Thu, Dec 1, 2011 at 2:23 AM, Charles Oliver Nutter <head...@headius.com> wrote: > I am still seeing rebinding in profiles of some of the remaining slow > benchmarks, so I'm missing something.
Bleah, I seem to have found the problem. If I disable the use of SwitchPoint for class-mutation-originated call site invalidation, performance matches or exceeds the non-indy numbers pretty much across the board: Parsing small document for 5 seconds ... 5179 calls (1035.80/s) Adding new elemnt for 5 seconds ... 582401 calls (116480.40/s) Document creation for 5 seconds ... 123492 calls (24698.40/s) Writing tree for 5 seconds ... 8953 calls (1790.60/s) By-hand search for 5 seconds ... 428487 calls (85697.40/s) XPath search for 5 seconds ... 1470 calls (294.00/s) Parse large document for 5 seconds ... 395 calls (79.00/s) Stream parsing for 5 seconds ... 633 calls (126.60/s) Pull parsing for 5 seconds ... 660 calls (132.00/s) SAX2 parsing for 5 seconds ... 222 calls (44.40/s) Lightweight parsing for 5 seconds ... 843 calls (168.60/s) This is a pretty disappointing finding. I'm not yet sure whether it's a bug in SwitchPoint optimization or in JRuby's use of SwitchPoint, but I'd like to see your numbers with and without this flag. - Charlie _______________________________________________ mlvm-dev mailing list mlvm-dev@openjdk.java.net http://mail.openjdk.java.net/mailman/listinfo/mlvm-dev