> The result of sqvm surprised me, I expected it to be much faster. Is
> this result reasonable? Did I do something wrong when compiling and
> running sqvm?

  Ian will give you a better answer, but here is my answer:

  If you look at the generated C code from the idc compiler, it is
almost just bunch of message sendings.  Because every step is a
message, what the generated code does is repetition of look-ups and
sends.  This is not too different from what Squeak VM does, and the
rough performance of IdSt is in the same ballpark of Squeak.

  And, if you look at the implementation of sqvm, it is actually a
bytecode interpreter written in IdSt; stack manipulation or all of
these are run at that speed, so, roughly speaking, the performance is
not too different from writing a simulator in Squeak.

  At one level, you could imagine to take a method body in Squeak and
compile it in the same manner.  That would bring it to the ball park
of Squeak, at least.  You could put better method caching at call
sites (possibly different ones based on some analysis), it would make
it faster than Squeak.

-- Yoshiki

_______________________________________________
fonc mailing list
[email protected]
http://vpri.org/mailman/listinfo/fonc

Reply via email to