In order to improve performance or conserve energy, modern hardware implementations have adopted weak memory models; that is, models of concurrency that allow more outcomes than the classic sequentially consistent (SC) model of execution. Modern programming languages similarly provide their own language-level memory models, which strive to allow all the behaviors allowed by the various hardware-level memory models, as well as those that can occur as a result of desired compiler optimizations. As these weak memory models are often rather intricate, it can be difficult for programmers to keep track of all the possible behaviors of their programs. It is therefore very useful to have an abstraction layer over the model that can be used to en...
International audienceConcurrent programs running on weak memory models exhibit re-laxed behaviours,...
A memory model dictates which values may be returned when reading from memory. In a parallel computi...
We present an axiomatic framework, implemented in the Coq proof assistant, to define weak memory mod...
Weak memory models formalize the inconsistent behaviors that one can expect to observe in multithrea...
We present SLR, the first expressive program logic for reason- ing about concurrent programs under a...
Weak memory models formalize the unexpected behavior that one can expect to observe in multi-threade...
Writing concurrent programs with shared memory is often not trivial. Correctly synchronising the thr...
textProgram logics are formal logics designed to facilitate specification and correctness reasoning ...
We describe a program logic for weak memory (also known as relaxed memory). The logic is based on Ho...
Memory models define an interface between programs written in some language and their implementation...
When a program is compiled and run on a modern architecture, different optimizations may be applied ...
Modern processors deploy a variety of weak memory models, which for efficiency reasons may (appear t...
Developing correct and performant concurrent systems is a major challenge. When programming an appli...
Memory models of shared memory concurrent programs define the values a read of a shared memory locat...
Weak memory models are used to increase the performance of concurrent programs by allowing program i...
International audienceConcurrent programs running on weak memory models exhibit re-laxed behaviours,...
A memory model dictates which values may be returned when reading from memory. In a parallel computi...
We present an axiomatic framework, implemented in the Coq proof assistant, to define weak memory mod...
Weak memory models formalize the inconsistent behaviors that one can expect to observe in multithrea...
We present SLR, the first expressive program logic for reason- ing about concurrent programs under a...
Weak memory models formalize the unexpected behavior that one can expect to observe in multi-threade...
Writing concurrent programs with shared memory is often not trivial. Correctly synchronising the thr...
textProgram logics are formal logics designed to facilitate specification and correctness reasoning ...
We describe a program logic for weak memory (also known as relaxed memory). The logic is based on Ho...
Memory models define an interface between programs written in some language and their implementation...
When a program is compiled and run on a modern architecture, different optimizations may be applied ...
Modern processors deploy a variety of weak memory models, which for efficiency reasons may (appear t...
Developing correct and performant concurrent systems is a major challenge. When programming an appli...
Memory models of shared memory concurrent programs define the values a read of a shared memory locat...
Weak memory models are used to increase the performance of concurrent programs by allowing program i...
International audienceConcurrent programs running on weak memory models exhibit re-laxed behaviours,...
A memory model dictates which values may be returned when reading from memory. In a parallel computi...
We present an axiomatic framework, implemented in the Coq proof assistant, to define weak memory mod...