~/talk

Evolving an Actor Library Based on Lessons Learned from Large-Scale Deployments

Talkat CppCon 2021 · on Monday, 2021-10-25· at 11:00· online· [microservices]
github:benh
slides:none on file

Built a pre‑C++11 actor+future library called libprocess to scale Apache Mesos to 75,000 physical machines, finds the implementation causes excessive synchronization and dynamic allocations, and rebuilds it as eventuals that use continuations (lazy, coroutine‑friendly) instead of eager futures/promises. The new design shows how continuations compose, how scheduling binds continuations back to the prior executor, why actor mailboxes avoid user locks, and where memory and execution resumption must be allocated or pinned for performance.

AI-written summary · about

  1. 0:00Introduction
  2. 1:08Chapters
  3. 1:54Motivation
  4. 2:12Challenges
  5. 2:34Motivation Example
  6. 2:48Function Composition
  7. 3:31Wait
  8. 4:00Threads
  9. 4:30Code routines
  10. 5:15Callbacks
  11. 5:41Futures Promises
  12. 7:16Future Promises
  13. 9:03Simple Function Composition
  14. 11:00Futures and Promises
  15. 11:41Grammar Check
  16. 13:20Waiting
  17. 13:31Concurrency
  18. 14:18Thread Pool
  19. 14:53Multiple Problems
  20. 15:12Solutions
  21. 16:22Actors
  22. 17:50Poltergeist
  23. 18:17C Actor Libraries
  24. 24:19C Star Project
  25. 25:38Why Actors Need Futures
  26. 26:10Control Flow
  27. 27:09Transforming Actors
  28. 30:55mutexes
  29. 31:57asynchronous mutexes
  30. 34:06Evolving the library
  31. 36:42Revisiting the problem
  32. 38:00Why do we need locks
  33. 40:14And can we avoid dynamic allocation
  34. 40:59Using callbacks everywhere
  35. 43:30Cancellation paths
  36. 43:43Memory
  37. 43:58Memory Allocation
  38. 45:39Continuation
  39. 48:41Eventuallys
  40. 50:05Eventually
  41. 50:34Post
  42. 51:07SpellCheck
  43. 51:29GrammarCheck
  44. 52:22Future
  45. 59:30Conclusion
~/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.