~/talk

The One-Decade Task: Putting std::atomic in CUDA.

Talkat CppCon 2019 · 2019-09-15..09-20· [computing-history]
links:none on file
slides:none on file

A ten‑year engineering effort implements std::atomic in CUDA, with a concise claim: provide C++ atomics on GPUs by formalizing a GPU memory model, proving properties with SAT tooling and Alloy, and updating the libc++ <atomic> header and 100+ builtins. The team encodes litmus tests (MP), finds counterexamples with cppmem and Alloy, refines to a 180‑line model emphasizing single‑copy atomicity, and ships working implementations for Volta and Pascal that integrate host/device atomics.

AI-written summary · about

  1. 0:00Introduction and context
  2. 3:05Side projects and early efforts
  3. 6:34Formalism and memory model fixes
  4. 12:57Redesigning the GPU memory model
  5. 20:49Partial order models and litmus tests
  6. 34:09Debugging with Alloy
  7. 41:43Sequential consistency in Alloy
  8. 51:29C++11 atomic model issues
  9. 55:08Volta hardware and atomic support
  10. 58:19CUDA atomic library implementation
  11. 1:00:33Adopting std::atomic in CUDA
  12. 1:03:50Conclusion and call to action
~/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.