On the effect of branch mispredictions in the Squeak VM

Andreas Raab andreas.raab at gmx.de
Mon Jul 7 22:35:18 UTC 2003


Hi John,

> Well given the codewarrior nongnuified 3.5.2b1 results
> (450000000 / 10.261) truncated asStringWithCommas  ''
> => 43,855,374 bytecodes/sec
> (450000000 / 10.198) truncated asStringWithCommas
> => 44,126,299 bytecodes/sec
> 
> tinybenchmarks for this vm running under os-x classic mode is
> 
> '43835616 bytecodes/sec; 1555214 sends/sec'

Yes, that's what I expected. It's good to see the match as it validates that
what we're measuring in tinyBenchmarks is in fact a realistic measure of
average bytecode performance. I wasn't entirely sure about this given the
wide spread I obtained in my own measures.

> tinybenchmarks for this vm running under os-x classic mode is
> 
> '43835616 bytecodes/sec; 1555214 sends/sec'
> 
> The gnuified gcc 3.3 os-x carbon version is of course way better
> 
> '50793650 bytecodes/sec; 1860771 sends/sec'

Now that's interesting to see! It all looks as if the PPC is really *much*
less affected by branch prediction issues. BTW, the numbers you sent around
in the first message only said "using mac vm 3.5.2b1 (500Mhz G3) - were
these taken from a gnuified VM? If not, could you run the two benchmarks to
see if they have any effect?

Thanks,
  - Andreas



More information about the Squeak-dev mailing list