The One-Decade Task: Putting std::atomic in CUDA. - Olivier Giroux - CppCon 2019
Why Hacker News recommends it
Cited as a reference when discussing NVIDIA's C++ memory model, libcu++, and GPU C++ resources.
What it is
Olivier Giroux's CppCon 2019 talk recounts the roughly ten-year effort to bring std::atomic and the C++ memory model to CUDA GPUs, through ten stories from that work.
Recommended by 0 HN commenters across 0 different months, 2019 to 2022.
What Hacker News said
Cites pjmlp · 2019-12 · on “Taking ML to production with Rust”
Right now, NVidia is designing their GPGPUs to run C++ code. [LINK] [this video] With Intel just releasing oneAPI (aka Data Parallel C++) last month, and Khronos pushing SYCL as alternative to CUDA C++. It took 30 years for C++ to reach this stage, and in some domains (like embedded) it is still fighting for relevance. That is something to keep in mind whenever to advocate Rust as replacement for Domain XYZ.
Cites davvid · 2020-09 · on “Libcu++: Nvidia C++ Standard Library”
Here's a somewhat related talk from CppCon '19: "The One-Decade Task: Putting std::atomic in CUDA" [this video]
Cites pjmlp · 2021-04 · on “Learn C in Y Minutes”
CppCon 2019: Olivier Giroux “The One-Decade Task: Putting std::atomic in CUDA.” [this video] Future of ISO and CUDA C++ [LINK] Thrust, the CUDA C++ template library [LINK] Optix, single-ray shader programming model using C++, and ray Tracing acceleration using RT Cores. [LINK] Phew, so many wrappers yet to list.
Cites pjmlp · 2021-08 · on “Looking into Zig”
Sure, "CppCon 2016: “Bringing Clang and C++ to GPUs: An Open-Source, CUDA-Compatible GPU C++ Compiler" [LINK] "CppCon 2019: Olivier Giroux “The One-Decade Task: Putting std::atomic in CUDA.”" [this video] "Octane render. The Future of GPU Rendering: Real-Time Raytracing" (with CUDA) [LINK] NVIDIA HPC SDK [LINK]
Cites moonchild · 2022-10 · on “My mesh shaders talk at XDC 2022”
> I really wish that everybody would finally admit that the "fixed function pipeline" is dead There is a great deal of space between 'fixed function pipeline' (which no one is using) and 'all compute all the time' (which pretty much no one is using for real-time graphics either). > GPUs don't yet have a well-defined memory model Nvidia has a memory model. (I have heard--from an nvidia employee--that amd plays a bit more fast and loose.) [this video] > GPUs don't have the equivalent of an MMU--so they can't be partitioned or protected. etc. You do not need an MMU to partition or to protect. (Not to say that GPU security isn't a shitshow.) > The problem is that switching to a "compute" model and ma