Abdulla, Parosh Aziz and Atig, Mohamed Faouzi and Kaxiras, Stefanos and Leonardsson, Carl and Ros, Albertoet al. - Mending Fences with Self-Invalidation and Self-Downgrade

lmcs:4211 - Logical Methods in Computer Science, January 16, 2018, Volume 14, Issue 1
Mending Fences with Self-Invalidation and Self-Downgrade

Authors: Abdulla, Parosh Aziz and Atig, Mohamed Faouzi and Kaxiras, Stefanos and Leonardsson, Carl and Ros, Alberto and Zhu, Yunyun

Cache coherence protocols based on 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 programmers. We propose a novel formal model that captures the semantics of programs running under such protocols, and features a set of fences that interact with the coherence layer. Using the model, we design an algorithm to analyze the reachability and check whether a program satisfies a given safety property with the current set of fences. 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.


Source : oai:arXiv.org:1611.07372
DOI : 10.23638/LMCS-14(1:6)2018
Volume: Volume 14, Issue 1
Published on: January 16, 2018
Submitted on: November 23, 2016
Keywords: Computer Science - Logic in Computer Science,D.2.4,F.3.1


Share

Consultation statistics

This page has been seen 195 times.
This article's PDF has been downloaded 86 times.