~/talk

C++17 Parallel Algorithms

Talkat CppCon 2017 · 2017-09-24..09-29· [c-and-cpp]
links:none on file
slides:none on file

C++17 adds standardized parallel algorithms that accept execution policies (seq, par, par_unseq) and require element access functions to be race free, copyable, and usually non-throwing (exceptions cause terminate); input-iterator support is optional. Implementations are partial: HPX is closest, mainstream libs omit par_unseq and compiler support is lacking. Benchmarks on a 64-core Xeon Phi show huge speedups (map-like heavy workloads up to ~100×, sort ~8–16×); desktop reaches ~4× for CPU-bound work; small or memory-bound ranges often slow down.

AI-written summary · about

  1. 0:00Intro
  2. 0:15WARNING!
  3. 0:33Lots of Concurrency
  4. 1:20C++ is Sequential
  5. 2:30Example
  6. 3:37Use OpenMP
  7. 4:45Use std::thread
  8. 6:22Use TBB
  9. 7:24Parallel Algorithm
  10. 9:16Status Quo
  11. 9:29Objective
  12. 12:19Concurrency Model
  13. 13:48Element Access Functions
  14. 15:57Execution Policy
  15. 18:18std::execution::seq
  16. 22:28std::execution::par_unseq
  17. 23:54Supported Algorithms
  18. 25:31Algorithms: heap
  19. 25:59Algorithms: permutation
  20. 26:17Algorithms: overlapping
  21. 27:06Algorithms: oddballs
  22. 27:51Algorithms: map generale_n
  23. 29:05Additional Constraints
  24. 29:45Algorithms: reduce
  25. 32:49Algorithms: scan
  26. 35:47Algorithms: fused
  27. 36:42Algorithms: gather
  28. 37:22Algorithms: special
  29. 37:56Availability
  30. 39:35Current Implementations
  31. 41:26HPX Usage
  32. 42:06Results: Machines
  33. 44:00Results: map gcc phi
  34. 46:23Results: work gcc phi
  35. 47:53Results: sort gcc phi
  36. 48:30Results: reduce
  37. 49:25Results: redu gcc ARM
  38. 50:09Usage Guidance
  39. 50:41Future Directions
  40. 52:42Conclusions
~/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.