Please enable JavaScript.
Coggle requires JavaScript to display documents.
MIMD (Memory (Physical
Organization (Centralized
shared memory (Large…
MIMD
Memory
Physical
Organization
Centralized
shared memory
-
-
Same memory for all processors
(1 memory, multiple banks)
-
-
-
Cache Coherence
-
Features
Sequential Consistency
Arbitrary order-preserving interleaving of memory references of sequential programs
-
shared data Migration
a data item can be moved to a local cache and be used there in a transparent way
shared data Replication
data that are simultaneously read are copied in the local cache of each reader
Cache-Coherence
Protocols
Snoopy
Protocols
-
-
-
-
Each memory block can be:
- Clean: in all caches and up-to-date
- Dirty: dirty in exactly one cache
- Uncached: not in any cache
Each cache block can be:
- Clean: block is not modified and can be read
- Dirty: cache has the only copy, it's dirty and writeable
- Invalid: block contains no valid data
-
Coherency misses
-
False sharing misses
happens when a line is invalidated because another word in the line has been written into by another processor
Directory-Based
Protocols
Directory
-
For each blocks records:
- its state (Shared, Modified, Uncached)
- which processor has a copy of it
- which processor is the owner (write)
-
message-oriented
each request generates a message sent between nodes which must be properly acknowledged
-
Cache line States:
- C-invalid: not in cache
- C-shared: resident here and possibly
in other caches. Memory up to date.
- C-modified: data only here and modified
- C-transient: data in transient state
Home directory States (dir = set of sites):
- R(dir): line shared in dir
- W(id): line only in id cache and modified there
- TR(dir): line transient waiting for ack on invalidation
- TW(id): line transient waiting for the modified owner to updata memory
-