Snoopy cache

From Wikipedia, the free encyclopedia
  (Redirected from Snoopy Cache)
Jump to: navigation, search

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.[1]

Such caches are used in systems where many processors or computers share the same memory and each have their 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 ('snoop on') 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.


  1. ^ Ravishankar, Chinya; Goodman, James (February 28, 1983). "Cache Implementation for Multiple Microprocessors" (PDF). Proceedings of IEEE COMPCON: 346–350.