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
|