Author: James Robertson
Date: 07:51:26 10/26/98
Go up one level in this thread
On October 25, 1998 at 12:09:18, Ernst A. Heinz wrote: >On October 25, 1998 at 11:37:46, James Robertson wrote: >> >> [...] >> >>I still have problems understanding. Suppose you have, starting at address 0, >>four 8-bit values. If you access the first, then the whole "clump" of 32 bytes >>are loaded into the L2 cache. Ok, that makes sense. >> >>Suppose you access the second byte in chunk 0. Does the computer load chunk 0 >>(bytes 0-3) into memory? or does it load bytes 1-4 into memory? Thanks for the >>help! > >Dear James, > >Instead of diving into the intricate details of specific cache implementations >(e.g. associativity, consistency, inclusion hierarchy, I/O strategy, latency, >line width, pipelining, prefetching, replacement strategy, size etc.) it is much >better IMO to think of them in more general terms. The appropriate abstractions >relating to cache behaviour are *spatial* and *temporal locality*. > > - Temporal locality means that caches (just like registers) reward the reuse > of data within some close time frame (e.g. same basic block of code). > > - Spatial locality means that caches reward accesses to spatially co-located > data within some close time frame (e.g. reading the elements of a vector > one after another). > >In addition to the above, it is generally so that accesses in *ascending* order >to spatially co-located data are faster than equivalent accesses in descending >order (due to the nature of pipelining and prefetching). > >By keeping these *general* considerations in mind, you can write portable code >that runs very efficiently on many different platforms. > >=Ernst= Dear Ernst, Ok, thanks for explaining that. I have often seen terms like "temporal" and "spatial" in my C++ help files and had to skip them because I didn't have time to figure out what they meant...... This clears up one set of terms! James
This page took 0 seconds to execute
Last modified: Thu, 15 Apr 21 08:11:13 -0700
Current Computer Chess Club Forums at Talkchess. This site by Sean Mintz.