2014
DOI: 10.1145/2663345
|View full text |Cite
|
Sign up to set email alerts
|

Revisiting the Complexity of Hardware Cache Coherence and Some Implications

Abstract: Cache coherence is an integral part of shared-memory systems but is also widely considered to be one of the most complex parts of such systems. Much prior work has addressed this complexity and the verification techniques to prove the correctness of hardware coherence. Given the new multicore era with increasing number of cores, there is a renewed debate about whether the complexity of hardware coherence has been tamed or whether it should be abandoned in favor of software coherence. This article revisits the … Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
2
1

Citation Types

0
18
0

Year Published

2015
2015
2024
2024

Publication Types

Select...
4
1
1

Relationship

1
5

Authors

Journals

citations
Cited by 23 publications
(18 citation statements)
references
References 58 publications
(86 reference statements)
0
18
0
Order By: Relevance
“…MESI+PUTX-Race*: This bug is caused by a protocol race condition and subsequent invalid transition. It is described in detail by Komuravelli et al [12], who previously discovered it via model checking with Murϕ. This bug does not manifest as a MCM bug directly, but instead is caught by Ruby as an invalid transition.…”
Section: Selected Bugsmentioning
confidence: 99%
See 3 more Smart Citations
“…MESI+PUTX-Race*: This bug is caused by a protocol race condition and subsequent invalid transition. It is described in detail by Komuravelli et al [12], who previously discovered it via model checking with Murϕ. This bug does not manifest as a MCM bug directly, but instead is caught by Ruby as an invalid transition.…”
Section: Selected Bugsmentioning
confidence: 99%
“…a proof of correctness, the model being verified against its specification is typically a component abstraction of what is present in the functional design implementation; with the coherence protocol being the main artifact being subjected to formal verification [14]. For most model checking approaches [7,9,10,12,13], the consistency properties intended to capture MCM correctness are derived properties, such as the SWMR [15] invariant; these are inadequate for protocols explicitly violating such properties (e.g. lazy self-invalidation based protocols using "tear-off" blocks [43]).…”
Section: Related Workmentioning
confidence: 99%
See 2 more Smart Citations
“…Specifically, the DeNovo project [10,21,35,36] showed that hardware coherence can be simpler and more efficient if shared-memory programs are more "disciplined;" i.e., if parallelism is explicitly requested through structured parallel constructs with memory side-effects statically or dynamically identified. DeNovo eliminates directory storage for sharer lists, writer-initiated invalidation traffic, false sharing, and protocol transient states.…”
Section: Introductionmentioning
confidence: 99%