English
Related papers

Related papers: Reducing Opacity to Linearizability: A Sound and C…

200 papers

Transactions can simplify distributed applications by hiding data distribution, concurrency, and failures from the application developer. Ideally the developer would see the abstraction of a single large machine that runs transactions…

Distributed, Parallel, and Cluster Computing · Computer Science 2020-06-26 Alex Shamis , Matthew Renzelmann , Stanko Novakovic , Georgios Chatzopoulos , Anders T. Gjerdrum , Dan Alistarh , Aleksandar Dragojevic , Dushyanth Narayanan , Miguel Castro

Most work on the verification of concurrent objects for shared memory assumes sequential consistency, but most multicore processors support only weak memory models that do not provide sequential consistency. Furthermore, most verification…

Distributed, Parallel, and Cluster Computing · Computer Science 2016-04-25 Simon Doherty , John Derrick

Weak memory models provide a complex, system-centric semantics for concurrent programs, while transactional memory (TM) provides a simpler, programmer-centric semantics. Both have been studied in detail, but their combined semantics is not…

Programming Languages · Computer Science 2018-04-18 Nathan Chong , Tyler Sorensen , John Wickerson

Linearisability has become the standard correctness criterion for concurrent data structures, ensuring that every history of invocations and responses of concurrent operations has a matching sequential history. Existing proofs of…

Logic in Computer Science · Computer Science 2013-07-29 Brijesh Dongol , John Derrick

Transactional access to databases is an important abstraction allowing programmers to consider blocks of actions (transactions) as executing in isolation. The strongest consistency model is {\em serializability}, which ensures the atomicity…

Logic in Computer Science · Computer Science 2019-05-23 Sidi Mohamed Beillahi , Ahmed Bouajjani , Constantin Enea

In this paper we verify a modern lazy cache coherence protocol, TSO-CC, against the memory consistency model it was designed for, TSO. We achieve this by first showing a weak simulation relation between TSO-CC (with a fixed number of…

Logic in Computer Science · Computer Science 2017-05-24 Christopher J. Banks , Marco Elver , Ruth Hoffmann , Susmit Sarkar , Paul Jackson , Vijay Nagarajan

Transactional memory promises to make concurrent programming tractable and efficient by allowing the user to assemble sequences of actions in atomic transactions with all-or-nothing semantics. It is believed that, by its very virtue,…

Distributed, Parallel, and Cluster Computing · Computer Science 2013-10-15 Petr Kuznetsov , Sathya Peri

Linearizability is the de facto consistency condition for concurrent objects, widely used in theory and practice. Loosely speaking, linearizability classifies concurrent executions as correct if operations on shared objects appear to take…

Distributed, Parallel, and Cluster Computing · Computer Science 2021-07-30 Gal Sela , Maurice Herlihy , Erez Petrank

In this paper, we describe an enhanced Automatic Check- pointing and Partial Rollback algorithm(CaP R + ) to realize Software Transactional Memory(STM) that is based on con- tinuous conflict detection, lazy versioning with automatic…

Distributed, Parallel, and Cluster Computing · Computer Science 2015-10-26 Anshu S Anand , R K Shyamasundar , Sathya Peri

Software Transactional Memory Systems (STM) are a promising alternative to lock based systems for concurrency control in shared memory systems. In multiversion STM systems, each write on a transaction object produces a new version of that…

Distributed, Parallel, and Cluster Computing · Computer Science 2013-05-30 Priyanka Kumar , Sathya Peri

We address the problem of verifying safety properties of concurrent programs running over the Total Store Order (TSO) memory model. Known decision procedures for this model are based on complex encodings of store buffers as lossy channels.…

Formal Languages and Automata Theory · Computer Science 2023-06-22 Parosh Aziz Abdulla , Mohamed Faouzi Atig , Ahmed Bouajjani , Tuan Phong Ngo

In recent years, Software Transactional Memory systems (STMs) have garnered significant interest as an elegant alternative for addressing concurrency issues in memory. STM systems take optimistic approach. Multiple transactions are allowed…

Distributed, Parallel, and Cluster Computing · Computer Science 2015-09-16 Priyanka Kumar , Sathya Peri

Linearizability is a standard correctness criterion for concurrent algorithms, typically proved by establishing the algorithms' linearization points (LP). However, LPs often hinder abstraction, and for some algorithms such as the…

Logic in Computer Science · Computer Science 2023-08-08 Jesús Domínguez , Aleksandar Nanevski

Proving the linearizability of highly concurrent data structures, such as those using optimistic concurrency control, is a challenging task. The main difficulty is in reasoning about the view of the memory obtained by the threads, because…

Distributed, Parallel, and Cluster Computing · Computer Science 2018-08-07 Yotam M. Y. Feldman , Constantin Enea , Adam Morrison , Noam Rinetzky , Sharon Shoham

Transactions simplify concurrent programming by enabling computations on shared data that are isolated from other concurrent computations and are resilient to failures. Modern databases provide different consistency models for transactions…

Databases · Computer Science 2019-08-14 Ranadeep Biswas , Constantin Enea

We propose a theory that can determine the lowest isolation level that can be allocated to each transaction program in an application in a mixed-isolation-level setting, to guarantee that all executions will be serializable and thus…

Databases · Computer Science 2025-07-01 Brecht Vandevoort , Alan Fekete , Bas Ketsman , Frank Neven , Stijn Vansummeren

Transaction Repair is a method for lock-free, scalable transaction processing that achieves full serializability. It demonstrates parallel speedup even in inimical scenarios where all pairs of transactions have significant read-write…

Databases · Computer Science 2014-03-25 Todd L. Veldhuizen

Multithreaded programs generally leverage efficient and thread-safe concurrent objects like sets, key-value maps, and queues. While some concurrent-object operations are designed to behave atomically, each witnessing the atomic effects of…

Logic in Computer Science · Computer Science 2019-11-06 Siddharth Krishna , Michael Emmi , Constantin Enea , Dejan Jovanovic

The concurrency control algorithms in transactional systems limits concurrency to provide strong semantics, which leads to poor performance under high contention. As a consequence, many transactional systems eschew strong semantics to…

Distributed, Parallel, and Cluster Computing · Computer Science 2020-07-21 Tiago M. Vale , João Leitão , Nuno Preguiça , Rodrigo Rodrigues , Ricardo J. Dias , João M. Lourenço

Opacity is a generic security property, that has been defined on (non probabilistic) transition systems and later on Markov chains with labels. For a secret predicate, given as a subset of runs, and a function describing the view of an…

Cryptography and Security · Computer Science 2014-09-02 Béatrice Bérard , Krishnendu Chatterjee , Nathalie Sznajder