Lightning Talk: Making Friends With CUDA Programmers (please constexpr all the things) Vasu Agrawal
Вставка
- Опубліковано 9 тра 2024
- cppcon.org/
---
Lightning Talk: Making Friends With CUDA Programmers (please constexpr all the things) - Vasu Agrawal - CppCon 2023
github.com/CppCon/CppCon2023
The `--expt-relaxed-constexpr` flag in nvcc allows `constexpr` code to be used on device, removing the need for explicit _device_ annotations. I'll encourage library authors to annotate more code as `constexpr`, allowing CUDA C++ programmers to use the library directly (rather than writing their own), saving work and thus making friends.
---
Vasu Agrawal
Vasu is a research engineer working at the intersection of graphics, machine learning, computer vision, and virtual reality (aka "the Metaverse"), focusing on high-performance, low-latency applications. In his free time, he enjoys watching movies & sci-fi TV shows, learning to play guitar (poorly), and practicing Tae Kwon Do.
---
Videos Filmed & Edited by Bash Films: www.BashFilms.com
UA-cam Channel Managed by Digital Medium Ltd: events.digital-medium.co.uk
---
Registration for CppCon: cppcon.org/registration/
#cppcon #cppprogramming #cpp - Наука та технологія
Thank you!
(all?) inline-able functions should be "device" automatically, for that matter. Not sure what the limitation is.
I may actually go constexpr my stuff now... this also made me think of how that is also better for perf on the CPU (which is the main reason that I would do it since most of the code that I write is not anything that would be run on the GPU anyway...)
at 4:06, std::array is in cpu memory. How GPU can access it in kernel function? It not use cudaMemorycpy copy memory from host to device.
copy constructor..
This is big...
That's what she said