Snoopy cache


In computing a snoopy cache is a type of memory cache that performs bus sniffing. The technique was introduced by Ravishankar and Goodman in 1983.
Such caches are used in systems where many processors or computers share the same memory and each has its own cache. In such systems processor 'A' may read a value from memory, then processor 'B' does the same. If either of the processors now change the value by writing back to memory they will invalidate the other processor's cached value.
In order to prevent this and maintain cache coherence, snoopy caches monitor the memory bus to detect any writes to values that they are holding, including changes coming from other processors or distributed computers.
However, this approach can only work in computer architectures like SGI Challenge and SGI Onyx where a single memory bus is shared between all processors.