Writing concurrent programs with shared memory is often not trivial. Correctly synchronising the threads and handling the non-determinism of executions require a good understanding of the interleaving semantics. Yet, interleavings are not sufficient to model correctly the executions of modern, multicore processors. These executions follow rules that are weaker than those observed by the interleavings, often leading to reorderings in the sequence of updates and readings from memory; the executions are subject to a weaker memory consistency. Reorderings can produce executions that would not be observable with interleavings, and these possible executions also depend on the architecture that the processors implement. It is therefore necessary t...
The work covered in this thesis concerns automatic analysis of correctness of parallel programs runn...
Modern shared memory multiprocessors permit reordering of memory operations for performance reasons....
Static analysis aims to certify critical software by establishing the absence of errors amongst ever...
Developing correct and performant concurrent systems is a major challenge. When programming an appli...
International audienceConcurrent programs running on weak memory models exhibit re-laxed behaviours,...
When a program is compiled and run on a modern architecture, different optimizations may be applied ...
For efficiency reasons, most modern processor architectures allow the reordering of CPU instructions...
In order to improve performance or conserve energy, modern hardware implementations have adopted wea...
Modern processors deploy a variety of weak memory models, which for efficiency reasons may (appear t...
Weak memory models are used to increase the performance of concurrent programs by allowing program i...
Weak memory models formalize the inconsistent behaviors that one can expect to observe in multithrea...
Weak consistency is a memory model that is frequently considered for shared memory systems. Its most...
With the spread of multi-core systems, the need to write concurrent programs in order to take advant...
Writing correct shared-memory concurrent programs is hard. Not only must a programmer reason about ...
Abstract. We present a new abstract interpretation based approach for automat-ically verifying concu...
The work covered in this thesis concerns automatic analysis of correctness of parallel programs runn...
Modern shared memory multiprocessors permit reordering of memory operations for performance reasons....
Static analysis aims to certify critical software by establishing the absence of errors amongst ever...
Developing correct and performant concurrent systems is a major challenge. When programming an appli...
International audienceConcurrent programs running on weak memory models exhibit re-laxed behaviours,...
When a program is compiled and run on a modern architecture, different optimizations may be applied ...
For efficiency reasons, most modern processor architectures allow the reordering of CPU instructions...
In order to improve performance or conserve energy, modern hardware implementations have adopted wea...
Modern processors deploy a variety of weak memory models, which for efficiency reasons may (appear t...
Weak memory models are used to increase the performance of concurrent programs by allowing program i...
Weak memory models formalize the inconsistent behaviors that one can expect to observe in multithrea...
Weak consistency is a memory model that is frequently considered for shared memory systems. Its most...
With the spread of multi-core systems, the need to write concurrent programs in order to take advant...
Writing correct shared-memory concurrent programs is hard. Not only must a programmer reason about ...
Abstract. We present a new abstract interpretation based approach for automat-ically verifying concu...
The work covered in this thesis concerns automatic analysis of correctness of parallel programs runn...
Modern shared memory multiprocessors permit reordering of memory operations for performance reasons....
Static analysis aims to certify critical software by establishing the absence of errors amongst ever...