Most approaches to verifying linearizability assume a sequentially consistent memory model, which is not always realised in practice. In this paper we study correctness on a weak memory model: the TSO (Total Store Order) memory model, which is implemented in x86 multicore architectures. Our central result is a proof method that simplifies proofs of linearizability on TSO. This is necessary since the use of local buffers in TSO adds considerably to the verification overhead on top of the already subtle linearizability proofs. The proof method involves constructing a coarse-grained abstraction as an intermediate layer between an abstract description and the concurrent algorithm. This allows the linearizability proof to be split into two small...
Correctness of concurrent objects is defined in terms of conditions that determine allowable relatio...
For efficiency reasons, most modern processor architectures allow the reordering of CPU instructions...
Model-checking tools classicaly verify concurrent programs under the traditional Sequential Consiste...
Linearizability is the standard correctness criterion for fine-grained, non-atomic concurrent algori...
Abstract. Linearizability is a commonly accepted notion of correctness for li-braries of concurrent ...
Abstract. Linearizability is a commonly accepted notion of correctness for li-braries of concurrent ...
Most work on the verification of concurrent objects for shared memory assumes sequential consistency...
In this paper we present a framework for defining linearizability on weak memory models. The purpose...
Hardware weak memory models, such as TSO and ARM, are used to increase the performance of concurrent...
Abstract. Modern programming languages, such as C++ and Java, provide a se-quentially consistent (SC...
TSO (Total Store Order) is the memory consistency model implemented by the x86 and x64 architectures...
The Total Store Order memory model is widely implemented by modern multicore architectures such as x...
Transactional memory (TM) is a mechanism that manages thread synchronisation on behalf of a programm...
Weak memory models are used to increase the performance of concurrent programs by allowing program i...
Correctness of concurrent objects is defined in terms of conditions that determine allowable relatio...
Correctness of concurrent objects is defined in terms of conditions that determine allowable relatio...
For efficiency reasons, most modern processor architectures allow the reordering of CPU instructions...
Model-checking tools classicaly verify concurrent programs under the traditional Sequential Consiste...
Linearizability is the standard correctness criterion for fine-grained, non-atomic concurrent algori...
Abstract. Linearizability is a commonly accepted notion of correctness for li-braries of concurrent ...
Abstract. Linearizability is a commonly accepted notion of correctness for li-braries of concurrent ...
Most work on the verification of concurrent objects for shared memory assumes sequential consistency...
In this paper we present a framework for defining linearizability on weak memory models. The purpose...
Hardware weak memory models, such as TSO and ARM, are used to increase the performance of concurrent...
Abstract. Modern programming languages, such as C++ and Java, provide a se-quentially consistent (SC...
TSO (Total Store Order) is the memory consistency model implemented by the x86 and x64 architectures...
The Total Store Order memory model is widely implemented by modern multicore architectures such as x...
Transactional memory (TM) is a mechanism that manages thread synchronisation on behalf of a programm...
Weak memory models are used to increase the performance of concurrent programs by allowing program i...
Correctness of concurrent objects is defined in terms of conditions that determine allowable relatio...
Correctness of concurrent objects is defined in terms of conditions that determine allowable relatio...
For efficiency reasons, most modern processor architectures allow the reordering of CPU instructions...
Model-checking tools classicaly verify concurrent programs under the traditional Sequential Consiste...