English
Related papers

Related papers: Open Transactions on Shared Memory

200 papers

Software Transactional Memory (STM) is an extensively studied paradigm that provides an easy-to-use mechanism for thread safety and concurrency control. With the recent advent of byte-addressable persistent memory, a natural question to ask…

Programming Languages · Computer Science 2023-12-22 Azalea Raad , Ori Lahav , John Wickerson , Piotr Balcer , Brijesh Dongol

This paper describes QuickSched, a compact and efficient Open-Source C-language library for task-based shared-memory parallel programming. QuickSched extends the standard dependency-only scheme of task-based programming with the concept of…

Distributed, Parallel, and Cluster Computing · Computer Science 2016-01-21 Pedro Gonnet , Aidan B. G. Chalk , Matthieu Schaller

We propose a novel, operational framework to formally describe the semantics of concurrent programs running within the context of a relaxed memory model. Our framework features a "temporary store" where the memory operations issued by the…

Programming Languages · Computer Science 2012-08-30 Gérard Boudol , Gustavo Petri , Bernard Serpette

Modern heterogeneous computing architectures, which couple multi-core CPUs with discrete many-core GPUs (or other specialized hardware accelerators), enable unprecedented peak performance and energy efficiency levels. Unfortunately, though,…

Distributed, Parallel, and Cluster Computing · Computer Science 2020-01-20 Daniel Castro , Paolo Romano , Aleksandar Ilic , Amin M. Khan

The traditional architecture for a DBMS engine has the recovery, concurrency control and access method code tightly bound together in a storage engine for records. We propose a different approach, where the storage engine is factored into…

Databases · Computer Science 2009-09-15 David Lomet , Alan Fekete , Gerhard Weikum , Mike Zwilling

Online Transaction Processing (OLTP) is a classic application with a growing business. CPU-based OLTP has low lock serving efficiency. The main reason is that most locks are cold, and the lock agent must issue frequent memory accesses to…

Hardware Architecture · Computer Science 2026-05-14 Shien Zhu , Gustavo Alonso

Data sharing is central to a wide variety of applications such as fraud detection, ad matching, and research. The lack of data sharing abstractions makes the solution to each data sharing problem bespoke and cost-intensive, hampering value…

Databases · Computer Science 2024-08-09 Siyuan Xia , Chris Zhu , Tapan Srivastava , Bridget Fahey , Raul Castro Fernandez

This paper presents Haskell#, a coordination language targeted at the efficient implementation of parallel scientific applications on loosely coupled parallel architectures, using the functional language Haskell. Examples of applications,…

Distributed, Parallel, and Cluster Computing · Computer Science 2012-08-21 Francisco Heron de Carvalho Junior , Rafael Dueire Lins

Software transactional memory (STM) allows programmers to easily implement concurrent data structures. STMs simplify atomicity. Recent STMs can achieve good performance for some workloads but they have some limitations. In particular, STMs…

Databases · Computer Science 2026-03-20 Gaetano Coccimiglio , Trevor Brown , Srivatsan Ravi

We present a process algebra aimed at describing interactions that are multiparty, i.e. that may involve more than two processes and that are open, i.e. the number of the processes they involve is not fixed or known a priori. Here we focus…

Formal Languages and Automata Theory · Computer Science 2019-01-23 Chiara Bodei , Linda Brodo , Roberto Bruni

Shared Memory is a mechanism that allows several processes to communicate with each other by accessing -- writing or reading -- a set of variables that they have in common. A Consistency Model defines how each process observes the state of…

Distributed, Parallel, and Cluster Computing · Computer Science 2021-01-26 Jordi Bataller Mascarell

Many quantum programs require circuits for addition, subtraction and logical operations. These circuits may be packaged within routines known as oracles. However, oracles can be tedious to code with current frameworks. To solve this problem…

Quantum Physics · Physics 2021-10-26 Ayush Tambde

A challenge for programming language research is to design and implement multi-threaded low-level languages providing static guarantees for memory safety and freedom from data races. Towards this goal, we present a concurrent language…

Programming Languages · Computer Science 2010-02-05 Prodromos Gerakios , Nikolaos Papaspyrou , Konstantinos Sagonas

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

Collaborative Data Sharing raises a fundamental issue in distributed systems. Several strategies have been proposed for making shared data consistent between peers in such a way that the shared part of their local data become equal. Most of…

Databases · Computer Science 2021-12-02 Masato Takeichi

OpenGM is a C++ template library for defining discrete graphical models and performing inference on these models, using a wide range of state-of-the-art algorithms. No restrictions are imposed on the factor graph to allow for higher-order…

Artificial Intelligence · Computer Science 2012-06-04 Bjoern Andres , Thorsten Beier , Joerg H. Kappes

Multi-LLM systems harness the complementary strengths of diverse Large Language Models, achieving performance and efficiency gains that are not attainable by a single model. In existing designs, LLMs communicate through text, forcing…

Computation and Language · Computer Science 2026-03-04 Tianyu Fu , Zihan Min , Hanling Zhang , Jichao Yan , Guohao Dai , Wanli Ouyang , Yu Wang

OCaml is an industrial-strength, multi-paradigm programming language, widely used in industry and academia. OCaml is also one of the few modern managed system programming languages to lack support for shared memory parallel programming.…

Programming Languages · Computer Science 2020-07-03 KC Sivaramakrishnan , Stephen Dolan , Leo White , Sadiq Jaffer , Tom Kelly , Anmol Sahoo , Sudha Parimala , Atul Dhiman , Anil Madhavapeddy

Growing main memory sizes have facilitated database management systems that keep the entire database in main memory. The drastic performance improvements that came along with these in-memory systems have made it possible to reunite the two…

Databases · Computer Science 2012-08-02 Florian Funke , Alfons Kemper , Thomas Neumann

This report describes an implementation of a non-blocking concurrent shared-memory hash trie based on single-word compare-and-swap instructions. Insert, lookup and remove operations modifying different parts of the hash trie can be run…

Data Structures and Algorithms · Computer Science 2017-09-19 Aleksandar Prokopec , Phil Bagwell , Martin Odersky