35 citations found. Retrieving documents...
John D. Valois. Lock-free linked lists using compare-and-swap. In Proceedings of the 14th Annual ACM Symposium of Distributed Computing, pages 214--222, Ottawa, Ontario, Canada, August 2--23, 1995.

 Home/Search   Document Details and Download   Summary   Related Articles   Check  

This paper is cited in the following contexts:
A Lock-Free Approach to Object Sharing in Real-Time Systems - Ramamurthy (1997)   (6 citations)  (Correct)

....and Rappoport [41] by Wing and Gong [81, 82] and byMichael and Scott [64] Anderson and Woll [15] and Lanin and Shasha [56] present implementations for various set operations. Valois presents lock free implementations for various data structures, including queues, lists, trees, and dictionaries [78, 79, 80]. Finally, Massalin and Pu have implemented an entire operating system using lock free data structures such as lists, queues, and stacks [63] Scheduling Conditions In this chapter, wederive conditions to predict the schedulability of task sets that access lock free objects. The scheduling ....

J. Valois. Lock-free linked lists using compare-and-swap. In Proceedings of the Fourteenth Annual ACM Symposium on Principles of Distributed Computing, pages 214-- 222. ACM, August 1995.


A Practical Multi-Word Compare-and-Swap Operation - Harris, Fraser, Pratt (2002)   (6 citations)  (Correct)

....to the next iteration or it terminates because the status eld is no longer UNDECIDED) We evaluated two ways of managing these combined descriptors. In the rst we assume garbage collection is already provided. In the second we introduce reference counting following Valois CAS1 based design [17]. We use per thread lists of free descriptors so that, without contention, a descriptor retains anity for a particular thread. Manipulating reference counts and free lists forms around 10 of the execution time of an un contended CASN. Although this scheme does not allow the storage that holds ....

J. D. Valois. Lock-free linked lists using compare-and-swap. In Proc. 14th PODC pp 214-222, Aug. 1995.


Speculation-Based Techniques for Lockfree Execution of Lock-Based .. - Rajwar (2002)   (Correct)

....Some techniques use instructions stronger than normal reads and writes. Various concurrent queue implementations not relying on mutual exclusion fall in this category [67, 75, 99, 122, 167] Valois proposed lock free implementations of common data structures such as queues, trees, and lists [164, 165]. Massalin and Pu implemented an operating system using only lock free synchronization techniques [119] The terms non blocking synchronization and lock free synchronization have been used interchangeably. A lock based synchronization primitive can be made non blocking with some effort. However, ....

John D. Valois. Lock-Free Linked Lists Using Compare-and-Swap. In Proceedings of the 14th ACM Symposium on Principles of Distributed Computing, pages 214--222, August 1995.


Pragmatic Nonblocking Synchronization for Real-Time Systems - Hohmuth (2002)   (8 citations)  (Correct)

.... of a software implemented multi word CAS) counters and bit fields with widths up to 8 bytes, stacks, and FIFO queues [Tre86, MS96] Valois introduced a lock free singly linked list design supporting insertions and deletions anywhere in a list, as well as several other data structures [Val95a, Val95b] These designs also work with just CAS. However, Greenwald [Gre99] has criticized them for being quite complex, difficult to get right, and computationally expensive. Most of the algorithms for lock free data structure synchronization that have been developed recently assume availability of a ....

John D. Valois. Lock-free linked lists using compare-and-swap. In Proceedings of the Fourteenth Annual ACM Symposium on Principles of Distributed Computing, pages 214--222, Ottawa, Ontario, Canada, August 1995. Erratum available at ftp://ftp.cs.rpi.edu/pub/valoisj/ podc95-errata.ps.gz.


A Pragmatic Implementation of Non-Blocking Linked-Lists - Harris (2001)   (8 citations)  (Correct)

....based on this general scheme are highly centralized and su er poor performance because they essentially use CAS to change a shared global pointer from one version of the structure to the next. Valois was the rst to present an e ective CAS based non blocking implementation of linked lists [Val95]. Although highly distributed, his implementation is very involved. The list is held with auxilliary cells between adjacent pairs of ordinary cells. Auxilliary exist to provide an extra level of indirection so that a cell may be removed by joining together the auxilliary cells adjacent to it. ....

John D. Valois. Lock-free linked lists using compare-and-swap. In Proceedings of the Fourteenth Annual ACM Symposium on Principles of Distributed Computing, pages 214-222, Ottawa, Ontario, Canada, 2-23 August 1995.


Lock-Free Reference Counting - Detlefs, Martin, Moir, Steele, Jr. (2001)   (3 citations)  (Correct)

....and shrink over time, without imposing any restrictions on the underlying memory allocation mechanisms. In contrast, lock free implementations of dynamic data structures often either require maintenance of a special freelist , whose storage cannot in general be reused for other purposes (e.g. [19, 13]) or require special system support such as type stable memory [6] Our methodology is based on the well known 1 We do not specify how objects are created and destroyed; usually malloc and free are not lock free, so implementations based on them are also not lock free. However, most ....

....pointed to by A in order to reflect the creation of a new pointer to it. Because the calling thread does not (necessarily) already have a pointer to this object, it is not safe to update the reference count using a simple CAS, because the object might be freed before the CAS executes. Valois [19] used this approach, and as a result was forced to maintain unused nodes explicitly in a freelist, thereby preventing the space consumption of a list from shrinking over time. Therefore, LFRCLoad uses DCAS to attempt to atomically increment the reference count, while ensuring that the pointer to ....

J. Valois. Lock-free linked lists using compare-and-swap. In Proceedings of the 14th Annual ACM Symposium on Principles of Dsitributed Computing, pages 214--22, 1995. See http://www.cs.sunysb.edu/valois for errata.


Pragmatic Nonblocking Synchronization for Real-Time Systems - Hohmuth, Härtig (2001)   (8 citations)  (Correct)

....the overhead of a softwareimplemented multi word CAS) counters and bitfields with widths up to 8 bytes, stacks, and FIFO queues. 21, 18] Valois introduced a lock free single linked list design supporting insertions and deletions anywhere in a list, as well as several other data structures [23, 22]. These designs also work with just CAS. However, Greenwald [6] has criticized them for being quite complex, difficult to get right, and computationally expensive. Most of the algorithms for lock free data structure synchronization that have been developed recently assume availability of a ....

John D. Valois. Lock-free linked lists using compare-and-swap. In Proceedings of the Fourteenth Annual ACM Symposium on Principles of Distributed Computing, pages 214--222, Ottawa, Ontario, Canada, 2--23 August 1995. Erratum available at ftp://ftp.cs.rpi.edu/ pub/valoisj/podc95-errata.ps.gz.


Non-blocking Synchronization and System Design - Greenwald (1999)   (14 citations)  (Correct)

....since they combine the synchronization with modifications to the data. Unfortunately, few such algorithms exist. Certain needed data structures (such as priority queues) have no known efficient implementations using only conventional NBS approaches and current hardware support (c.f. [100, 46]) Most non blocking data structures must be derived through universal transformations. Universal transformations are mechanical translation protocols that take as input a sequential specification or algorithm and outputs a provably equivalent non blocking concurrent algorithm. They are defined ....

....change during the operation. The reference count approach is inefficient, since it requires CAS or DCAS for each element in the list. The Massalin and Pu optimization is useful but still expensive, and is only applicable in limited cases, such as the scheduler s run queues in Synthesis. Valois [100] designed another implementation of a list based non blocking priority queue. He used only CAS(arguing that DCAS was not generally available) and supported concurrent updates 28 CHAPTER 2. RELATED WORK (both deletions and insertions) In contrast, Herlihy s general technique only allows one ....

[Article contains additional citation context not shown here]

Valois, John. "Lock-Free Linked Lists Using Compare-and-Swap." In Proceedings of the 14th Annual ACM Symposium on Principles of Distributed Computing, Pages 214--222, August 20--23 1995. Ottawa, Ont. Canada.


A New Virtual Memory Implementation for L4/MIPS - Szmajda (1999)   (Correct)

....has been unlinked already.Inthe latter case, nothing needs to be done. In the former case, because the flush is proceeding linearly,the node will be encountered again. The above functions are therefore customized for the map and flush operations. General lock free atomic updates in linked lists [31] have been devised, requiring auxiliary nodes to allocated and atomically exchanged with the original node. The update is then performed only after the node s reference count is decremented to zero, indicating that it is referenced by no other thread. 43 7 Results Aprototype of the LPC trie page ....

John D. Valois, Lock-Free Linked Lists Using Compare-and-Swap,Proceedings of the Fourteenth Annual ACM Symposium on Principles of Distributed Computing, p. 214, 1995. http://www.acm.org/pubs/articles/proceedings/podc/224964/p214-valois/- p214-valois.pdf


Concurrent Update on Multiprogrammed Shared Memory.. - Michael, Scott (1996)   (2 citations)  (Correct)

....inferior to that of the corresponding lock based implementations. Prakash et al. 19, 21] Valois [24, 25] and Michael and Scott [17] proposed non blocking implementations of concurrent link based queues. Treiber [22] proposed a non blocking implementation of concurrent link based stacks. Valois [26] proposed a non blocking implementation of linked lists. Anderson and Woll [3] proposed a non blocking solution to the union find problem. Simple non blocking centralized counters can be implemented using a fetch and add atomic primitive (if supported by hardware) or a read modify check write ....

J. D.Valois. Lock-free Linked Lists using Compare-and-swap. In Proceedings of the Fourteenth ACMSymposium on Principles of Distributed Computing, Ottawa, Ontario, Canada, August 1995.


The Performance of Work Stealing in Multiprogrammed.. - Blumofe, Papadopoulos (1998)   (5 citations)  (Correct)

....[14] is fairly recent, however. The idea of non blocking and wait free synchronization was developed by Herlihy [29] There has been a long line of work attempting to make the idea more practical via universal constructions [11, 28] useful primitives [2, 3, 39] and specific data objects [3, 36, 45]. In fact, our non blocking implementation of work stealing uses the bounded tags technique of [39] Nevertheless, to this day, few applications or systems have been built with non blocking synchronization. Of notable exception is a study of non blocking applications [37] and two non blocking ....

John D. Valois. Lock-free linked lists using compare-and-swap. In Proceedings of the 14th Annual ACM Symposium on Priciples of Distributed Computing (PODC), Ottawa, Canada, August 1995.


Non-Blocking Algorithms and Preemption-Safe Locking on.. - Michael, Scott (1998)   (17 citations)  (Correct)

....for non blocking stacks. However, Treiber s stack is very simple and can be expected to be quite efficient. We also observe that a stack derived from Herlihy s general methodology, with unnecessary copying removed, seems to be simple enough to compete with lock based algorithms. Valois [43] proposed a non blocking implementation of linked lists. Anderson and Woll [3] proposed a nonblocking solution to the union find problem. Simple non blocking centralized counters can be implemented trivially using a fetch and add atomic primitive (if supported by hardware) or a ....

J. D. Valois. Lock-Free Linked Lists Using Compare-and-Swap. In Proceedings of the Fourteenth ACM Symposium on Principles of Distributed Computing, pages 214--222, Ottawa, Ontario, Canada, August 1995.


Hood: A User-Level Thread Library for Multiprogramming.. - Papadopoulos (1998)   (Correct)

....[14] is fairly recent, however. The idea of non blocking and wait free synchronization was developed by Herlihy [30] There has been a long line of work attempting to make the idea more practical via universal constructions [11, 29] useful primitives [2, 3, 41] and specific data objects [3, 38, 49]. In fact, our non blocking implementation of work stealing uses the bounded tags technique of [41] Nevertheless, to this day, few applications or systems have been built with non blocking synchronization. Of notable exception is a study of non blocking applications [39] and two non blocking ....

John D. Valois. Lock-free linked lists using compare-and-swap. In Proceedings of the 14th Annual ACM Symposium on Priciples of Distributed Computing (PODC), Ottawa, Canada, August 1995.


How to share a data structure: A fast timing-based solution - Alur, Taubenfeld (1997)   (Correct)

.... in [Lam83, HW90, HW87] A non blocking set manipulation algorithm is given in [LS88] A non blocking Union Find algorithm is designed in [AW91] A non blocking implementation of a priority queue is presented in [IR93] Practical and efficient implementations of nonblocking queues are described in [Val95, MS96]. There are many constructions of concurrent B trees, mainly for use in databases; see for example [BS77, LY81, Sag85] AVL trees, 2 3 trees, and a distributed extendible hash file have been implemented in [Ell80a, Ell80b, Ell85] A distributed dictionary structure is studied in [Pel90] 2 ....

Valois, J. D. Lock-Free Linked List Using Compare-and-Swap. In Proceedings of the 14th Annual ACM Symposium on Principals of Distributed Computing (PODC), pages 214-223, August 1995.


Implementing Hard Real-Time Transactions on Multiprocessors - Anderson, Jain, Ramamurthy (1997)   (Correct)

....our algorithm outperforms Greenwald and Cheriton s. Our algorithm also outperforms theirs as the length of the list is increased, although graphs showing this have been omitted due to space limitations. Another lock free list implementation, which uses only CAS, was recently proposed by Valois [18]. Although we did not test against Valois algorithm, Greenwald and Cheriton report that their algorithm is faster than his algorithm by a factor of about three under low contention, and about ten under high contention [8] Greenwald and Cheriton also reported that their algorithm outperformed a ....

J. Valois, "Lock-Free Linked Lists using Compare-and-Swap", Proceedings of the 14th ACM Symposium on Principles of Distributed Computing , 1995, pp. 214-222.


Implementing Wait-Free Objects on Priority-Based Systems - Anderson, Ramamurthy, Jain (1997)   (11 citations)  (Correct)

....to the granularity of the timing routines. The total time required for our algorithm was typically 1.5 to 2 times higher than that required for the lock free algorithm (with 1. 5 being more typical) Another lock free list implementation, which uses only CAS, was recently proposed by Valois [13]. Although we did not test against Valois algorithm, Greenwald and Cheriton report that their algorithm is faster than his algorithm by a factor of about ten under high contention [7] Based on this, we believe that our algorithm would perform better than Valois algorithm on a priority based ....

J. Valois, "Lock-Free Linked Lists using Compare-andSwap ", Proc. of the 14th ACM Symposium on Principles of Distributed Computing, 1995, pp. 214-222.


Non-Blocking Algorithms and Preemption-Safe Locking on.. - Michael, Scott (1998)   (17 citations)  (Correct)

....of these techniques has been implemented on a real machine. The simulation based experimental results of Herlihy and Moss show performance significantly inferior to that of spin locks. Stone et al. did not present experimental results. 3. 2 Data Structure Specific Non Blocking Algorithms Treiber [41] proposed a non blocking implementation of concurrent link based stacks. It represents the stack as a singly linked list with a Top pointer. It uses compare and swap to modify the value of Top atomically. Commented pseudo code of Treiber s non blocking stack algorithm is presented in Figure 1. No ....

....top.count 1] # Try to swing Top to the next node pvalue = top.ptr value # Pop is done. Read value free(top.ptr) # It is safe now to free the old node return TRUE # The stack was not empty, pop succeeded Figure 1: Structure and operation of Treiber s non blocking concurrent stack algorithm [41]. ADD(X: pointer to integer, value: integer) integer repeat # Keep trying until SC succeeds count = LL(X) # Read the current value of X until SC(X, count value) return count # Add is done, return previous value Figure 2: A non blocking concurrent counter using load linked and store conditional. ....

[Article contains additional citation context not shown here]

J. D. Valois. Lock-free Linked Lists using Compare-and-swap. In Proceedings of the Fourteenth ACM Symposium on Principles of Distributed Computing, pages 214--222, Ottawa, Ontario, Canada, August 1995.


Implementing Wait-Free Objects on Priority-Based.. - Anderson, Ramamurthy.. (1997)   (11 citations)  (Correct)

....our algorithm outperforms Greenwald and Cheriton s. Our algorithm also outperforms theirs as the length of the list is increased, although graphs showing this have been omitted due to space limitations. Another lock free list implementation, which uses only CAS, was recently proposed by Valois [13]. Although we did not test against Valois algorithm, Greenwald and Cheriton report that their algorithm is faster than his algorithm by a factor of about three under low contention, and about ten under high contention [6] While our algorithm does not dramatically outperform Greenwaldand ....

J. Valois, "Lock-Free Linked Lists using Compare-and-Swap", Proc. of the 14th ACM Symposium on Principles of Distributed Computing, 1995, pp. 214-222.


Correction of a Memory Management Method for Lock-Free Data.. - Michael, Scott (1995)   (9 citations)  (Correct)

....reused if no private process pointers or shared pointers point to it. Like most reference count mechanisms, the method is usable only with acyclic structures, as it is vulnerable to memory leakage with circular structures. Valois presents algorithms for non blocking queues [2] and linked lists [4] that do not allow immediate memory reuse of deleted nodes. They need to be used with the associated memory management method. We discovered race conditions in the memory management method and its application to lock free algorithms. The races may cause active nodes to be incorrectly reused, ....

J. D. Valois. Lock-free Linked Lists using Compare-and-swap. In Proceedings of the Fourteenth ACM Symposium on Principles of Distributed Computing, Ottawa, Ontario, Canada, August 1995.


ERRATA Lock-Free Linked Lists Using Compare-and-Swap - John Valois November   Self-citation (Valois)   (Correct)

....Lock Free Linked Lists Using Compare and Swap John D. Valois November 7, 1995 1 Introduction In [4], we describe algorithms that implement a singly linked list data structure in a lock free manner; i.e. the list can be manipulated concurrently by many processes without the use of critical sections. Maged Michael of the University of Rochester has discovered an error in these algorithms [2] ....

J. D. Valois. Lock-free linked lists using compare-and-swap. In Proceedings of the Fourteenth Symposium on Principles of Distributed Computing, pages 214--222, 1995. 4


Landing OpenMP on Cyclops-64: An Efficient Mapping of OpenMP .. - Cuvillo, Zhu, Gao (2006)   (Correct)

No context found.

John D. Valois. Lock-free linked lists using compare-and-swap. In Proceedings of the 14th Annual ACM Symposium of Distributed Computing, pages 214--222, Ottawa, Ontario, Canada, August 2--23, 1995.


Distributed Queue-based Locking using Advanced Network.. - Ananth Devulapalli South (2005)   (Correct)

No context found.

J.D. Valois. Lock-free linked lists using compare-and-swap. In PODC '95, pages 214--222, 1995.


A Lazy Concurrent List-Based Set Algorithm - Heller, Herlihy, Luchangco.. (2005)   (Correct)

No context found.

J. Valois. Lock-free linked lists using compare-and-swap. In ACM Symposium on Principles of Distributed Computing, pages 214--222, 1995.


Allocating Memory in a Lock-Free Manner - Gidenstam, Papatriantafilou.. (2004)   (Correct)

No context found.

John D. Valois. Lock-free linked lists using compare-and-swap. In Proceedings of the 14th Annual ACM Symposium on Principles of Distributed Computing (PODC '95), pages 214-222, New York, August 1995. ACM. 22


Non-Blocking Synchronization and Object-Oriented Operating System .. - Ananian   (Correct)

No context found.

John D. Valois. Lock-free linked lists using compare-and-swap. In Proceedings of the 14th Annual ACM Symposium on Principles of Distributed Computing (PODC), pages 214--222. ACM Press, August 1995.


Allocating Memory in a Lock-Free Manner - Gidenstam, Papatriantafilou.. (2004)   (Correct)

No context found.

John D. Valois. Lock-free linked lists using compare-and-swap. In Proceedings of the 14th Annual ACM Symposium on Principles of Distributed Computing (PODC '95), pages 214-222, New York, August 1995. ACM. 22


Ecient Almost Wait-free Parallel Accessible Dynamic Hashtables - Gao Groote Hesselink (2004)   (Correct)

No context found.

Valois, J.D.: Lock-free linked lists using compare-and-swap. Proceedings of the 14th Annual Principles of Distributed Computing, pages 214-222, 1995.


Technical Report - Number Computer Laboratory (1993)   (2 citations)  (Correct)

No context found.

John D. Valois. Lock-Free Linked Lists Using Compareand -Swap. In Proceedings of the 14th Annual ACM Symposium on Principles of Distributed Computing (PODC '95), pages 214--222, August 1995. (pp 24, 25)


A Comparison of Task Pools for Synamic Load Balancing of.. - Korch, Rauber   (Correct)

No context found.

J. D. Valois. Lock-free linked lists using compare-andswap. In Symposium on Principles of Distributed Computing, pages 214--222, 1995.


Avoiding Blocking System Calls in a User-Level Thread Scheduler.. - Borg (2001)   (2 citations)  (Correct)

No context found.

J. Valois. Lock-free linked lists using compare-and-swap. In Proceedings of the 14th Annual ACM Symposium on Principles of Distributed Computing. August 1995.


Almost Wait-free Resizable Hashtables - Gao Department Of   (Correct)

No context found.

Valois, J.D.: Lock-free linked lists using compareand -swap. Proceedings of the 14th Annual Principles of Distributed Computing, 1995, pp. 214--222.


Non-Blocking Synchronization and Object-Oriented.. - Scott Ananian Computer   (Correct)

No context found.

John D. Valois. Lock-free linked lists using compare-and-swap. In Proceedings of the 14th Annual ACM Symposium on Principles of Distributed Computing (PODC), pages 214--222. ACM Press, August 1995.


Efficient Object Sharing in Shared-Memory Multiprocessors - Moir (1996)   (1 citation)  (Correct)

No context found.

J. Valois, "Lock-Free Linked Lists Using Compare-and-Swap", Proceedings of the 14th Annual ACM Symposium on Principles of Distributed Computing , 1995, pp. 214-222.


Managing Long Linked Lists Using Lock Free Techniques - Farook, Graham   (Correct)

No context found.

J.D. Valois (1995). Lock-Free Linked Lists Using Compare-And-Swap, Proceedings of the 14 th International Symposium on Principles of Distributed Computing, pp. 214-222.


A Three-Slot Asynchronous Reader/Writer Mechanism for.. - Chen, Burns (1997)   (1 citation)  (Correct)

No context found.

Valois, J. Lock-Free Linked Lists Using Compare-and-Swap. In Proc. of the 14th ACM Annual Symposium on Principles of Distributed Computing (PODC) (1995).

Online articles have much greater impact   More about CiteSeer.IST   Add search form to your site   Submit documents   Feedback  

CiteSeer.IST - Copyright Penn State and NEC