Performance profiling results...

ducasse stephane ducasse at iam.unibe.ch
Sun Sep 23 05:14:47 UTC 2001


Hi andreas 

thanks for the answer on LinkedMessageSet. I will look at that.

Can you explain me the following remark you made?

>> Over 99% of the invocations of the function 'fetchClassOf' are when
>> invoked from 'commonSend' in the interpreter. (approximately
>> 350 million).
> 
> Yup. I see the culprit, it's
> 
> receiverClass := lkupClass := self fetchClassOf: rcvr.
> 
> which doesn't get inlined properly. Should be rewritten as
> 
> lkupClass := self fetchClassOf: rcvr.
> receiverClass := lkupClass.
> 
> to eliminate the call.
> 
If I understand well

a := b := self send.

is more expensive than

a := self send.
b := a

Is it right?
and why the situation is like that?
Why both are not equivalent?

Stef
> 





More information about the Squeak-dev mailing list