188 Hits in 4.1 sec

An Unbounded Nonblocking Double-Ended Queue

Matthew Graichen, Joseph Izraelevitz, Michael L. Scott
2016 2016 45th International Conference on Parallel Processing (ICPP)  
We introduce a new algorithm for an unbounded concurrent double-ended queue (deque).  ...  Index Terms-parallel processing; parallel algorithms; nonblocking algorithms; X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X  ...  We employ this deque as the basis of a new, unbounded alternative. II. UNBOUNDED DOUBLE ENDED QUEUE A.  ... 
doi:10.1109/icpp.2016.32 dblp:conf/icpp/GraichenIS16 fatcat:nypkxvkcmje6fj4f36opidkg4m

Power-aware pipelining with automatic concurrency control

Massimo Torquati, Daniele De Sensi, Gabriele Mencagli, Marco Aldinucci, Marco Danelutto
2018 Concurrency and Computation  
The algorithm automatically switches between nonblocking and blocking concurrency protocols, getting the best from the two worlds, i.e. obtaining the same throughput offered by the nonblocking implementation  ...  Continuous streaming computations are usually composed of different modules, exchanging data through shared message queues.  ...  FIFO queues, double-ended queues and sorted linked lists) by using hardware performance counters finding that lock-free algorithms tend to perform better in general that their lock-based counterparts.  ... 
doi:10.1002/cpe.4652 fatcat:fjre7bmiofhatixajcz7tdjlea

Generality and Speed in Nonblocking Dual Containers

Joseph Izraelevitz, Michael L. Scott
2017 ACM Transactions on Parallel Computing  
We will return to unbounded nonblocking FAA/FAI-based queues in Section 4, where we show how to make them dual.  ...  Past work has also explored unbounded FAA/FAI-based queues.  ...  Unfortunately, like most nonblocking queues, the LCRQ "totalizes" dequeue operations by returning an error code when the queue is empty.  ... 
doi:10.1145/3040220 fatcat:mlgs6rvma5e6rfx43ghntdrk5u

Micro-transactions for concurrent data structures

Fadi Meawad, Karthik Iyer, Martin Schoeberl, Jan Vitek
2012 Concurrency and Computation  
Our results suggest that transactional memory is an interesting alternative to traditional concurrency control mechanisms.  ...  We conducted experiments to record the execution time, number of commits and retries, and the size of read and write sets of the different queue implementations. §  ...  Double-ended queue (deque) deque is a double-linked queue, which allows insertion or removal from either side.  ... 
doi:10.1002/cpe.2985 fatcat:3o4qfjzbenby3pkg7djb66wj3e

Space- and Time-adaptive Nonblocking Algorithms

Maurice Herlihy, Victor Luchangco, Mark Moir
2003 Electronical Notes in Theoretical Computer Science  
In addition to the algorithmic techniques we introduce, we also clarify and generalize previous properties used to characterize measures of an algorithm's "adaptivity".  ...  We explore techniques for designing nonblocking algorithms that do not require advance knowledge of the number of threads that participate, whose time complexity and space consumption both adapt to various  ...  In recent years, our group has proposed a variety of population-oblivious, lock-free implementations of dynamic-sized double-ended queue data structures (deques) [3, 7, 13] that have space consumption  ... 
doi:10.1016/s1571-0661(04)81017-x fatcat:rrpfgg2xgzettlfx7qther3rye

Nonblocking Concurrent Data Structures with Condition Synchronization [chapter]

William N. Scherer, Michael L. Scott
2004 Lecture Notes in Computer Science  
We model such an operation as a request and a follow-up, each with its own linearization point.  ...  By reasoning separately about a request, its successful follow-up, and the period in-between, we obtain meaningful definitions of nonblocking dual data structures.  ...  Nonblocking dual data structures could undoubtedly be developed for double-ended queues, priority queues, sets, dictionaries, and other abstractions.  ... 
doi:10.1007/978-3-540-30186-8_13 fatcat:vk7qlyiidvbdzkekiokwvrxbgu

Collapsing Threads Safely with Soft Invariants [article]

David Friggens, Lindsay Groves
2015 arXiv   pre-print
We present an approach using canonical abstraction that avoids this state explosion by "collapsing" all of the threads in a state into a single abstract representative.  ...  This technique is used to adapt previous models for verifying linearizability of nonblocking concurrent data structure algorithms, resulting in exponentially smaller statespaces.  ...  Queues The remaining algorithms are two nonblocking concurrent queue algorithms, the original introduced by Michael and Scott [12] ("MS queue"), and a modified version by Doherty et al.  ... 
arXiv:1512.09186v1 fatcat:kgmtpmnhnbaengwqsfjnlwjyz4

Constructing Shared Objects That Are Both Robust and High-Throughput [chapter]

Danny Hendler, Shay Kutten
2006 Lecture Notes in Computer Science  
We present the first counter algorithm that is both linearizable, nonblocking, and can provably achieve high throughput in semisynchronous executions.  ...  It can thus be used to obtain implementations, possessing the same properties, of any object that supports combinable operations, such as stack or queue.  ...  The two-handed emulation mechanism uses the double compare-and-swap (DCAS) primitive.  ... 
doi:10.1007/11864219_30 fatcat:hvcdnhfstzg2bfwiuxpscikriu

Making lockless synchronization fast: performance implications of memory reclamation

T.E. Hart, P.E. McKenney, A.D. Brown
2006 Proceedings 20th IEEE International Parallel & Distributed Processing Symposium  
The evaluation of this scheme consisted only of experiments on double-ended queues, thus failing to evaluate scalability with data-structure size, an HPBR weakness.  ...  One might question why one would want to use a nonblocking data structure in this case, since a halted would cause an infinite memory leak, thus destroying the nonblocking data structure's fault-tolerance  ... 
doi:10.1109/ipdps.2006.1639261 dblp:conf/ipps/HartMB06 fatcat:szpjcxbfnbc7dkwsxfqolxae7q

Fully Read/Write Fence-Free Work-Stealing with Multiplicity [article]

Armando Castañeda, Miguel Piña
2020 arXiv   pre-print
Figure 1 schematizes the differences between the two consistency conditions where each double-end arrow represents an operation execution.  ...  The three idempotent algorithms in [18] insert/extract tasks in FIFO and LIFO orders, and as in a double-ended queue (the owner working on one side and the thieves on the other).  ... 
arXiv:2008.04424v1 fatcat:q74vglm6yrg5tgq725sdckenle

Scalable Room Synchronizations

Guy E. Blelloch, Perry Cheng, Phillip B. Gibbons
2003 Theory of Computing Systems  
We describe how stacks and queues can be implemented using two regions, one for pushing (enqueueing) and one for popping (dequeueing).  ...  This paper presents a scalable solution to the group mutual exclusion problem, with applications to linearizable stacks and queues, and related problems.  ...  Furthermore, many of these implementations have other problems such as requiring an atomic double compare-and-swap operation or requiring unbounded memory.  ... 
doi:10.1007/s00224-003-1081-y fatcat:hgep6hspljfa3hzigfoewonm5u


Ruslan Nikolaev, Binoy Ravindran
2022 Proceedings of the 34th ACM Symposium on Parallelism in Algorithms and Architectures  
On the other hand, existing wait-free queues are either not very performant or suffer from potentially unbounded memory usage.  ...  Strictly described, the latter queues, such as Yang & Mellor-Crummey's (YMC) queue, forfeit wait-freedom as they are blocking when memory is exhausted.  ...  To avoid cluttering, we do not separately present a combination of SCQ with MSQueue or wCQ with a slower wait-free unbounded queue since: (1) they only need that combination when an unbounded queue is  ... 
doi:10.1145/3490148.3538572 fatcat:w7nytsppgzgjbnx4pe4f6x7uk4

wCQ: A Fast Wait-Free Queue with Bounded Memory Usage [article]

Ruslan Nikolaev, Binoy Ravindran
2022 arXiv   pre-print
On the other hand, existing wait-free queues are either not very performant or suffer from potentially unbounded memory usage.  ...  Strictly described, the latter queues, such as Yang & Mellor-Crummey's (YMC) queue, forfeit wait-freedom as they are blocking when memory is exhausted.  ...  To avoid cluttering, we do not separately present a combination of SCQ with MSQueue or wCQ with a slower wait-free unbounded queue since: (1) they only need that combination when an unbounded queue is  ... 
arXiv:2201.02179v1 fatcat:vxapipblozawtbwhtzwa7wrwfm

Message Passing on a Time-predictable Multicore Processor

Rasmus Bo Sorensen, Wolfgang Puffitsch, Martin Schoeberl, Jens Sparso
2015 2015 IEEE 18th International Symposium on Real-Time Distributed Computing  
We combine these WCET numbers with the calculation of the network latency of a message and then provide a statically computed end-to-end latency for this core-to-core message.  ...  If the buffer queue is empty, the nonblocking receive primitive fails. If there is no free DMA to transfer the Acknowledge count to the sender, the nonblocking acknowledge primitive fails.  ...  By extending the double buffering to a queue of buffers we support multi-rate synchronous programming and asynchronous message passing.  ... 
doi:10.1109/isorc.2015.15 dblp:conf/isorc/SorensenPSS15 fatcat:urvck7u3unaidluc4d6hp66goq

An asynchronous nonblocking coordination and synchronization protocol for a parallel robotic control kernel

Philippe Stellwag, Wolfgang Schröder-Preikschat, Daniel Lohmann
2009 Proceedings of the Second Workshop on Isolation and Integration in Embedded Systems - IIES '09  
This double buffering procedure used by two tasks must assure a consistent data flow without data losses.  ...  In this experience report, we present a concrete coordination and synchronization problem for a double buffering procedure that arose on our ongoing attempts to parallelize a robotic control kernel.  ...  The prepared data, the so-called blocks, is enqueued to a FIFO queue.  ... 
doi:10.1145/1519130.1519132 fatcat:vqdjaquuczcdhaicxk6tp4mcca
« Previous Showing results 1 — 15 out of 188 results