In this work we solve the algorithmic problem of consistency verification for the TSO and PSO memory models given a reads-from map, denoted VTSO-rf and VPSO-rf, respectively. For an execution of n events over k threads and d variables, we establish novel bounds that scale as nk+1 for TSO and as nk+1· min(nk2, 2k· d) for PSO. Moreover, based on our solution to these problems, we develop an SMC algorithm under TSO and PSO that uses the RF equivalence. The algorithm is exploration-optimal, in the sense that it is guaranteed to explore each class of the RF partitioning exactly once, and spends polynomial time per class when k is bounded. Finally, we implement all our algorithms in the SMC tool Nidhugg, and perform a large number of experiments ...
Classical model-checking tools verify concurrent programs under the tra-ditional Sequential Consiste...
Software transactional memories (STM) are described in the literature with assumptions of sequential...
Concurrency libraries can facilitate the development of multithreaded programs by providing concurre...
TSO (Total Store Order) is the memory consistency model implemented by the x86 and x64 architectures...
Knowing the extent to which we rely on technology one may think that correct programs are nowadays t...
We present a framework that provides deterministic consistency algorithms for given memory models. S...
We address the problem of verifying safety properties of concurrent programs running over the TSO me...
We address the verification problem of finite-state concurrent pro-grams running under weak memory m...
Lazy sequentialization is one of the most effective approaches for the bounded verification of concu...
Model-checking tools classicaly verify concurrent programs under the traditional Sequential Consiste...
Abstract. We present a new abstract interpretation based approach for automat-ically verifying concu...
We present a new approach for stateless model checking (SMC) of multithreaded programs under Sequent...
Most modern multiprocessors offer weak memory behavior to improve their performance in terms of thro...
Over the years, several memory models have been proposed to capture the subtle concurrency semantics...
We present a new approach for stateless model checking (SMC) of multithreaded programs under Sequent...
Classical model-checking tools verify concurrent programs under the tra-ditional Sequential Consiste...
Software transactional memories (STM) are described in the literature with assumptions of sequential...
Concurrency libraries can facilitate the development of multithreaded programs by providing concurre...
TSO (Total Store Order) is the memory consistency model implemented by the x86 and x64 architectures...
Knowing the extent to which we rely on technology one may think that correct programs are nowadays t...
We present a framework that provides deterministic consistency algorithms for given memory models. S...
We address the problem of verifying safety properties of concurrent programs running over the TSO me...
We address the verification problem of finite-state concurrent pro-grams running under weak memory m...
Lazy sequentialization is one of the most effective approaches for the bounded verification of concu...
Model-checking tools classicaly verify concurrent programs under the traditional Sequential Consiste...
Abstract. We present a new abstract interpretation based approach for automat-ically verifying concu...
We present a new approach for stateless model checking (SMC) of multithreaded programs under Sequent...
Most modern multiprocessors offer weak memory behavior to improve their performance in terms of thro...
Over the years, several memory models have been proposed to capture the subtle concurrency semantics...
We present a new approach for stateless model checking (SMC) of multithreaded programs under Sequent...
Classical model-checking tools verify concurrent programs under the tra-ditional Sequential Consiste...
Software transactional memories (STM) are described in the literature with assumptions of sequential...
Concurrency libraries can facilitate the development of multithreaded programs by providing concurre...