[Enh][VM] primitiveApplyToFromTo for the heart of theenumeration of collections?

Bryce Kampjes bryce at kampjes.demon.co.uk
Sun Sep 17 22:43:42 UTC 2006


Klaus D. Witzel writes:
 > JJ, with "code in commonSend and commonReturn" the code which I added is  
 > meant (est. slow down was calculated 1% to 15%), not the unchanged code  
 > (slowdown 0%).

Be careful about relying on any single measure of performance these
days. I've removed pointless jumps and seen the code slow down. This
was with Exupery so I know that it wasn't compiler monkey business
that I was unaware of.

So don't fully trust either static analysis or any benchmark. There's
a few percentage points of statistical noise. Change something and
there will be a random effect on performance caused by CPU level
optimisations.

Several early RISCs made the mistake of assuming that the SPEC
benchmarks were big enough to rely on. That's one reason why they left
out byte accessing instructions. For SPEC, they were not worth the
cost but they are required for business apps. Hennessy and Patterson's
Computer Architecture, A Quantitative Approach is a good introduction
to thinking about optimisations. David Ungar's The Design and
Evaluation of a High Performance Smalltalk System is another.

Bryce



More information about the Squeak-dev mailing list