~/talk

Threads Considered Harmful

Talkat ACCU 2021 Online · 2021-03-10..03-13· [concurrency]
links:none on file
slides:none on file

Argues that raw threads and locks are replaced by modeling work as concurrency graph of independent tasks, eliminating explicit mutexes; introduces concrete primitives like task serializers, read/write and N-serializers, and shows a lock-free scheduler design. Implements a prototype library Concord and reworks an H.264 decoder benchmark: the task-based version matches or slightly outperforms a pthreads implementation and approaches the ideal on a 6-core (12 HT) machine, while avoiding deadlocks and improving composability.

AI-written summary · about

  1. 0:00Start
  2. 0:20Threads Considered Harmful
  3. 2:43structured programming
  4. 5:00problems with threads
  5. 5:40cost of locking
  6. 5:50synchronization
  7. 7:13locks do not scale
  8. 8:00adding a lot of threads
  9. 8:462 threads, 1 core
  10. 13:52example 2
  11. 14:45# threads = # cores
  12. 15:36composability
  13. 17:20threads & locks
  14. 17:56concurrency vs parallelism
  15. 18:42a single-threaded application
  16. 21:26a multi-threaded application
  17. 26:50general algorithm
  18. 28:08two key moments
  19. 28:42theoretical results
  20. 29:55high performance
  21. 32:55two threads with a mutex
  22. 34:24a better notation
  23. 34:57a task with restrictions
  24. 38:15implementation details
  25. 39:14task executors
  26. 39:53read-write mutexes
  27. 40:38same notation
  28. 43:28semaphores
  29. 44:03improving notation
  30. 44:19problem representation
  31. 47:41systematic way
  32. 48:17maximizing throughput
  33. 50:321. task systems are composable
  34. 53:282. decomposing tasks
  35. 54:29user account serializer
  36. 55:28task continuations
~/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.