Previous | Next --- Slide 34 of 63
Back to Lecture Thumbnails
kasia4

Just a comment on cache coherency. Two common protocols are the snooping based protocol and directory-based protocol. In a snooping protocol, all processors "snoop" on a bus. So if Processor 1 reads a value, it will locally store that it value A is being Shared (or exclusive depending on whether or not you are using MSI or MESI). If processor 2 (P2) also reads value A, then P2 will also keep a "shared" status for value A. If P3 requests to write to value A, the P3 will hold a Modified status of value A, and P1 and P2 will both change their status to Invalid. This is the protocol for all processors that are all snooping on the bus. This is not ultimately scalable when you go up to higher orders of number of processors. That is when you would switch to a directory-based protocol, which does a similar process, except the shared status of a variable is held in one processor directory. The variable and status are shared by point to point contact. Without going into depth with this one, you can learn more about the two protocols with these YouTube videos here: Snooping Based Protocol Directory-based coherence

Please log in to leave a comment.