Some performance notes

Steven Swerling sswerling at yahoo.com
Mon Feb 28 19:45:45 UTC 2005


Hi,

Today I decided to look into the relation between build settings and 
performance as measured by tinyBenchmarks.

First I just tried building a release version of wxsqueak with msvc's 
compiler optimized for speed (btw, rob, I believe your Release build 
settings do not optimize for speed).

I ran one of my wxsqueak.image on a variety of VMs, and got the 
following results:
   stock squeak.exe (squeak 3.7)
   	'218,057,921 bytecodes/sec; 6,830,576 sends/sec'
   my release SPSwxsqueakFAST.exe (compiler optimized for speed)
   	'115,732,368 bytecodes/sec; 5,726,364 sends/sec'
   debug wxsqueakd.exe
   	'54,794,520 bytecodes/sec; 2,581,531 sends/sec'
   standard wxsqueak.exe
   	'53,377,814 bytecodes/sec; 2,507,017 sends/sec'

So just flipping the "optimize" bit gets bytes/sec halfway there, and 
sends/sec almost home.

I then replaced the vm sources with the original 3.7 vm sources (from 
sourceforge), but still got 115M bytes/sec from the build. So I decided 
to build using the "build.bat" file that uses gcc, but w/out the 
WXPlugin. This build got me the full performance (218M bytecodes/sec). 
Note that this gcc build was on the same sources I with which I had just 
built with MSVC -- it just yields a faster executable.

This all suggests that perhaps getting WxPlugin to compile using the 
standard make tools might net a little performance increase. Or perhaps 
that there is some hidden compiler flags for msvc that will speed things up.

Regards, Steve S



More information about the Wxsqueak mailing list