In the interleaving model of concurrency, where events are totally ordered, linearizability is compositional: the composition of two linearizable objects is guaranteed to be linearizable. However, linearizability is not compositional when events are only partially ordered, as in the weak-memory models that describe multicore memory systems. In this paper, we present a generalisation of linearizability for concurrent objects implemented in weak-memory models. We abstract from the details of specific memory models by defining our condition using Lamport’s execution structures. We apply our condition to the C11 memory model, providing a correctness condition for C11 objects. We develop a proof method for verifying objects implemented in C11 an...
Most approaches to verifying linearizability assume a sequentially consistent memory model, which is...
Correctness of concurrent objects is defined in terms of conditions that determine allowable relatio...
Weak memory models are used to increase the performance of concurrent programs by allowing program i...
In the interleaving model of concurrency, where events are totally ordered, linearizability is compo...
Correctness conditions like linearizability and opacity describe some form of atomicity imposed on c...
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...
Linearizability is the standard correctness criterion for fine-grained, non-atomic concurrent algori...
Linearisability is the de facto standard correctness condition for concurrent objects. Classical li...
Efficient implementations of data structures such as queues, stacks or hash-tables allow for concurr...
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 ...
An execution containing operations performing queries or updating a concurrent object is linearizabl...
Linearizability of concurrent data structures is usually proved by monolithic simulation arguments r...
Linearizability is a well-established consistency and correctness criterion for concurrent data type...
Most approaches to verifying linearizability assume a sequentially consistent memory model, which is...
Correctness of concurrent objects is defined in terms of conditions that determine allowable relatio...
Weak memory models are used to increase the performance of concurrent programs by allowing program i...
In the interleaving model of concurrency, where events are totally ordered, linearizability is compo...
Correctness conditions like linearizability and opacity describe some form of atomicity imposed on c...
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...
Linearizability is the standard correctness criterion for fine-grained, non-atomic concurrent algori...
Linearisability is the de facto standard correctness condition for concurrent objects. Classical li...
Efficient implementations of data structures such as queues, stacks or hash-tables allow for concurr...
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 ...
An execution containing operations performing queries or updating a concurrent object is linearizabl...
Linearizability of concurrent data structures is usually proved by monolithic simulation arguments r...
Linearizability is a well-established consistency and correctness criterion for concurrent data type...
Most approaches to verifying linearizability assume a sequentially consistent memory model, which is...
Correctness of concurrent objects is defined in terms of conditions that determine allowable relatio...
Weak memory models are used to increase the performance of concurrent programs by allowing program i...