Tag
compare-and-swap
- Sep 11, 2026 Lock-Free Linked Lists and the Reclamation Problem Compare-and-swap can insert and delete on a singly linked list without locks, but freeing a removed node requires hazard pointers or epoch tracking to stop reuse. data structures
- Aug 26, 2026 Read-Modify-Write Atomicity and the Ordering It Carries Why an atomic increment cannot be built from a load and a store, what compare-and-swap costs in coherence traffic, and how an atomic operation acts as a fence. computer architecture
- May 16, 2026 Compare-and-Swap and Why the Retry Loop Must Re-read How a conditional store becomes a universal synchronisation primitive, why weak compare-and-exchange may fail spuriously, and what makes a CAS loop terminate. systems programming
- Jul 14, 2025 The ABA Problem in Treiber Stacks Why a single compare-and-swap suffices to push onto a Treiber stack but not to pop from it, what the address comparison cannot detect, and which remedies actually close the window. systems programming
- May 6, 2025 Atomic Read-Modify-Write and the Mutual Exclusion Problem Why a flag plus a check cannot keep two threads out of the same critical section, and what a single indivisible read-modify-write instruction changes about the problem. operating systems
- Aug 18, 2024 Lock-Free Reclamation: ABA, Tagged Pointers, and Hazard Pointers Why a compare-and-swap pop can succeed against a pointer that was freed and reused, and what tagging, hazard pointers, and epoch schemes each cost to close that hole. operating systems
- Feb 27, 2024 Compare-and-Swap Retry Loops and the ABA Problem on a Versioned Register Why an optimistic update loop can silently apply a stale decision, how version numbers close the window, and what the loop costs when contention is high. distributed systems
- Nov 26, 2023 Compare-and-Swap Retry Loops Under Contention Why a lock-free read-modify-write loop that is faster than a mutex with two threads is slower with twenty, and how to bound, batch, or replace the retry. performance engineering