English
Related papers

Related papers: A Better Reduction Theorem for Store Buffers

200 papers

Programming models for concurrency are optimized for dealing with nondeterminism, for example to handle asynchronously arriving events. To shield the developer from data race errors effectively, such models may prevent shared access to data…

Software Engineering · Computer Science 2014-10-24 Mischael Schill , Sebastian Nanz , Bertrand Meyer

We present the Cuckoo Trie, a fast, memory-efficient ordered index structure. The Cuckoo Trie is designed to have memory-level parallelism -- which a modern out-of-order processor can exploit to execute DRAM accesses in parallel -- without…

Data Structures and Algorithms · Computer Science 2022-01-25 Adar Zeitak , Adam Morrison

The increasing use of cloud computing and remote execution have made program security especially important. Code obfuscation has been proposed to make the understanding of programs more complicated to attackers. In this paper, we exploit…

Cryptography and Security · Computer Science 2013-11-04 Rasha Salah Omar , Ahmed El-Mahdy , Erven Rohou

In shared-memory concurrent programming, shared resources can be protected using synchronization mechanisms such as monitors or channels. The connection between these mechanisms and the resources they protect is, however, only given…

Distributed, Parallel, and Cluster Computing · Computer Science 2014-07-07 Mischael Schill , Sebastian Nanz , Bertrand Meyer

Processing-in-memory (PIM) architectures allow software to explicitly initiate computation in the memory. This effectively makes PIM operations a new class of memory operations, alongside standard memory operations (e.g., load, store). For…

Hardware Architecture · Computer Science 2022-12-08 Ben Perach , Ronny Ronnen , Shahar Kvatinsky

Writing concurrent programs is a hard task, even when using high-level synchronization primitives such as transactional memories together with a functional language with well-controlled side-effects such as Haskell, because the…

Logic in Computer Science · Computer Science 2013-12-11 Romain Demeyer , Wim Vanhoof

Persistent Memory (PM) makes possible recoverable applications that can preserve application progress across system reboots and power failures. Actual recoverability requires careful ordering of cacheline flushes, currently done in two…

Distributed, Parallel, and Cluster Computing · Computer Science 2019-09-02 Swapnil Haria , Mark D. Hill , Michael M. Swift

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

Many modern applications require real-time processing of large volumes of high-speed data. Such data processing needs can be modeled as a streaming computation. A streaming computation is specified as a dataflow graph that exposes multiple…

Databases · Computer Science 2018-04-02 Guna Prasaad , G. Ramalingam , Kaushik Rajan

We consider games played on the transition graph of concurrent programs running under the Total Store Order (TSO) weak memory model. Games are frequently used to model the interaction between a system and its environment, in this case…

Logic in Computer Science · Computer Science 2024-11-05 Stephan Spengler

Constant-time programming is a widely deployed approach to harden cryptographic programs against side channel attacks. However, modern processors often violate the underlying assumptions of standard constant-time policies by transiently…

Cryptography and Security · Computer Science 2025-05-21 Ali Hajiabadi , Trevor E. Carlson

Concurrent separation logic with fractional permissions (CSLPerm) provides a promising reasoning system to verify most complex sequential and concurrent fine-grained programs. The logic with strong and weak separating conjunctions offers a…

Logic in Computer Science · Computer Science 2025-10-07 Quang Loc Le

We present a static analysis by Abstract Interpretation to check for run-time errors in parallel and multi-threaded C programs. Following our work on Astr\'ee, we focus on embedded critical programs without recursion nor dynamic memory…

Programming Languages · Computer Science 2019-03-14 Antoine Miné

We consider games played on the transtion graph of concurrent programs running under the Total Store Order (TSO) weak memory model. Games are frequently used to model the interaction between a system and its environment, in this case…

Computer Science and Game Theory · Computer Science 2024-06-05 Stephan Spengler

Non-volatile memory (NVM), aka persistent memory, is a new paradigm for memory that preserves its contents even after power loss. The expected ubiquity of NVM has stimulated interest in the design of novel concepts ensuring correctness of…

Distributed, Parallel, and Cluster Computing · Computer Science 2020-04-20 Eleni Bila , Simon Doherty , Brijesh Dongol , John Derrick , Gerhard Schellhorn , Heike Wehrheim

Shared-memory concurrency is difficult to reason about because each thread executes under interference from other threads. At the same time, many correctness arguments for classic algorithms are epistemic: a thread enters a critical region…

Logic in Computer Science · Computer Science 2026-01-26 Hamed Nemati , Mads Dam

This work utilizes the plethora of work on verification of sequential programs for the purpose of verifying concurrent programs. We reduce the verification of a concurrent program to a series of verification tasks of sequential programs.…

Programming Languages · Computer Science 2021-06-03 Dan Rasin , Orna Grumberg , Sharon Shoham

Multi-socket multi-core servers are used for solving some of the important problems in computing. Remote DRAM accesses can impact performance of certain applications running on such servers. This paper presents a new near linear operating…

Distributed, Parallel, and Cluster Computing · Computer Science 2020-08-07 Suryanarayana Murthy Durbhakula

Hardware Transactional Memory (HTM) allows lock-free programming as easy as with traditional coarse-grain locks or similar, while benefiting from the performance advantages of fine-grained locking. Many HTM implementations have been…

Hardware Architecture · Computer Science 2025-10-21 Konstantinos Kafousis

Concurrency control protocols are the key to scaling current DBMS performances. They efficiently interleave read and write operations in transactions, but occasionally they restrict concurrency by using coordination such as exclusive…

Databases · Computer Science 2020-03-09 Sho Nakazono , Hiroyuki Uchiyama , Yasuhiro Fujiwara , Yasuhiro Nakamura , Hideyuki Kawashima
‹ Prev 1 4 5 6 7 8 10 Next ›