English
Related papers

Related papers: Adapting Persistent Data Structures for Concurrenc…

200 papers

Building a library of concurrent data structures is an essential way to simplify the difficult task of developing concurrent software. Lock-free data structures, in which processes can help one another to complete operations, offer the…

Distributed, Parallel, and Cluster Computing · Computer Science 2017-12-18 Trevor Brown

The recent advancements in multicore machines highlight the need to simplify concurrent programming in order to leverage their computational power. One way to achieve this is by designing efficient concurrent data structures (e.g. stacks,…

Distributed, Parallel, and Cluster Computing · Computer Science 2021-03-31 Nikolaos D. Kallimanis

We study general techniques for implementing distributed data structures on top of future many-core architectures with non cache-coherent or partially cache-coherent memory. With the goal of contributing towards what might become, in the…

Distributed, Parallel, and Cluster Computing · Computer Science 2024-04-09 Panagiota Fatourou , Nikolaos D. Kallimanis , Eleni Kanellou , Odysseas Makridakis , Christi Symeonidou

The crux of software transactional memory (STM) is to combine an easy-to-use programming interface with an efficient utilization of the concurrent-computing abilities provided by modern machines. But does this combination come with an…

Distributed, Parallel, and Cluster Computing · Computer Science 2013-06-28 Petr Kuznetsov , Srivatsan Ravi

Designing concurrent data structures should follow some basic rules. By separating the algorithms into two phases, we present guidelines for scalable data structures, with a analysis model based on the Amadal's law. To the best of our…

Distributed, Parallel, and Cluster Computing · Computer Science 2015-06-02 Keren Zhou , Guocheng Niu , Wuzhao Zhang , Xueqi Li , Wenqin Liu

Currently, blockchain proposals are being adopted to solve security issues, such as data integrity, resilience, and non-repudiation. To improve certain aspects, e.g., energy consumption and latency, of traditional blockchains, different…

Cryptography and Security · Computer Science 2020-05-05 Henry C. Nunes , Roben C. Lunardi , Avelin F. Zorzo , Regio A. Michelin , Salil S. Kanhere

Performance analysis has always been an afterthought during the application development process, focusing on application correctness first. The learning curve of the existing static and dynamic analysis tools are steep, which requires…

Machine Learning · Computer Science 2021-04-23 Nathan Pinnow , Tarek Ramadan , Tanzima Z. Islam , Chase Phelps , Jayaraman J. Thiagarajan

Blockchain technology provides a tamper-proof mechanism to execute inter-organizational business processes involving mutually untrusted parties. Existing approaches to blockchain-based process execution are based on code generation. In…

Software Engineering · Computer Science 2019-06-05 Orlenys López-Pintado , Marlon Dumas , Luciano García-Bañuelos , Ingo Weber

One of the main bottlenecks of blockchains is smart contract execution. To increase throughput, modern blockchains try to execute transactions in parallel. Unfortunately, however, common blockchain use cases introduce read-write conflicts…

Distributed, Parallel, and Cluster Computing · Computer Science 2024-05-13 George Mitenkov , Igor Kabiljo , Zekun Li , Alexander Spiegelman , Satyanarayana Vusirikala , Zhuolun Xiang , Aleksandar Zlateski , Nuno P. Lopes , Rati Gelashvili

Dynamic analyses are a standard approach to analyzing and testing concurrent programs. Such techniques observe program traces and analyze them to infer the presence or absence of bugs. At its core, each analysis maintains a partial order…

Programming Languages · Computer Science 2024-04-01 Hünkar Can Tunç , Ameya Prashant Deshmukh , Berk Çirisci , Constantin Enea , Andreas Pavlogiannis

Behavior Trees (BTs) are becoming a popular tool to model the behaviors of autonomous agents in the computer game and the robotics industry. One of the key advantages of BTs lies in their composability, where complex behaviors can be built…

Robotics · Computer Science 2020-07-16 Michele Colledanchise , Lorenzo Natale

Traditional public blockchain systems typically had very limited transaction throughput because of the bottleneck of the consensus protocol itself. With recent advances in consensus technology, the performance limit has been greatly lifted,…

Distributed, Parallel, and Cluster Computing · Computer Science 2022-02-11 Péter Garamvölgyi , Yuxi Liu , Dong Zhou , Fan Long , Ming Wu

Smart systems are characterised by their ability to analyse measured data in live and to react to changes according to expert rules. Therefore, such systems exploit appropriate data models together with actions, triggered by domain-related…

Software Engineering · Computer Science 2017-04-28 Ludovic Mouline , Thomas Hartmann , François Fouquet , Yves Le Traon , Johann Bourcier , Olivier Barais

Bitcoin has attracted everyone's attention and interest recently. Ethereum (ETH), a second generation cryptocurrency, extends Bitcoin's design by offering a Turing-complete programming language called Solidity to develop smart contracts.…

Programming Languages · Computer Science 2018-04-05 Jiao Jiao , Shuanglong Kan , Shang-Wei Lin , David Sanan , Yang Liu , Jun Sun

In this paper, we study the possibility of designing non-trivial random CSP models by exploiting the intrinsic connection between structures and typical-case hardness. We show that constraint consistency, a notion that has been developed to…

Artificial Intelligence · Computer Science 2011-10-12 J. Culberson , Y. Gao

Today's blockchains suffer from low throughput and high latency, which impedes their widespread adoption of more complex applications like smart contracts. In this paper, we propose a novel paradigm for smart contract execution. It…

Cryptography and Security · Computer Science 2023-06-09 Jian Liu , Peilun Li , Raymond~Cheng , N. Asokan , Dawn Song

Data structures used in software development have inbuilt redundancy to improve software reliability and to speed up performance. Examples include a Doubly Linked List which allows a faster deletion due to the presence of the previous…

Databases · Computer Science 2025-08-05 Pratyush Mahapatra , Mark D. Hill , Michael M. Swift

This paper presents the Dynamic Simultaneous Multi-threaded Architecture (DSMT). DSMT efficiently exe-cutes multiple threads from a single program on a SMT processor core. To accomplish this, threads are generated dynamically from a…

Hardware Architecture · Computer Science 2024-09-16 Daniel Ortiz-Arroyo , Ben Lee

Concurrent data structures serve as fundamental building blocks for concurrent computing. Many concurrent counterparts have been designed for basic sequential mechanisms; however, one notable omission is a concurrent tree that supports…

Distributed, Parallel, and Cluster Computing · Computer Science 2024-05-14 Gal Sela , Erez Petrank

Blockchains are maintained by a network of participants that run algorithms designed to maintain collectively a distributed machine tolerant to Byzantine attacks. From the point of view of users, blockchains provide the illusion of…

Logic in Computer Science · Computer Science 2022-07-15 Martán Ceresa , César Sánchez