~/talk

Scale Up with Lock Free Algorithms

Talkat Oracle OpenWorld 2017 · 2017-10-01..10-05· [java]
slides:none on file

Implements a lock-free Treiber stack in Kotlin using AtomicReference, measures with JMH benchmarks on a large AWS instance and reports ~20M ops/sec single-thread and roughly 3× better single-thread latency than locks, but worse under pure write contention; after adding realistic work and a read-heavy mix the lock-free version wins and scales up to the machine limit (about 32 hardware threads). Uses AtomicReferenceFieldUpdater/VarHandle boilerplate tradeoffs and an AtomicFu helper to avoid that boilerplate.

AI-written summary · about

  1. 0:00Intro
  2. 1:08What is shareit
  3. 1:56Why shareit
  4. 5:13Stack
  5. 7:41Does it work
  6. 9:30Does it scale
  7. 12:07Synchronization
  8. 13:20Dead Locks
  9. 14:24Atomic Update
  10. 15:08Atomic Reference
  11. 16:33Lock for Algorithms
  12. 18:53Performance Problem
  13. 19:31Atomic Reference Updater
  14. 20:31War Handle
  15. 21:27Atomic Phone
  16. 22:43Was it worth it
  17. 23:03Results
  18. 25:07Problem
  19. 25:34Simulation
  20. 27:44Simulation Whisperer
  21. 31:02Scaling
  22. 36:49Books
  23. 38:07Benchmarking
  24. 38:38Operations Per Second
  25. 39:14Virus Techniques
  26. 39:34Practical Challenges
  27. 42:42Lock Free vs Synchronized
~/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.