Linearizable

Group of algorithms linearizable algorithms.


File Index

File Description Linearizable Lock-free SMR-required Unbounded-Queue
vsync/map/hashtable_standard.h This is a lock-free listset based hashtable.
vsync/map/listset_coarse.h This implementation of listset uses one lock to serialize all operations.
vsync/map/listset_fine.h This implementation of listset uses fine grained locking.
vsync/map/listset_lazy.h This is a partially parallel implementation with lock-free get.
vsync/map/listset_lf.h Lock-free implementation of listset.
vsync/map/listset_opt.h This implementation is an optimized verison of listset_fine.
vsync/map/simpleht.h Simple lock-free hashtable.
vsync/map/skiplist_lf.h Lock-free concurrent skiplist.
vsync/map/treeset_bst_coarse.h This implementation of treeset uses unbalanced binary search tree (BST) and coarse-grained locking.
vsync/map/treeset_bst_fine.h This implementation of treeset uses unbalanced binary search tree (BST) and fine-grained locking.
vsync/map/treeset_rb_coarse.h This implementation of treeset uses balanced red-black tree (RB) and coarse-grained locking.
vsync/map/treeset_rb_fine.h This implementation of treeset uses balanced red-black tree (RB) and fine-grained locking.
vsync/queue/bounded_locked.h Multi-producer, multi-consumer bounded queue protected by a spinlock.
vsync/queue/bounded_mpmc.h Lockless, multi-producer, multi-consumer bounded queue.
vsync/queue/bounded_spsc.h Single-producer, single-consumer, wait-free bounded queue.
vsync/queue/cachedq.h Lockless, multi-producer, multi-consumer queue.
vsync/queue/unbounded_queue_lf.h Lock-free unbounded queue.
vsync/queue/unbounded_queue_lf_recycle.h Lock-free recycle unbounded queue.
vsync/queue/unbounded_queue_total.h Unbounded blocking total queue.
vsync/queue/vqueue_prio_heap_based.h Unbounded heap-based priority queue.
vsync/queue/vqueue_prio_skiplist_based.h Skiplist-based priority queue implementation.
vsync/queue/vqueue_prio_stack_array_based.h Array-based bounded priority queue.
vsync/stack/elimination_stack.h Unbounded lock-free stack with elimination backoff.
vsync/stack/quack.h Lockfree concurrent stack/queue (Treiber stack)
vsync/stack/xbo_stack.h Unbounded lock-free stack with exponential backoff.