Preemption is GC for memory reordering (2019)
Summary
The article argues that preemption can be treated as a sunk cost like garbage collection and can be exploited as a barrier mechanism to order memory accesses in userspace lock-free code. It discusses event counts, asymmetric synchronization (hazard pointers, epoch reclamation), and OS-assisted barriers such as membarrier and barrierd, with analysis of the x86-TSO memory model and practical timings.