Armed cats: Formal concurrency modelling at arm
J Alglave, W Deacon, R Grisenthwaite… - ACM Transactions on …, 2021 - dl.acm.org
We report on the process for formal concurrency modelling at Arm. An initial formal
consistency model of the Arm achitecture, written in the cat language, was published and …
consistency model of the Arm achitecture, written in the cat language, was published and …
GenMC: A Model Checker for Weak Memory Models
M Kokologiannakis, V Vafeiadis - International Conference on Computer …, 2021 - Springer
GenMC is an LLVM-based state-of-the-art stateless model checker for concurrent C/C++
programs. Its modular infrastructure allows it to support complex memory models, such as …
programs. Its modular infrastructure allows it to support complex memory models, such as …
The leaky semicolon: compositional semantic dependencies for relaxed-memory concurrency
Program logics and semantics tell a pleasant story about sequential composition: when
executing (S1; S2), we first execute S1 then S2. To improve performance, however …
executing (S1; S2), we first execute S1 then S2. To improve performance, however …
Making weak memory models fair
O Lahav, E Namakonov, J Oberhauser… - Proceedings of the …, 2021 - dl.acm.org
Liveness properties, such as termination, of even the simplest shared-memory concurrent
programs under sequential consistency typically require some fairness assumptions about …
programs under sequential consistency typically require some fairness assumptions about …
Unifying operational weak memory verification: an axiomatic approach
In this article, we propose an approach to program verification using an abstract
characterisation of weak memory models. Our approach is based on a hierarchical axiom …
characterisation of weak memory models. Our approach is based on a hierarchical axiom …
Owicki-Gries reasoning for C11 programs with relaxed dependencies
Deductive verification techniques for C11 programs have advanced significantly in recent
years with the development of operational semantics and associated logics for increasingly …
years with the development of operational semantics and associated logics for increasingly …
Putting Weak Memory in Order via a Promising Intermediate Representation
We investigate the problem of developing an" in-order" shared-memory concurrency model
for languages like C and C++, which executes instructions following their program order …
for languages like C and C++, which executes instructions following their program order …
A Denotational Approach to Release/Acquire Concurrency
We present a compositional denotational semantics for a functional language with first-class
parallel composition and shared-memory operations whose operational semantics follows …
parallel composition and shared-memory operations whose operational semantics follows …
Modular data-race-freedom guarantees in the promising semantics
Local data-race-freedom guarantees, ensuring strong semantics for locations accessed by
non-racy instructions, provide a fruitful methodology for modular reasoning in relaxed …
non-racy instructions, provide a fruitful methodology for modular reasoning in relaxed …
Sequential reasoning for optimizing compilers under weak memory concurrency
We formally show that sequential reasoning is adequate and sufficient for establishing
soundness of various compiler optimizations under weakly consistent shared-memory …
soundness of various compiler optimizations under weakly consistent shared-memory …