[MacRuby-devel] [NEW FILE] add string performance tests
Jordan Breeding
jordan.breeding at me.com
Wed May 26 21:09:21 PDT 2010
Right now MacRuby is really quite slow for string operations, I noticed it a while back when doing large amounts of string creation, characters swapping, and pushing/popping strings into/out of a priority queue.
The attached file is a string performance test and here is a run on my 15" Core i7 MBP with ruby 1.9.1, jruby, and MacRuby:
Name ruby 1.9.1p378 MacRuby version jruby 1.5.0.RC1
--------------------------------------------------------------------------------
array:<< 0.751082 1.168693 1.290000
array:new 0.394997 1.917601 0.277000
array:[] 0.324454 0.755054 0.472000
array:[]= 1.691840 0.765225 0.822000
hash:new 1.501595 4.563549 0.444000
hash:[] 0.612701 1.051502 0.589000
hash:[]= 2.012367 1.135856 0.902000
ivar:get 0.215424 0.344873 1.087000
ivar:set 1.349466 0.243909 1.902000
ivar:attr_writer 1.245894 4.587488 0.655000
ivar:attr_reader 1.045779 2.755303 0.482000
loop:upto 1.211598 5.215169 0.874000
loop:times 1.210781 5.215054 0.876000
loop:while 0.599330 0.157019 0.937000
loop:for 1.442154 0.811875 1.132000
method:args 0.728248 0.682097 1.434000
method:noarg 0.822463 0.578383 0.837000
method:splat 0.478610 1.805760 0.227000
method:empty 0.807405 0.527851 1.062000
method:opt 1.027146 2.579715 0.944000
misc:ao_bench 7.838053 8.529954 3.248000
misc:sudoku 1.740196 2.172581 2.461000
misc:tak 1.277399 0.155534 1.563000
misc:mandelbrot 2.956319 0.124588 0.854000
misc:fib 3.827194 0.574900 4.935000
misc:ack 1.049100 0.116299 1.217000
proc:call+splat 0.318346 1.119665 0.191000
proc:call+args 2.477112 1.100848 2.995000
proc:call+noarg 2.496278 1.071953 3.507000
string:store swap 0.153784 0.479202 0.033000
string:<< 0.481788 143.615735 0.099000
string:new 0.276954 1.574715 0.207000
string:[] 0.428182 1.899233 0.072000
string:tuple swap 0.181318 0.721778 0.045000
yield:noarg 0.783281 0.720254 1.269000
yield:splat 0.159219 0.965713 0.094000
yield:less_arity 0.192418 0.843867 0.345000
yield:same_arity 0.937823 0.763344 1.547000
yield:more_arity 0.192516 0.848179 0.421000
Jordan
-------------- next part --------------
A non-text attachment was scrubbed...
Name: perf_string.rb
Type: text/x-ruby-script
Size: 963 bytes
Desc: not available
URL: <http://lists.macosforge.org/pipermail/macruby-devel/attachments/20100526/ebbeaed4/attachment.bin>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/pkcs7-signature
Size: 3842 bytes
Desc: not available
URL: <http://lists.macosforge.org/pipermail/macruby-devel/attachments/20100526/ebbeaed4/attachment-0001.bin>
More information about the MacRuby-devel
mailing list