Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
Cache coherence
(section)
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
{{Short description|Equivalence of all cached copies of a memory location}} [[File:Cache coherence.svg|thumb|upright=1.7|If two clients have a cached copy of a particular memory block and one client changes the block, the other client's copy must be invalidated or updated. If it is not, the system is in an incoherent state: it contains two different records of the same memory block which both claim to be up-to-date.]] [[File:Non Coherent.gif|thumb|Incoherent caches: The caches have different values of a single address location.]] In [[computer architecture]], '''cache coherence''' is the uniformity of shared resource data that is stored in multiple [[Cache (computing)|local caches]]. In a cache coherent system, if multiple clients have a cached copy of the same region of a shared memory resource, all copies are the same. Without cache coherence, a change made to the region by one client may not be seen by others, and errors can result when the data used by different clients is mismatched.<ref name="advances_in_computers">{{Cite book |last=Marowka |first=Ami |url=https://linkinghub.elsevier.com/retrieve/pii/S0065245810790021 |title=Advances in Computers |chapter=Chapter 2 - Pitfalls and Issues of Manycore Programming |date=2010-01-01 |publisher=Elsevier |volume=79 |pages=71β117 |doi=10.1016/s0065-2458(10)79002-1|isbn=978-0-12-381027-4 }}</ref> A [[Cache coherency protocols (examples)|cache coherence protocol]] is used to maintain cache coherency. The two main types are [[Bus snooping|snooping]] and [[Directory-based cache coherence|directory-based]] protocols. Cache coherence is of particular relevance in [[multiprocessing]] systems, where each [[Central processing unit|CPU]] may have its own local cache of a shared memory resource. [[File:Coherent.gif|thumb|Coherent caches: The value in all the caches' copies is the same.]]
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)