[self-interest] Performance figures interesting

Jecel Assumpcao Jr jecel at merlintec.com
Tue May 9 23:54:24 UTC 2006

Michael Latta wrote on Tue, 9 May 2006 14:08:06 -0700

> Using the tinyBenchmark microbenchmark from Squeak I find
> the following figures interesting.  I wonder how the Klein VM
> will fare?  In all cases the benchmark was run several times
> to give the VM a chance to cache the compiled version if it so chose. 
> 2.0Ghz Pentium/M w/2GB 533Mhz memory 

That means you are only using the non optimizing compiler. This makes a
huge difference.
> Squeak 
>  '327,784,891 bytecodes/sec;  9,379,747 sends/sec' 

I reformated your numbers to make them easier to read.

> VisualWorks 
>  '859,781,696 bytecodes/sec; 71,069,397 sends/sec' 

This is very impressive. Note that you would probably get similar
numbers using the Exupery compiler for Squeak.

> Gemstone/S 
>  ' 30,563,514 bytecodes/sec;  4,467,145 sends/sec' 
> PowerMac G5 2.0Ghz w/4GB 400Mhz memory 

Ah, so you are using the full compilation technology! Forget my comment
above. But it doesn't make sense to compare different language
implementations on entirely different machines.
> Self 
>  ' 25,196,850 bytecodes/sec;   879,023 sends/sec' 

Here are some numbers I had posted at

600MHz Pentium III (bogomips 1193)
  Squeak 3.2
     1,637,886 sends/sec
      54,872,936 bytecodes/sec
  Self 4.2.1
      437,065 sends/sec
      5,003,187 bytecodes/sec

277MHz Ultra 5 (UltraSparc IIi)
  Squeak 3.6
      671,079 sends/sec
      18,065,656 bytecodes/sec
  Self 4.2.1
      15,517,463 sends/sec
      93,590,129 bytecodes/sec

So while on one machine (without the optimizing compiler) Self was
significantly slower than Squeak, on another machine it was just as
significantly faster. The total difference between the two machines was
a factor of 57 for bytecodes/sec and 87 for sends/sec.

But you already knew that it isn't a good idea to take benchmarks too
seriously, right?
-- Jecel

More information about the Self-interest mailing list