English
Related papers

Related papers: Parse Concurrent Data Structures: BST as an Exampl…

200 papers

Partial orders are used extensively for modeling and analyzing concurrent computations. In this paper, we define two properties of partially ordered sets: width-extensibility and interleaving-consistency, and show that a partial order can…

Distributed, Parallel, and Cluster Computing · Computer Science 2014-10-07 Himanshu Chauhan , Vijay K. Garg

This work unifies insights from the systems and functional programming communities, in order to enable compositional reasoning about software which is nonetheless efficiently realizable in hardware. It exploits a correspondence between…

Distributed, Parallel, and Cluster Computing · Computer Science 2020-03-18 Thomas Dickerson

The paper presents the first \emph{concurrency-optimal} implementation of a binary search tree (BST). The implementation, based on a standard sequential implementation of an internal tree, ensures that every \emph{schedule} is accepted,…

Distributed, Parallel, and Cluster Computing · Computer Science 2017-03-03 Vitaly Aksenov , Vincent Gramoli , Petr Kuznetsov , Anna Malova , Srivatsan Ravi

In this paper we tackle the problem of automatically designing concurrent data structure operations given a sequential data structure specification and knowledge about concurrent behavior. Designing concurrent code is a non-trivial task…

Logic in Computer Science · Computer Science 2020-11-10 Sarat Chandra Varanasi , Neeraj Mittal , Gopal Gupta

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

We consider a parallel system of $m$ identical machines prone to unpredictable crashes and restarts, trying to cope with the continuous arrival of tasks to be executed. Tasks have different computational requirements (i.e., processing time…

Distributed, Parallel, and Cluster Computing · Computer Science 2016-03-21 Elli Zavou , Antonio Fernández Anta

Parallel batched data structures are designed to process synchronized batches of operations in a parallel computing model. In this paper, we propose parallel combining, a technique that implements a concurrent data structure from a parallel…

Distributed, Parallel, and Cluster Computing · Computer Science 2018-11-14 Vitaly Aksenov , Petr Kuznetsov , Anatoly Shalyto

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

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

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

In this paper, we propose a generic concurrent directed graph (for shared memory architecture) that is concurrently being updated by threads adding/deleting vertices and edges. The graph is constructed by the composition of the well known…

Distributed, Parallel, and Cluster Computing · Computer Science 2017-11-01 Sathya Peri , Muktikanta Sa , Nandini Singhal

Arguments about correctness of a concurrent data structure are typically carried out by using the notion of linearizability and specifying the linearization points of the data structure's procedures. Such arguments are often cumbersome as…

Logic in Computer Science · Computer Science 2017-01-19 Germán Andrés Delbianco , Ilya Sergey , Aleksandar Nanevski , Anindya Banerjee

Many very large-scale systems are networks of cyber-physical systems in which humans and autonomous software agents cooperate. To make the cooperation safe for the humans involved, the systems have to follow protocols with rigid real-time…

Software Engineering · Computer Science 2024-10-21 Heinz Schmidt , Peter Herrmann , Maria Spichkova , James Harland , Ian Peake , Ergys Puka

Recent decades have witnessed a surge in the development of concurrent data structures with an increasing interest in data structures implementing concurrent sets (CSets). Microbenchmarking tools are frequently utilized to evaluate and…

Distributed, Parallel, and Cluster Computing · Computer Science 2022-12-09 Rosina F. Kharal , Trevor Brown

This article aims to describe and explain the theoretical foundations of concurrent and set concurrent algorithms, considering an asynchronous shared memory system where any number of processes can crash. Verification of concurrent…

Distributed, Parallel, and Cluster Computing · Computer Science 2023-07-27 Jose Damian Lopez Diaz

Algorithms for scheduling structured parallel computations have been widely studied in the literature. For some time now, Work Stealing is one of the most popular for scheduling such computations, and its performance has been studied in…

Distributed, Parallel, and Cluster Computing · Computer Science 2018-10-26 Guilherme Rito , Hervé Paulino

Efficient engineered systems require scalability. A scalable system has increasing performance with increasing system size. In an ideal case, the increase in performance (e.g., speedup) corresponds to the number of units that are added to…

Distributed, Parallel, and Cluster Computing · Computer Science 2021-06-14 Heiko Hamann , Andreagiovanni Reina

We tackle the problem of automatically designing concurrent data structure operations given a sequential data structure specification and knowledge about concurrent behavior. Designing concurrent code is a non-trivial task even in simplest…

Programming Languages · Computer Science 2021-09-27 Sarat Chandra Varanasi , Neeraj Mittal , Gopal Gupta

Concurrent software for engineering computations consists of multiple cooperating modules. The behavior of individual modules is described by means on state diagrams. In the paper, the constraints on state diagrams are proposed, allowing…

Software Engineering · Computer Science 2017-03-27 Bogdan D. Czejdo , Wiktor B. Daszczuk , Jerzy Mieścicki

The problem of learning parallel computer performance is investigated in the context of multicore processors. Given a fixed workload, the effect of varying system configuration on performance is sought. Conventionally, the performance…

Machine Learning · Computer Science 2022-09-28 Chaitanya Poolla , Rahul Saxena
‹ Prev 1 2 3 10 Next ›