[MacRuby] #1292: slows down method dispatch at "git commit 68ac3fcaf1041ef9b25fb3bc940a47f41505b7e5"
MacRuby
ruby-noreply at macosforge.org
Fri May 20 08:34:27 PDT 2011
#1292: slows down method dispatch at "git commit
68ac3fcaf1041ef9b25fb3bc940a47f41505b7e5"
------------------------------+---------------------------------------------
Reporter: kouji@… | Owner: lsansonetti@…
Type: defect | Status: new
Priority: major | Milestone: MacRuby 0.11
Component: MacRuby | Keywords:
------------------------------+---------------------------------------------
From Laurent:
i also see that the VM outer variable is set during dispatch, with
retain/release this is not good, because it slows down method dispatch
significantly.
{{{
$ time
/System/Library/PrivateFrameworks/MacRuby.framework/Versions/Current/usr/bin/macruby
-e "def foo;42;end; i=0; while i<1000000; foo; foo; foo; foo; foo; i+=1;
end"
real 0m0.355s
user 0m0.339s
sys 0m0.011s
$ time ./miniruby -e "def foo;42;end; i=0; while i<1000000; foo; foo; foo;
foo; foo; i+=1; end"push_outer:3165:push_outer outer_stack(NSObject)
real 0m1.155s
user 0m1.095s
sys 0m0.017s
}}}
the first is an "old" version of macruby (before the recent const
lookup changes)
we cannot keep that, so we need to find out a better way, i'm afraid
--
Ticket URL: <http://www.macruby.org/trac/ticket/1292>
MacRuby <http://macruby.org/>
More information about the macruby-tickets
mailing list