Speed of writes to cache and memory.
ewporter at attbi.com
Thu Feb 27 12:10:45 PST 2003
Some newbee questions.
I am interested in trying to get a rough estimate of the speed at which CPUs
can perform successive write operations.
How fast can the average processor write to local main memory, both in
bursts to successive addresses and to random addresses?.
I know that in many systems to read a cache line from main memory take
between 1/10 to 1/20th of a micro seconds. This is because the CPU has to
issue the read, find if the desired memory is in its various levels of
cache, if not, send an address out on the memory bus, wait for the roughly
30 ns RAM read delay, and then burst back 8 or so words into cache, at the
If a CPU tries to write to local memory presumably it would be much quicker,
because the CPU does not have to wait for any response. That being the
case, how fast can a CPU write cache lines to different locations in main
Another question: how do most CPUs interact with cache on write operations?
Presumably a write to cache take about the same number of cycles as a read
from the same level cache. Is this true?
My understanding is that in many CPUs one can select either (1) to make all
memory writes to cache also written through to main memor, or (2) to have
writes made to main memory only when a cache line is replaced in cache and
thus swapped out to main memory. Is this true?. If so, what are the
typical delays associated with each type of write?
Is it possible to select which of these two types of writes to use on a per
If one is using method (1) can one cause the main memory image of a cache
line to be update under program control?
Also, are there any systems where one can indicate to the CPU that certain
information is to be kept in cache and other should not, or is all caching
controlled only by which of various cache lines have been most recently
I would appreciate any enlightenment on these subjects.
More information about the Beowulf