Adding a new imediate type

Andreas Raab andreas.raab at gmx.de
Wed Jan 11 05:08:24 UTC 2006


Benchmark, benchmark, benchmark. Got some numbers? ;-)

Cheers,
   - Andreas

Yoshiki Ohshima wrote:
>   Hello,
> 
> 
>>  instantiateSmallClass:sizeInBytes:fill:.
>>
>>All it needs to do, is grab some memory then populate it. That's a
>>fairly short sequence, so long as a GC isn't necessary. The speed gain
>>will be from specialising the entire primitive for the case where a GC
>>isn't needed. It's more code, and more special cases, but still
>>probably easier than creating new intermediates.
> 
> 
>   This is *not* related to Point creation, but I once proposed to have
> a object creation primitive for non-pointer objects that doesn't
> zero-out the content, but just "grab" some memory.
> 
>   For methods like String>>copyReplaceFrom:to:with: and such, this can
> give 30% or so improvement.  Also, the primitive 105 seems to handle
> it properly (i.e., fails) when the content of a non-pointer object is
> copied over to a pointer object.  So, it should be "safe enough".
> 
>   The novice users shouldn't use it casually, but for people who need
> such performance gain, it would be convenient to have.
> 
> -- Yoshiki
> 
> 
> 
> 




More information about the Squeak-dev mailing list