back to memcpy eh?
Tim Olson
tim at jump.net
Fri Dec 14 14:52:47 UTC 2001
>
>> Right now we use just some very basic SLANG which produces rather
>"Nonpolluting" means that data is moved and not cached. If you copy
>a 1-MB buffer, the cache is untouched. I assume that late model
>Intel and PPC processors provide similar instruction. If you are
>dynamically linked to libc, you get the platform specific library.
The PowerPC architecture has the Data Cache Block Zero (DCBZ)
instruction, which can be used to good effect in mem* routines. It is
used to allocate and zero a destination cache block in the L1 cache
without having to initially fetch its old contents from memory, which
cuts memory traffic by 33%.
PowerPC processors with the Altivec extension provide "transient" loads,
where the cache block is marked "most-recently-used" instead of
"least-recently-used", to help avoid the cache pollution problem on large
transfers.
-- tim
More information about the Squeak-dev
mailing list
|