English
Related papers

Related papers: Reciprocating Locks

200 papers

Concurrent data structures are the data sharing side of parallel programming. Data structures give the means to the program to store data, but also provide operations to the program to access and manipulate these data. These operations are…

Distributed, Parallel, and Cluster Computing · Computer Science 2013-02-13 Daniel Cederman , Anders Gidenstam , Phuong Ha , Håkan Sundell , Marina Papatriantafilou , Philippas Tsigas

We present a new lock-free multiple-producer and multiple-consumer (MPMC) FIFO queue design which is scalable and, unlike existing high-performant queues, very memory efficient. Moreover, the design is ABA safe and does not require any…

Distributed, Parallel, and Cluster Computing · Computer Science 2019-08-14 Ruslan Nikolaev

When compared to blocking concurrency, non-blocking concurrency can provide higher performance in parallel shared-memory contexts, especially in high contention scenarios. This paper proposes FLeeC, an application-level cache system based…

Distributed, Parallel, and Cluster Computing · Computer Science 2024-06-17 André J. Costa , Nuno M. Preguiça , João M. Lourenço

Locks are a classic data structure for concurrent programming. We introduce a type system to ensure that names of the asynchronous pi-calculus are used as locks. Our calculus also features a construct to deallocate a lock once we know that…

Logic in Computer Science · Computer Science 2023-09-15 Daniel Hirschkoff , Enguerrand Prebet

Classic test-and-test (TS) mutual exclusion locks are simple, and enjoy high performance and low latency of ownership transfer under light or no contention. However, they do not scale gracefully under high contention and do not provide any…

Operating Systems · Computer Science 2020-05-05 Dave Dice , Alex Kogan

When verifying a concurrent program, it is usual to assume that memory is sequentially consistent. However, most modern multiprocessors depend on store buffering for efficiency, and provide native sequential consistency only at a…

Logic in Computer Science · Computer Science 2009-09-28 Ernie Cohen , Norbert Schirmer

Reversible logic has come to the forefront of theoretical and applied research today. Although many researchers are investigating techniques to synthesize reversible combinational logic, there is little work in the area of sequential…

Emerging Technologies · Computer Science 2014-07-29 Md. Selim Al Mamun , Indrani Mandal , Md. Hasanuzzaman

Rollback recovery strategies are well-known in concurrent and distributed systems. In this context, recovering from unexpected failures is even more relevant given the non-deterministic nature of execution, which means that it is…

Programming Languages · Computer Science 2024-01-08 Germán Vidal

We present a randomized approach for wait-free locks with strong bounds on time and fairness in a context in which any process can be arbitrarily delayed. Our approach supports a tryLock operation that is given a set of locks, and code to…

Distributed, Parallel, and Cluster Computing · Computer Science 2022-11-01 Naama Ben-David , Guy E. Blelloch

A real-time multicore system requires delay bounds on access to shared resources. These resources include the kernel, which has potentially many non-preemptible critical sections guarded by one or more different synchronization primitives.…

Operating Systems · Computer Science 2026-05-28 Shriram Raja , Richard West

Logic locking remains one of the most promising defenses against hardware piracy, yet current approaches often face challenges in scalability and design overhead. In this paper, we present TLGLock, a new design paradigm that leverages the…

Cryptography and Security · Computer Science 2026-03-20 Abdullah Sahruri , Martin Margala

Locking protocol is an essential component in resource management of real-time systems, which coordinates mutually exclusive accesses to shared resources from different tasks. Although the design and analysis of locking protocols have been…

Distributed, Parallel, and Cluster Computing · Computer Science 2020-03-19 Xu Jiang , Nan Guan , He Du , Weichen Liu , Wang Yi

Caches are used to reduce the speed differential between the CPU and memory to improve the performance of modern processors. However, attackers can use contention-based cache timing attacks to steal sensitive information from victim…

Cryptography and Security · Computer Science 2024-06-13 Quancheng Wang , Xige Zhang , Han Wang , Yuzhe Gu , Ming Tang

Existing formalisms for the algebraic specification and representation of networks of reversible agents suffer some shortcomings. Despite multiple attempts, reversible declensions of the Calculus of Communicating Systems (CCS) do not offer…

Logic in Computer Science · Computer Science 2021-03-30 Clément Aubert , Doriana Medić

Autoregressive Transformer KV caches grow linearly with context length; sliding-window caching bounds memory but discards evicted tokens entirely, so relevant evidence outside the window becomes inaccessible. We introduce \emph{Tensor…

Machine Learning · Computer Science 2026-05-25 Kabir Swain , Sijie Han , Daniel Karl I. Weidele , Mauro Martino , Antonio Torralba

In the recent past, we have witnessed the shift towards attacks on the microarchitectural CPU level. In particular, cache side-channels play a predominant role as they allow an attacker to exfiltrate secret information by exploiting the CPU…

Cryptography and Security · Computer Science 2022-08-19 Jan Philipp Thoma , Christian Niesler , Dominic Funke , Gregor Leander , Pierre Mayr , Nils Pohl , Lucas Davi , Tim Güneysu

This paper presents an efficient wait-free resizable hash table. To achieve high throughput at large core counts, our algorithm is specifically designed to retain the natural parallelism of concurrent hashing, while providing wait-free…

Distributed, Parallel, and Cluster Computing · Computer Science 2022-04-21 Panagiota Fatourou , Nikolaos D. Kallimanis , Thomas Ropars

The queue is conceptually one of the simplest data structures-a basic FIFO container. However, ensuring correctness in the presence of concurrency makes existing lock-free implementations significantly more complex than their original form.…

Distributed, Parallel, and Cluster Computing · Computer Science 2025-11-13 Yusuf Motiwala

The partitioned global address space has bridged the gap between shared and distributed memory, and with this bridge comes the ability to adapt shared memory concepts, such as non-blocking programming, to distributed systems such as…

Distributed, Parallel, and Cluster Computing · Computer Science 2020-07-30 Garvit Dewan , Louis Jenkins

This paper reveals that locking can significantly degrade the performance of applications on disaggregated memory (DM), sometimes by several orders of magnitude, due to contention on the NICs of memory nodes (MN-NICs). To address this…

Distributed, Parallel, and Cluster Computing · Computer Science 2025-05-26 Hanze Zhang , Ke Cheng , Rong Chen , Xingda Wei , Haibo Chen