Skip to Main content Skip to Navigation
Conference papers

Fencing Programs with Self-Invalidation and Self-Downgrade

Abstract : Cache coherence protocols using self-invalidation and self-downgrade have recently seen increased popularity due to their simplicity, potential performance efficiency, and low energy consumption. However, such protocols result in memory instruction reordering, thus causing extra program behaviors that are often not intended by the programmer. We propose a novel formal model that captures the semantics of programs running under such protocols, and employs a set of fences that interact with the coherence layer. Using the model, we perfform a reachability analysis that can check whether a program satisfies a given safety property with the current set of fences. Based on an algorithm in [19], we describe a method for insertion of optimal sets of fences that ensure correctness of the program under such protocols. The method relies on a counter-example guided fence insertion procedure. One feature of our method is that it can handle a variety of fences (with different costs). This diversity makes optimization more difficult since one has to optimize the total cost of the inserted fences, rather than just their number. To demonstrate the strength of our approach, we have implemented a prototype and run it on a wide range of examples and benchmarks. We have also, using simulation, evaluated the performance of the resulting fenced programs.
Complete list of metadata

Cited literature [33 references]  Display  Hide  Download

https://hal.inria.fr/hal-01432925
Contributor : Hal Ifip <>
Submitted on : Thursday, January 12, 2017 - 11:34:41 AM
Last modification on : Thursday, January 12, 2017 - 11:38:42 AM
Long-term archiving on: : Friday, April 14, 2017 - 4:22:44 PM

File

426757_1_En_2_Chapter.pdf
Files produced by the author(s)

Licence


Distributed under a Creative Commons Attribution 4.0 International License

Identifiers

Citation

Parosh Abdulla, Mohamed Atig, Stefanos Kaxiras, Carl Leonardsson, Alberto Ros, et al.. Fencing Programs with Self-Invalidation and Self-Downgrade. 36th International Conference on Formal Techniques for Distributed Objects, Components, and Systems (FORTE), Jun 2016, Heraklion, Greece. pp.19-35, ⟨10.1007/978-3-319-39570-8_2⟩. ⟨hal-01432925⟩

Share

Metrics

Record views

396

Files downloads

276