New locks for the old kernel
summary
Introduces two concrete kernel-ready designs: CNA is a one-word (4‑byte) lock—an MCS variant that keeps handoffs on the same NUMA node, matches MCS at low contention and matches state‑of‑the‑art hierarchical NUMA locks under contention while using one word of state and yielding >2× throughput in the kernel slow path past 16 threads. BRAVO is a wrapper that adds two integers plus a shared visible readers table (4k entries used in eval), accelerates read‑dominated workloads (page‑fault benchmark scales past 16 threads) and leaves write‑heavy mmap performance unchanged.
AI-written summary · about
chapters (13)
- 0:00Start
- 3:25Progress Guarantees
- 5:10Non-Uniform Memory Access
- 5:36Numeral Locks
- 12:07Hierarchy of Low Level Locks
- 15:21Where and Why Size Matters
- 28:27Performance Evaluation of Cna
- 31:58Shuffle Reduction Optimization
- 34:17What Are Other Challenges That We Need To Solve for Better New Awareness in Rsu
- 45:19Writers
- 50:23Memory Consumption of Bravo
- 54:27Integration with the Linux Scanner
- 1:03:05Synchronizing Clocks
related talks
40mKernel Locking Engineering
31mEnhancing Scalability of the Vmalloc Mechanism in the Linux Kernel
21mPreview: Operating Systems
13mLockify: Understanding Linux Distributed Lock Management Overheads in Shared Storage
30mProactive Software Defense against Side Channel Attacks
38mKernel Hardening: Protecting the Protection Mechanisms
32mA mechanism to isolate CPU topology information in the Linux kernel -- CPU Namespace
30mKernel Hardening With Protection Keys
