<br><br><div class="gmail_quote">On Wed, Dec 22, 2010 at 11:38 AM, Jecel Assumpcao Jr. <span dir="ltr"><<a href="mailto:jecel@merlintec.com">jecel@merlintec.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
Dan Ingalls wrote on Tue, 21 Dec 2010 20:16:13 -0800<br>
> Awesome. For some reason this really grabbed me -- This is about the<br>
> speed we achieved on the Dorado - the fastest of Xerox's microcoded<br>
> D-machines when we were first taking Smalltalk public. That machine<br>
> could not be carried by two people, let alone one, gobbled power and<br>
> had to live in a separate room due to the fan noise.<br>
> A phone... yeah<br>
<br>
The number I have often seen associated with the Dorado is 400,000<br>
bytecodes/sec, which is 80 times slower than Jon's phone and 100 times<br>
slower than John's tuned iPhone VM. I just use 0.5Mbc/sec for the Dorado<br>
to make the math a bit simpler. Since the Dorado could execute 14<br>
million microcode instructions per second, this would mean 28 microcode<br>
instructions per bytecode which does seem rather high. But I really<br>
can't imagine it needing less than 10 microcode instructions per<br>
bytecode, which would result in a peak of 1.4Mbc/sec.<br></blockquote><div><br></div><div>While things like temp var and inst var access may be cheap sends can run very high (think of a cache miss lookup or a cache miss lookup followed by MNU processing), as can some primitives. I would think 28 microcode ops per bytecode is a believable average.</div>
<div> </div><div>best</div><div>Eliot</div><div><br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
<font color="#888888"><br>
-- Jecel<br>
<br>
<br>
</font></blockquote></div><br>