[squeak-dev] squeak profiling

Riccardo Lucchese riccardo.lucchese at gmail.com
Sat Apr 19 14:22:24 UTC 2008


>  Since the switch-case statement in C is compiled into a jump table
> (http://en.wikipedia.org/wiki/Jump_table) the order of the branches
> shouldn't affect the speed of execution (you can even start with the default
> branch).

Really many thanks for the pointer!, didn't know this one!


> > The process was automated with a python script and that needed a little
> bit
> > of code cleaning; after some testing I couldn't trigger any sort of
> > bug in the new code.
> >
> >
>
>  AFAIK the interp.c is generated with VMMaker, so for a new vm, you have to
> run your script again. A pure Squeak solution might be better.
I don't understand what you mean. I just patched the c file and
rebuild squeak (interp.c doesn't get generated
at every build.)

>  Are you sure that the performance gain came from these changes? If so, then
> the only reason for the speedup i can think of is that the most common
> bytecodes' code are scattered across memory pages and there are more page
> faults with the switch-case implementation. I wonder if you could check how
> many page faults does the two implementations have.

Is there some automated test that I can run to verify  just the vm troughput ?
A cachegrind on that test would give more interesting result.

Thanks,
Riccardo



More information about the Squeak-dev mailing list