Hi Eliot!
On 09/01/2014 03:39 PM, Eliot Miranda wrote:
Hi Göran,
On Sep 1, 2014, at 6:06 AM, Göran Krampe goran@krampe.se wrote:
Hi guys!
While on the subject of tinyBenchmarks (toying with comparing to LuaJIT2), can someone explain a few things to me:
- Why do we take "500000 / <the-time-to-run-benchmark>" to mean
bytecodes/sec? I presume its because someone made a count at some point that it takes 500000 bytecodes to find those primes? Is that still a correct estimation/presumption?
That's right. It's probably still close. One can count the actual number by simulating the expression using (IIRC) run:atEachStep: which is in the class side of ContextPart.
Ah, good. So I am not entirely stupid. :)
- Why is benchFib not a correct Fibonacci sequence?
BTW Fibonacci sequences have been generalized. See Lucas Numbers on Wikipedia. Ffor example the classic one is close to 2^N, but one which added the previous three results would be close to 3^N, etc ("tribonacci").
But the point of benchFib is that it adds one for each and every invocation whereas the classic one adds one for each leaf activation. Hence benchFib's result is the number if activations required to evaluate it and hence dividing the result by the time in seconds taken to compute it gives a rough measure of activations per second. This really should be in the comment.
Ah, great! Thank you, I knew it must be something "smart" :)
regards, Göran