[Vm-dev] A gprof listing of memory access functions in the interpreter

David T. Lewis lewis at mail.msen.com
Sun Jul 20 21:49:28 UTC 2008

I don't know if this is of any general interest, but attached is a
gprof output listing of a Squeak VM with the memory access routines
from sqMemoryAccess.h recoded in Slang.

I now have the Slang inlining working so that it can fully inline all
of these methods. With the Slang inlining activiated, performance is
essentially identical to that of the normal macros in sqMemoryAccess.h.
By turning the Slang inlining off, the functions are all called
individually, which is what I used to generated the attached profile.

The host is 64-bit Linux AMD. The profile was run by opening a largish
image, running "0 tinyBenchmarks" a half dozen times, and exiting the
image without saving.

So far, the advantages of putting the memory access routines into
the image as Slang seem to be:
- You can step into the methods in a debugger
- The methods can be profiled
- Exposes type declaration problems previously hidden by the macros

Is anyone interested in this?


-------------- next part --------------
A non-text attachment was scrubbed...
Name: gprof.out.gz
Type: application/octet-stream
Size: 37073 bytes
Desc: not available
Url : http://lists.squeakfoundation.org/pipermail/vm-dev/attachments/20080720/1c0905cd/gprof.out-0003.obj

More information about the Vm-dev mailing list