~/talk

Heterogeneous Programming in C++ today

Talkat ACCU 2018 · 2018-04-11..04-14· [c-and-cpp, webassembly]
linkedin:mcwong2
slides:none on file

C++ is moving from CPU-only parallelism toward practical heterogeneous programming using single-source C++ via SYCL/SPIR and vendor runtimes (OpenCL ICDs, CUDA, HSA). The approach uses implicit data movement with buffers/accessors, named kernel lambdas for ABI stability, a multi-compilation model and executor/execution-policy plumbing. A concrete result: a SYCL-backed GPU implementation of vector add shows about a 4x speedup vs CPU when iteration counts justify transfer cost. Expect vectors and execution facilities in C++20, heterogeneous offload via TS and runtimes afterward.

AI-written summary · about

  1. 0:00Introduction
  2. 1:07C++ and heterogeneous computing
  3. 13:24Why the rush to parallelism
  4. 21:14C++ 20 and parallelism
  5. 39:53Heterogeneous programming fundamentals
  6. 53:46Performance portability challenges
  7. 1:09:18Modern C++ heterogeneous tools
  8. 1:21:40Sycl and data movement
  9. 1:31:23Summary and future
~/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.