Authors
Susmit Sarkar, Peter Sewell, Francesco Zappa Nardelli, Scott Owens, Tom Ridge, Thomas Braibant, Magnus O Myreen, Jade Alglave
Publication date
2009/1/21
Conference
ACM SIGPLAN Notices
Volume
44
Issue
1
Pages
379-391
Publisher
ACM
Description
Multiprocessors are now dominant, but real multiprocessors do not provide the sequentially consistent memory that is assumed by most work on semantics and verification. Instead, they have subtle relaxed (or weak) memory models, usually described only in ambiguous prose, leading to widespread confusion.
We develop a rigorous and accurate semantics for x86 multiprocessor programs, from instruction decoding to relaxed memory model, mechanised in HOL. We test the semantics against actual processors and the vendor litmus-test examples, and give an equivalent abstract-machine characterisation of our axiomatic memory model. For programs that are (in some precise sense) data-race free, we prove in HOL that their behaviour is sequentially consistent. We also contrast the x86 model with some aspects of Power and ARM behaviour.
This provides a solid intuition for low-level programming, and a sound …
Total citations
2008200920102011201220132014201520162017201820192020202120222023202421829171419111211168108135124
Scholar articles
S Sarkar, P Sewell, FZ Nardelli, S Owens, T Ridge… - ACM SIGPLAN Notices, 2009