It has been observed in previous work that it is desirable to avoid causal violations in any execution or transformation of a parallel program. In this paper, we formalize the notion of causality in memory consistency models and code transformations. For memory models, we introduce a framework of causality graph that can be used to analyze if a particular memory model violates causality. We show that a popular memory model as the Java memory model (JMM) [16], can lead to program executions that exhibit causality violations with respect to our definition of causality. The same analysis appears to also apply to a recent proposal of C++ specification [7] where the underline memory model may also lead to similar problems. For code transformatio...
A runtime analysis technique is presented, which can predict concurrency errors in multithreaded sys...
Synchronous systems can immediately react to the inputs of their environment which may lead to so-ca...
A runtime analysis technique is presented, which can predict con-currency errors in multithreaded sy...
In this paper, we establish a notion of causality that should be used as a desideratum for memory mo...
The abstraction of a shared memory is of growing importance in distributed computing systems. Trad...
We analyse the validity of common optimisations on multi-threaded programs in two memory models—the ...
We analyse the validity of common optimisations on multi-threaded programs in two memory models—the ...
Correctness conditions like linearizability and opacity describe some form of atomicity imposed on c...
A memory model for a concurrent imperative programming lan-guage specifies which writes to shared va...
A memory model for a concurrent imperative programming language specifies which writes to shared var...
International audienceIn distributed systems where strong consistency is costly when not impossible,...
Happen-before causal partial order relations have been widely used in concurrent program verificatio...
Compilers transform programs, either to optimize performance or to translate language-level construc...
Extracting causal models from observed executions has proved to be an effective approach to analyze ...
Most work on the verification of concurrent objects for shared memory assumes sequential consistency...
A runtime analysis technique is presented, which can predict concurrency errors in multithreaded sys...
Synchronous systems can immediately react to the inputs of their environment which may lead to so-ca...
A runtime analysis technique is presented, which can predict con-currency errors in multithreaded sy...
In this paper, we establish a notion of causality that should be used as a desideratum for memory mo...
The abstraction of a shared memory is of growing importance in distributed computing systems. Trad...
We analyse the validity of common optimisations on multi-threaded programs in two memory models—the ...
We analyse the validity of common optimisations on multi-threaded programs in two memory models—the ...
Correctness conditions like linearizability and opacity describe some form of atomicity imposed on c...
A memory model for a concurrent imperative programming lan-guage specifies which writes to shared va...
A memory model for a concurrent imperative programming language specifies which writes to shared var...
International audienceIn distributed systems where strong consistency is costly when not impossible,...
Happen-before causal partial order relations have been widely used in concurrent program verificatio...
Compilers transform programs, either to optimize performance or to translate language-level construc...
Extracting causal models from observed executions has proved to be an effective approach to analyze ...
Most work on the verification of concurrent objects for shared memory assumes sequential consistency...
A runtime analysis technique is presented, which can predict concurrency errors in multithreaded sys...
Synchronous systems can immediately react to the inputs of their environment which may lead to so-ca...
A runtime analysis technique is presented, which can predict con-currency errors in multithreaded sy...