DocumentCode
549516
Title
Litmus tests for comparing memory consistency models: How long do they need to be?
Author
Mador-Haim, Sela ; Alur, Rajeev ; Martin, Milo M K
Author_Institution
Univ. of Pennsylvania, Philadelphia, PA, USA
fYear
2011
fDate
5-9 June 2011
Firstpage
504
Lastpage
509
Abstract
Memory consistency litmus tests are small parallel programs that are designed to illustrate subtle differences between memory consistency models by exhibiting different outcomes for different models. In this paper, we show that for a class of memory models that is restricted yet expressive enough to include all store-atomic hardware memory models, litmus tests of a bounded size are sufficient for illustrating differences between memory consistency models in this class. We establish a bound of two threads and no more than six memory access instructions for differentiating litmus tests in this class of models. Thus, we can prove equivalence of two specification of memory consistency models in this class by exploring a bounded number of litmus tests. We build a tool for comparing memory models based on this result, and we use the tool to explore and map the space of this class of models.
Keywords
parallel programming; storage management; litmus tests; memory consistency models; parallel programs; store-atomic hardware memory models; Data models; Hardware; Instruction sets; Memory management; Registers; Space exploration; Concurrency; Litmus Tests; Memory Consistency Models;
fLanguage
English
Publisher
ieee
Conference_Titel
Design Automation Conference (DAC), 2011 48th ACM/EDAC/IEEE
Conference_Location
New York, NY
ISSN
0738-100x
Print_ISBN
978-1-4503-0636-2
Type
conf
Filename
5981851
Link To Document