[Q] Speed comparison 2.8 vs 3.8

Bryce Kampjes bryce at kampjes.demon.co.uk
Sat Aug 27 12:16:18 UTC 2005


Eddie Cottongim writes:
 > It would be nice if the compiler could inline stuff like array first 
 > that boils down to a single send, I have no idea how the compiler  works 
 > or if thats a sensible suggestion though. In some methods like the 
 > fallback character printing that are fixed-array access heavy, it makes 
 > around 25% difference between blah first second third etc and at:1 at:2 
 > at:3 etc.

Full method inlining is, almost, the only major feature missing from
Exupery for a 1.0 release. Compiling methods that create blocks is
the other one. Both require specialised contexts for compiled methods
so they're both really part of the same larger feature. With inlining
hopefully Exupery will be faster than VisualWorks for sends as well
as bytecodes. 

Inlining with a native compiler isn't too hard. Doing so in a simple
interpreter may be harder because there needs to be somewhere to place
the inlined code. A more sophisticated interpreter such as one of
Ian's Jitter's that has a threaded code cache could inline as easily
as a native interpreter.

Bryce



More information about the Squeak-dev mailing list