English
Related papers

Related papers: Achieving Starvation-Freedom with Greater Concurre…

200 papers

Transaction Memory (TM) is a concurrency control abstraction that allows the programmer to specify blocks of code to be executed atomically as transactions. However, since transactional code can contain just about any operation attention…

Distributed, Parallel, and Cluster Computing · Computer Science 2016-03-28 Konrad Siek , Paweł T. Wojciechowski

In an anonymous shared memory system, all inter-process communications are via shared objects; however, unlike in standard systems, there is no a priori agreement between processes on the names of shared objects [14,15]. Furthermore, the…

Distributed, Parallel, and Cluster Computing · Computer Science 2023-09-21 Gadi Taubenfeld

In this paper we are interested in bounding the number of instructions taken to process transactions. The main result is a multiversion transactional system that supports constant delay (extra instructions beyond running in isolation) for…

Distributed, Parallel, and Cluster Computing · Computer Science 2019-05-17 Naama Ben-David , Guy E. Blelloch , Yihan Sun , Yuanhao Wei

Parallel execution of smart contract transactions in large multicore architectures is critical for higher efficiency and improved throughput. The main bottleneck for maximizing the throughput of a node through parallel execution is…

Distributed, Parallel, and Cluster Computing · Computer Science 2025-08-15 Parwat Singh Anjana , Matin Amini , Rohit Kapoor , Rahul Parmar , Raghavendra Ramesh , Srivatsan Ravi , Joshua Tobkin

Transactional memory (TM) is an inherently optimistic abstraction: it allows concurrent processes to execute sequences of shared-data accesses (transactions) speculatively, with an option of aborting them in the future. Early TM designs…

Distributed, Parallel, and Cluster Computing · Computer Science 2016-03-07 Petr Kuznetsov , Srivatsan Ravi

Shared virtual memory (SVM) is key in heterogeneous systems on chip (SoCs), which combine a general-purpose host processor with a many-core accelerator, both for programmability and to avoid data duplication. However, SVM can bring a…

Hardware Architecture · Computer Science 2018-08-30 Andreas Kurth , Pirmin Vogel , Andrea Marongiu , Luca Benini

Most STM systems are poorly equipped to support libraries of concurrent data structures. One reason is that they typically detect conflicts by tracking transactions' read sets and write sets, an approach that often leads to false conflicts.…

Distributed, Parallel, and Cluster Computing · Computer Science 2017-06-27 Thomas D. Dickerson , Paul Gazzillo , Maurice Herlihy , Eric Koskinen

Transactional memory (TM) has emerged as a promising abstraction for concurrent programming alternative to lock-based synchronizations. However, most TM models admit only isolated transactions, which are not adequate in multi-threaded…

Programming Languages · Computer Science 2016-02-18 Marino Miculan , Marco Peressotti

Emerging non-volatile memory (NVM) technologies promise memory speed byte-addressable persistent storage with a load/store interface. However, programming applications to directly manipulate NVM data is complex and error-prone. Applications…

Distributed, Parallel, and Cluster Computing · Computer Science 2021-01-01 Pradeep Fernando , Irina Calciu , Jayneel Gandhi , Aasheesh Kolli , Ada Gavrilovska

Non-volatile memory (NVM), also known as persistent memory, is an emerging paradigm for memory that preserves its contents even after power loss. NVM is widely expected to become ubiquitous, and hardware architectures are already providing…

Distributed, Parallel, and Cluster Computing · Computer Science 2023-06-22 Eleni Bila , John Derrick , Simon Doherty , Brijesh Dongol , Gerhard Schellhorn , Heike Wehrheim

Block-STM is a parallel execution engine for smart contracts, built around the principles of Software Transactional Memory. Transactions are grouped in blocks, and every execution of the block must yield the same deterministic outcome.…

Distributed, Parallel, and Cluster Computing · Computer Science 2022-08-29 Rati Gelashvili , Alexander Spiegelman , Zhuolun Xiang , George Danezis , Zekun Li , Dahlia Malkhi , Yu Xia , Runtian Zhou

An important property of concurrent objects is whether they support progress -a special case of liveness-guarantees, which ensure the termination of individual method calls under system fairness assumptions. Liveness properties have been…

Formal Languages and Automata Theory · Computer Science 2021-07-22 Chao Wang , Gustavo Petri , Yi Lv , Teng Long , Zhiming Liu

Multi-versioned database systems have the potential to significantly increase the amount of concurrency in transaction processing because they can avoid read-write conflicts. Unfortunately, the increase in concurrency usually comes at the…

Databases · Computer Science 2015-12-04 Jose M. Faleiro , Daniel J. Abadi

Despite widespread interest in multicore computing, concur- rency models in mainstream languages often lead to subtle, error-prone code. Observationally Cooperative Multithreading (OCM) is a new approach to shared-memory parallelism.…

Current main memory database system architectures are still challenged by high contention workloads and this challenge will continue to grow as the number of cores in processors continues to increase. These systems schedule transactions…

Databases · Computer Science 2019-05-30 Yangjun Sheng , Anthony Tomasic , Tieying Zhang , Andrew Pavlo

Software Transactional Memory (STM) algorithms provide programmers with a synchronisation mechanism for concurrent access to shared variables. Basically, programmers can specify transactions (reading from and writing to shared state) which…

Distributed, Parallel, and Cluster Computing · Computer Science 2021-07-02 Heike Wehrheim

Memory consistency models (MCMs) are at the heart of concurrent programming. They represent the behaviour of concurrent programs at the chip level. To test these models small program snippets called litmus test are generated, which show…

Programming Languages · Computer Science 2018-08-30 Ruth Hoffmann , Özgür Akgün , Susmit Sarkar

A database system optimized for in-memory storage can support much higher transaction rates than current systems. However, standard concurrency control methods used today do not scale to the high transaction rates achievable by such…

Databases · Computer Science 2012-01-04 Per-Åke Larson , Spyros Blanas , Cristian Diaconu , Craig Freedman , Jignesh M. Patel , Mike Zwilling

Processing-In-Memory (PIM) is a novel approach that augments existing DRAM memory chips with lightweight logic. By allowing to offload computations to the PIM system, this architecture allows for circumventing the data-bottleneck problem…

Distributed, Parallel, and Cluster Computing · Computer Science 2024-01-18 André Lopes , Daniel Castro , Paolo Romano

ConcurORAM is a parallel, multi-client oblivious RAM (ORAM) that eliminates waiting for concurrent stateless clients and allows overall throughput to scale gracefully, without requiring trusted third party components (proxies) or direct…

Cryptography and Security · Computer Science 2018-12-14 Anrin Chakraborti , Radu Sion