~/talk

Smarter Cpp Atomic Smart Pointers - Efficient Concurrent Memory Management

Talkat CppCon 2022 · 2022-09-11..09-16· [databases, security]
links:none on file
slides:none on file

Argues that combining atomic shared_ptr semantics with deferred reclamation (Hazard pointers or RCU) yields RAII-style APIs that match deferred-reclamation throughput. Shows benchmarks on a 72-core machine with a 100k-key lock-free BST and 99% reads where atomic shared_ptr lags badly but the prototype “deferred shared pointer” using hazard‑ or RCU backends runs nearly on par with hazard pointers or RCU. Presents a GitHub research prototype, explains get_snapshot semantics, and notes it works but isn’t production quality yet.

AI-written summary · about

  1. 0:00Introduction
  2. 0:17Who am I
  3. 0:36Agenda
  4. 1:36Smart Pointers
  5. 2:33Shared Ownership
  6. 2:44Concurrent Memory Management
  7. 3:53The Fundamental Problem
  8. 4:14Goals
  9. 5:01Memory Management Techniques
  10. 5:37Shared Pointer
  11. 6:29Thread Safe
  12. 7:53Atomic Shared Pointer
  13. 8:36Atomic Shared Pointer Benefits
  14. 9:26LockFree Memory Safe Stack
  15. 9:57LockFree Implementation
  16. 10:22Bad News
  17. 10:38Experiment
  18. 11:15Baseline
  19. 14:40Alternative Techniques
  20. 17:55Hazard Pointers
  21. 23:31Performance
  22. 24:23RCU
  23. 26:12Mental Model
  24. 27:28Graph
  25. 28:24State of Things
  26. 28:45RAII and Deferred Reclamation
  27. 30:25Snapshot Source
  28. 34:12Single Writer Linked List
  29. 39:43Hazard Pointer Errors
  30. 41:07Efficient Concurrent Memory Management
  31. 44:19Slide Code
  32. 48:02Performance Test
  33. 49:44Final Remarks
  34. 52:27Wrap Up
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.