Filters








108 Hits in 6.0 sec

Lock-Free and Practical Deques using Single-Word Compare-And-Swap [article]

Håkan Sundell, Philippas Tsigas
2004 arXiv   pre-print
Our algorithm is based on a doubly linked list, and only requires single-word compare-and-swap atomic primitives, even for dynamic memory sizes.  ...  We present an efficient and practical lock-free implementation of a concurrent deque that is disjoint-parallel accessible and uses atomic primitives which are available in modern computer systems.  ...  Independently of our work, Michael [13] has developed a deque implementation based on Compare-And-Swap (CAS) 3 .  ... 
arXiv:cs/0408016v1 fatcat:4tqzw2mufzecrpui2t4tm7bnsy

Lock-Free and Practical Doubly Linked List-Based Deques Using Single-Word Compare-and-Swap [chapter]

Håkan Sundell, Philippas Tsigas
2005 Lecture Notes in Computer Science  
Solution (lock-free), IBM freelists: Pre-allocate a number of nodes, link them into a dynamic stack structure, and allocate/reclaim using CAS Step 1: Step 2: In order for an implementation to be linearizable  ...  Lock-Free Doubly Linked Lists How can we traverse through nodes that are logically (and maybe even "physically") deleted?  ... 
doi:10.1007/11516798_18 fatcat:46izw7kht5b4lodgoa3b5zzgzy

CAS-Based Lock-Free Algorithm for Shared Deques [chapter]

Maged M. Michael
2003 Lecture Notes in Computer Science  
This paper presents the first lock-free algorithm for shared double-ended queues (deques) based on the single-address atomic primitives CAS (Compare-and-Swap) or LL/SC (Load-Linked and Store-Conditional  ...  The algorithm can use single-word primitives, if the maximum deque size is static. To allow the deque's size to be dynamic, the algorithm employs single-address double-width primitives.  ...  Prior lock-free algorithms for shared deques [1, 4, 5] depend on the strong DCAS (Double-Compare-and-Swap) atomic primitive, which is not supported on most current processor architectures, and its simulation  ... 
doi:10.1007/978-3-540-45209-6_92 fatcat:ukdrduba2rbu5fs7uqjdnpqtfy

Eliminate a Parallelization Technique to Implement Expandable Lock-Free Deques

Archana Srivastava
2019 IJARCCE  
The focus of this paper is to give a review on efficient and practical non-blocking implementations of shared data structure and suggest alternative scheme in this direction.  ...  This can either be done using mutual exclusion or non-blocking methods.  ...  The algorithm can use single-word CAS or LL/SC, if the nodes available for use in the deque are pre-allocated statically.  ... 
doi:10.17148/ijarcce.2019.8440 fatcat:5bwakuayhfaqrgqhrwjnlui2tu

Implementation of a Multi-Word Compare-and-Swap Operation without Garbage Collection

Kento SUGIURA, Yoshiharu ISHIKAWA
2022 IEICE transactions on information and systems  
A lock-free algorithm based on compare-and-swap (CAS) operations is one of the concurrency control methods to implement such multi-threading software.  ...  A multi-word CAS (MwCAS) operation is an extension of a CAS operation to swap multiple words atomically.  ...  In addition, this work was supported partly by KAKENHI (16H01722, 20K19804, and 21H03555).  ... 
doi:10.1587/transinf.2021dap0011 fatcat:muszu3b5xjekzkr7j5tdzgqjz4

DCAS is not a silver bullet for nonblocking algorithm design

Simon Doherty, David L. Detlefs, Lindsay Grove, Christine H. Flood, Victor Luchangco, Paul A. Martin, Mark Moir, Nir Shavit, Guy L. Steele
2004 Proceedings of the sixteenth annual ACM symposium on Parallelism in algorithms and architectures - SPAA '04  
A key reason is that current shared-memory multiprocessor architectures support only single-location synchronisation primitives such as compareand-swap (CAS) and load-linked/store-conditional (LL/SC).  ...  Recently researchers have investigated the utility of doublecompare-and-swap (DCAS)-a generalisation of CAS that supports atomic access to two memory locations-in overcoming these problems.  ...  based on single-location synchronisation primitives such as CAS and LL/SC.  ... 
doi:10.1145/1007912.1007945 dblp:conf/spaa/DohertyDGFLMMSS04 fatcat:76owq5bkbbhsrecsm7njsluigu

Lock-free Concurrent Data Structures [article]

Daniel Cederman and Anders Gidenstam and Phuong Ha and Håkan Sundell and Marina Papatriantafilou and Philippas Tsigas
2013 arXiv   pre-print
The first and main goal of this chapter is to provide a sufficient background and intuition to help the interested reader to navigate in the complex research area of lock-free data structures.  ...  In the parallel programming setting, their importance becomes more crucial because of the increased use of data and resource sharing for utilizing parallelism.  ...  The multi-word primitives can be built in hardware [52, 16, 11] , or in software (in a lock-free manner) using single-word hardware primitives [3, 19, 34, 50, 71, 79] .  ... 
arXiv:1302.2757v1 fatcat:2qks5eq5qzffjibjoawqo2u2ra

Lock-Free Concurrent Data Structures [chapter]

Daniel Cederman, Anders Gidenstam, Phuong Ha, Hkan Sundell, Marina Papatriantafilou, Philippas Tsigas
2017 Programming multi-core and many-core computing systems  
The multi-word primitives can be built in hardware [52, 16, 11] , or in software (in a lock-free manner) using single-word hardware primitives [3, 19, 34, 50, 71, 79] .  ...  The node can then be read in a single memory operation and the correct child can be found using just two SIMD compare instructions.  ... 
doi:10.1002/9781119332015.ch3 fatcat:avbcnfdojbdbrcd6m72csfzsku

DCAS-based concurrent deques

Ole Agesen, David L. Detlefs, Christine H. Flood, Alexander T. Garthwaite, Paul A. Martin, Nir N. Shavit, Guy L. Steele
2000 Proceedings of the twelfth annual ACM symposium on Parallel algorithms and architectures - SPAA '00  
The second uses a linked-list representation, and is the first non-blocking unbounded-memory deque implementation. It too allows uninterrupted concurrent access to both ends of the deque.  ...  The first uses an array representation, and improves on previous algorithms by allowing uninterrupted concurrent access to both ends of the deque while correctly handling the difficult boundary cases when  ...  Sun, Sun Microsystems, the Sun logo, Java and all Javabased trademarks and logos are trademarks or registered trademarks of Sun Microsystems, Inc. in the U.S. and other countries.  ... 
doi:10.1145/341800.341817 dblp:conf/spaa/AgesenDFGMSS00 fatcat:xvfhqe6gg5h6zjy43atk3dfrxq

On Dynamic Load Balancing on Graphics Processors [article]

Daniel Cederman, Philippas Tsigas
2008 Proceedings of the ACM SIGGRAPH/EUROGRAPHICS conference on Graphics hardware - HWWS '04  
Three of these methods were lock-free and one was lock-based. We evaluated them on the task of creating an octree partitioning of a set of particles.  ...  They also showed that lock-free methods achieves better performance than blocking and that they can be made to scale with increased numbers of processing units.  ...  The queue is array-based and uses the atomic CAS (Compare-And-Swap) instruction to set a lock variable to ensure mutual exclusion.  ... 
doi:10.2312/eggh/eggh08/057-064 fatcat:r7phhtuvcretrb67ew3vjptxei

Even Better DCAS-Based Concurrent Deques [chapter]

David L. Detlefs, Christine H. Flood, Alexander T. Garthwaite, Paul A. Martin, Nir N. Shavit, Guy L. Steele
2000 Lecture Notes in Computer Science  
The computer industry is examining the use of strong synchronization operations such as double compare-and-swap (DCAS) as a means of supporting non-blocking synchronization on tomorrow's multiprocessor  ...  A remaining open question was whether, using DCAS, one can design a non-blocking implementation of concurrent deques that allows dynamic memory allocation but also uses only a single DCAS per push or pop  ...  Using locks would violate the above condition, hence the alternate name lock-free.  ... 
doi:10.1007/3-540-40026-5_4 fatcat:x3wwhd6l6zhfjmkga3nk3ffr7u

Lock-free deques and doubly linked lists

Håkan Sundell, Philippas Tsigas
2008 Journal of Parallel and Distributed Computing  
Our algorithm only requires single-word compare-and-swap atomic primitives, supports fully dynamic list sizes, and allows traversal also through deleted nodes and thus avoids unnecessary operation retries  ...  We present a practical lock-free shared data structure that efficiently implements the operations of a concurrent deque as well as a general doubly linked list.  ...  single memory word.  ... 
doi:10.1016/j.jpdc.2008.03.001 fatcat:ur5zxdejprhlzlurtav6bg5eli

Supporting Lock-Free Composition of Concurrent Data Objects: Moving Data between Containers

Daniel Cederman, Philippas Tsigas
2013 IEEE transactions on computers  
To show this we have performed case studies on six commonly used lock-free objects (a stack, a queue, a skip-list, a deque, a doubly linked-list and a hash-table) to demonstrate the general applicability  ...  Lock-free data objects offer several advantages over their blocking counterparts, such as being immune to deadlocks, priority inversion and convoying.  ...  compare-and-swap.  ... 
doi:10.1109/tc.2012.248 fatcat:qf2rvbcqrzahhjtsiqanjw3eju

Provably Good and Practically Efficient Parallel Race Detection for Fork-Join Programs

Robert Utterback, Kunal Agrawal, Jeremy T. Fineman, I-Ting Angelina Lee
2016 Proceedings of the 28th ACM Symposium on Parallelism in Algorithms and Architectures - SPAA '16  
We also implemented C-RACER, a race-detector based on WSP-Order within the Cilk Plus runtime system, and evaluated its performance on five benchmarks.  ...  Given a forkjoin program with T1 work and T∞ span, WSP-Order executes it while also maintaining SP relationships in O(T1/P + T∞) time on P processors, which is asymptotically optimal.  ...  Acknowledgments This research was supported in part by National Science Foundation grants CCF-1527692, CCF-1218017, CCF-1150036, CCF-1218188, and CCF-1314633.  ... 
doi:10.1145/2935764.2935801 dblp:conf/spaa/UtterbackAFL16 fatcat:o7za45ehtzerxhfelup4dvvcn4

Processor-Oblivious Record and Replay

Robert Utterback, Kunal Agrawal, I-Ting Angelina Lee, Milind Kulkarni
2017 Proceedings of the 22nd ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming - PPoPP '17  
We provide theoretical guarantees for our record and replay scheme -namely that record is optimal for programs with one lock and replay is near-optimal for all cases.  ...  In this paper, we present a processor-oblivious recordand-replay scheme for such languages where record and replay can use different number of processors and both are scheduled using work stealing.  ...  First, we could target a richer set of primitives that induce happens-before relationships; for instance, try-lock and compare-and-swap.  ... 
doi:10.1145/3018743.3018764 fatcat:xlnlu7fmjrbz5avz37yejqq4lq
« Previous Showing results 1 — 15 out of 108 results