The C++20 Synchronization Library
summary
Claims a compact, runnable tasking runtime that actually builds: a bounded MPMC queue with two semaphores, a thread group using J thread with stop_token interruption, and a termination protocol using a latch so shutdown reliably drains 256 submitted tasks. Shows low‑latency atomics with wait/notify and a fair ticket_mutex alternative, and implements parallel histogram and work‑efficient inclusive scan that coordinate via barrier and aggregates. CUDA C++ libc++ port includes these features for GPUs with hundreds of thousands of threads.
AI-written summary · about
chapters (5)
- 0:00Start
- 5:02Recipe For a Tasking Runtime
- 15:04std::mutex vs std::counting_semaphore
- 50:54Inclusive Scan
- 57:30std:: latch vs std::barrier
related talks
01h 07mAn Introduction to Multithreading in C++20
05mFast Parallel Programming using Modern C++
59mThreads and Locks must Go
01h 04mConcurrency TS2: Improved C++ Concurrency and Lock-free Programming
01h 06mAsynchronous Computation in C++
01h 08mWork Contracts - Rethinking Task Based Concurrency & Parallelism for Low Latency C++
49mThread Pool Elements
56mThe C++ Execution Model
