~/talk

From Algorithm to Generic, Parallel Code

Talkat CppCon 2019 · 2019-09-15..09-20· [c-and-cpp]
links:none on file
slides:none on file

Parallel inclusive scan is implemented from a textbook algorithm into several concrete backends: a naive recursive version using std::async that runs about 1,500× slower on a 64-core Knights Landing machine, chunked recursion that drops the penalty to ~200×, an iterative chunked variant using Threading Building Blocks task_groups, and an OpenMP loop version that performs best. A custom thread-pool + executor and latch/arrival helpers are built, intermediate storage uses optionals to avoid default construction, and tuning chunk size proves essential.

AI-written summary · about

  1. 0:00Introduction
  2. 3:54Sequential
  3. 5:19Parallelization
  4. 6:52Algorithm
  5. 7:46Piece
  6. 9:26One direction
  7. 9:57Memory
  8. 11:23Benchmark
  9. 12:08The Algorithm
  10. 13:19Lockstep
  11. 15:17Benchmarking
  12. 16:25OpenMP
  13. 17:41InclusiveScan
  14. 19:35Print Principle
  15. 20:33Task Group
  16. 25:06Graph
  17. 27:03Subrange
  18. 28:35Execute
  19. 31:27Task Scheduler
  20. 32:50Executor
  21. 33:30Suspect Pool
  22. 35:03Thread Pool
  23. 35:43Scheduling
  24. 36:06Lock
  25. 36:37Executors
  26. 42:10Parallel Version
  27. 42:53Conclusions
  28. 44:35Questions
  29. 46:48When
~/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.