Details
-
Type:
Bug
-
Status:
Resolved
-
Priority:
Blocker
-
Resolution: Fixed
-
Affects Version/s: JRuby 1.7.0.pre1
-
Fix Version/s: JRuby 1.7.0.pre1
-
Component/s: Miscellaneous
-
Labels:None
-
Number of attachments :
Description
I'm not sure if this was from Tom's changes or from mine, but #pack performance has degraded almost two orders of magnitude as a result.
Using Chuck Remes's benchmark from JRUBY-6221:
jruby-1.6.5 (and numbers on master were similar recently):
user system total real
fast generate: 2.028000 0.000000 2.028000 ( 2.028000)
pack: 0.228000 0.000000 0.228000 ( 0.228000)
parse: 3.094000 0.000000 3.094000 ( 3.094000)
unpack: 0.208000 0.000000 0.208000 ( 0.208000)
jruby master (now):
user system total real
fast generate: 0.000000 0.000000 0.000000 ( 0.000000)
pack: 16.308000 0.000000 16.308000 ( 16.308000)
parse: 0.000000 0.000000 0.000000 ( 0.000000)
unpack: 0.000000 0.000000 0.000000 ( 0.000000)
A sample profile (with inlining turned off, to avoid clouding the results) shows the following:
Compiled + native Method 88.1% 0 + 8539 org.jruby.util.ByteList.grow 7.8% 753 + 0 org.jruby.util.ByteList.append 0.4% 39 + 0 org.jruby.util.ByteList.<init>