[squeak-dev] Cog VM Performance

David T. Lewis lewis at mail.msen.com
Fri Sep 27 12:04:45 UTC 2013


It seems likely that the difference will be something in the image (4.4 versus
3.8) as opposed to something in the VM (Cog versus interpreter). You should
be able to confirm this by running the tests with an newer interpreter VM
from http://squeakvm.org/win32/. You can use that VM to run both the 3.8 and
the 4.4 image.

Assuming that the difference is related to the image, and if 4.4 with Cog
is five times slower than 3.8 in your tests, then I would expect that 4.4
with the interpreter should be about ten times (!) slower than 3.8 with
the interpreter.

If that is the case, then it should be easy to find the difference using
a profiler. Andreas' high performance profiler is currently available only
for Cog, so you are limited to using use the normal profiler when running
with interpreter VM. But if you can confirm that the issue is in the image,
then you can use Cog with Andreas profiler to do the detailed profiling.

Dave


On Fri, Sep 27, 2013 at 12:26:32PM +0200, Herbert K?nig wrote:
> Hi Folks,
> 
> I'm doing some simulation in Squeak 3.8 and as some tests ran over two 
> minutes I decided to try a more recent image with cog vm.
> 
> To my surprise 4.4 took around 5 times as long as 3.8. I believe I do 
> nothing out of the ordinary here. Time is spent in:
> 24% SmallInteger>>negative; 22% SmallInteger>>bitShift: (I don't use 
> bitShift: explicitly) and 20% Array>> collect:
> 
> Which image and VM should I use to verify this before sending the 
> complete message tallies?
> 
> Cheers
> 
> Herbert
> 
> I used the following recent image / vm:
> Image
> -----
> C:\daten\Squeak\4_4Dev\Squeak4.4-DCSE.image
> Squeak4.4
> latest update: #12333
> Current Change Set: Knacken mit APX
> Image format 6505 (32 bit)
> 
> Virtual Machine
> ---------------
> C:\daten\Squeak\4_4Dev\Squeak.exe
> Croquet Closure Cog VM [CoInterpreter VMMaker.oscog-eem.302]
> Win32 built on Jul 15 2013 15:35:13 Compiler: 3.4.4 (cygming special, 
> gdc 0.12, using dmd 0.125)
> platform sources revision VM: r2749 
> http://www.squeakvm.org/svn/squeak/branches/Cog Plugins: r2545 
> http://squeakvm.org/svn/squeak/trunk/platforms/Cross/plugins
> CoInterpreter VMMaker.oscog-eem.302 uuid: 
> 2ac39432-ac54-4584-964e-b129c90792f4 Jul 15 2013
> StackToRegisterMappingCogit VMMaker.oscog-eem.302 uuid: 
> 2ac39432-ac54-4584-964e-b129c90792f4 Jul 15 2013


More information about the Squeak-dev mailing list