Memory consistency models using constraints
Abstract
Memory consistency models (MCMs) are at the heart of concurrent programming. They represent the behaviour of concurrent programs at the chip level. To test these models small program snippets called litmus test are generated, which show allowed or forbidden behaviour of different MCMs. This paper is showcasing the use of constraint programming to automate the generation and testing of litmus tests for memory consistency models. We produce a few exemplary case studies for two MCMs, namely Sequential Consistency and Total Store Order. These studies demonstrate the flexibility of constrains programming in this context and lay foundation to the direct verification of MCMs against the software facing cache coherence protocols.
Citation
Akgün , Ö , Hoffmann , R & Sarkar , S 2018 , Memory consistency models using constraints . in The Seventeenth Workshop on Constraint Modelling and Reformulation (ModRef 2018), Proceedings . 24th International Conference on Principles and Practice of Constraint Programming (CP 2018) , Lille , France , 27/08/18 . conference
Publication
The Seventeenth Workshop on Constraint Modelling and Reformulation (ModRef 2018), Proceedings
Type
Conference item
Rights
Copyright the Authors 2018.
Collections
Items in the St Andrews Research Repository are protected by copyright, with all rights reserved, unless otherwise indicated.