The SPARC architecture manual (version 9)
The SPARC architecture manual (version 9)
Lock-free linked lists using compare-and-swap
Proceedings of the fourteenth annual ACM symposium on Principles of distributed computing
Simple, fast, and practical non-blocking and blocking concurrent queue algorithms
PODC '96 Proceedings of the fifteenth annual ACM symposium on Principles of distributed computing
Practical implementations of non-blocking synchronization primitives
PODC '97 Proceedings of the sixteenth annual ACM symposium on Principles of distributed computing
Nonblocking algorithms and preemption-safe locking on multiprogrammed shared memory multiprocessors
Journal of Parallel and Distributed Computing
Proceedings of the twentieth annual ACM symposium on Principles of distributed computing
Safe memory reclamation for dynamic lock-free objects using atomic reads and writes
Proceedings of the twenty-first annual symposium on Principles of distributed computing
A Pragmatic Implementation of Non-blocking Linked-Lists
DISC '01 Proceedings of the 15th International Conference on Distributed Computing
Even Better DCAS-Based Concurrent Deques
DISC '00 Proceedings of the 14th International Conference on Distributed Computing
Non-blocking Synchronization and System Design
Non-blocking Synchronization and System Design
How to Make a Multiprocessor Computer That Correctly Executes Multiprocess Programs
IEEE Transactions on Computers
Dynamic-sized lockfree data structures
Dynamic-sized lockfree data structures
The repeat offender problem: a mechanism for supporting dynamic-sized lock-free data structures
The repeat offender problem: a mechanism for supporting dynamic-sized lock-free data structures
A Practical Multi-word Compare-and-Swap Operation
DISC '02 Proceedings of the 16th International Conference on Distributed Computing
Nonblocking k-compare-single-swap
Proceedings of the fifteenth annual ACM symposium on Parallel algorithms and architectures
Distributed Computing - Special issue: Selected papers from PODC '01
Split-ordered lists: lock-free extensible hash tables
Proceedings of the twenty-second annual symposium on Principles of distributed computing
Language support for lightweight transactions
OOPSLA '03 Proceedings of the 18th annual ACM SIGPLAN conference on Object-oriented programing, systems, languages, and applications
Hazard Pointers: Safe Memory Reclamation for Lock-Free Objects
IEEE Transactions on Parallel and Distributed Systems
DCAS is not a silver bullet for nonblocking algorithm design
Proceedings of the sixteenth annual ACM symposium on Parallelism in algorithms and architectures
Bringing practical lock-free synchronization to 64-bit applications
Proceedings of the twenty-third annual ACM symposium on Principles of distributed computing
Wait-Free Reference Counting and Memory Management
IPDPS '05 Proceedings of the 19th IEEE International Parallel and Distributed Processing Symposium (IPDPS'05) - Papers - Volume 01
Revocable locks for non-blocking programming
Proceedings of the tenth ACM SIGPLAN symposium on Principles and practice of parallel programming
Fast and lock-free concurrent priority queues for multi-thread systems
Journal of Parallel and Distributed Computing
Dynamic circular work-stealing deque
Proceedings of the seventeenth annual ACM symposium on Parallelism in algorithms and architectures
McRT-Malloc: a scalable transactional memory allocator
Proceedings of the 5th international symposium on Memory management
Split-ordered lists: Lock-free extensible hash tables
Journal of the ACM (JACM)
Lock-free parallel and concurrent garbage collection by mark&sweep
Science of Computer Programming
A general lock-free algorithm using compare-and-swap
Information and Computation
Understanding Tradeoffs in Software Transactional Memory
Proceedings of the International Symposium on Code Generation and Optimization
Performance of memory reclamation for lockless synchronization
Journal of Parallel and Distributed Computing
Trace-based Derivation of a Lock-Free Queue Algorithm
Electronic Notes in Theoretical Computer Science (ENTCS)
Why the grass may not be greener on the other side: a comparison of locking vs. transactional memory
Proceedings of the 4th workshop on Programming languages and operating systems
Lock-free deques and doubly linked lists
Journal of Parallel and Distributed Computing
Verifying Michael and Scott's lock-free queue algorithm using trace reduction
CATS '08 Proceedings of the fourteenth symposium on Computing: the Australasian theory - Volume 77
Practical, Fast and Simple Concurrent FIFO Queues Using Single Word Synchronization Primitives
Ada-Europe '08 Proceedings of the 13th Ada-Europe international conference on Reliable Software Technologies
Proceedings of the 2009 ACM SIGPLAN conference on Programming language design and implementation
Scalable nonblocking concurrent objects for mission critical code
Proceedings of the 24th ACM SIGPLAN conference companion on Object oriented programming systems languages and applications
Transient blocking synchronization
Transient blocking synchronization
A simple optimistic skiplist algorithm
SIROCCO'07 Proceedings of the 14th international conference on Structural information and communication complexity
Verifying lock-freedom using well-founded orders
ICTAC'07 Proceedings of the 4th international conference on Theoretical aspects of computing
Why the grass may not be greener on the other side: a comparison of locking vs. transactional memory
ACM SIGOPS Operating Systems Review
Making lockless synchronization fast: performance implications of memory reclamation
IPDPS'06 Proceedings of the 20th international conference on Parallel and distributed processing
Preemption adaptivity in time-published queue-based spin locks
HiPC'05 Proceedings of the 12th international conference on High Performance Computing
Lock-free and practical doubly linked list-based deques using single-word compare-and-swap
OPODIS'04 Proceedings of the 8th international conference on Principles of Distributed Systems
LHlf: lock-free linear hashing (poster paper)
Proceedings of the 17th ACM SIGPLAN symposium on Principles and Practice of Parallel Programming
A lazy concurrent list-based set algorithm
OPODIS'05 Proceedings of the 9th international conference on Principles of Distributed Systems
Verifying concurrent memory reclamation algorithms with grace
ESOP'13 Proceedings of the 22nd European conference on Programming Languages and Systems
Structured deferral: synchronization via procrastination
Communications of the ACM
Randomized loose renaming in o(log log n) time
Proceedings of the 2013 ACM symposium on Principles of distributed computing
Structured Deferral: Synchronization via Procrastination
Queue - Concurrency
Hi-index | 0.02 |
We define the Repeat Offender Problem (ROP). Elsewhere, we have presented the first dynamic-sized, lock-free data structures that can free memory to any standard memory allocator--even after thread failures--without requiring special support from the operating system, the memory allocator, or the hardware. These results depend on a solution to the ROP problem. Here we present the first solution to the ROP problem and its correctness proof. Our solution is implementable in most modern shared memory multiprocessors.