Skip to content

The CUDA C++ Standard Library

Photo of Barbara Geller
Hosted By
Barbara G. and Bryce Adelstein L.
The CUDA C++ Standard Library

Details

Please join us for our first virtual C++ meeting on the 5th Wednesday.

Details for joining at the time of the event:
https://iso.zoom.us/j/92750910567?pwd=ZUJvbS9Ic29DT1NzSytjNVJ5M3BIZz09

CUDA C++ is a extension of the ISO C++ language which allows you to use familiar C++ tools to write parallel programmings that run on GPUs. However, one essential C++ tool has been missing from device-side CUDA C++; the C++ standard library. But not any longer! Introduced in the CUDA 10.2 toolkit, libcu++ is an opt-in heterogeneous CUDA C++ standard library.

The initial release delivers C++ atomics - a more correct, efficient, and powerful replacement for the legacy CUDA `atomic*` functions - and type traits. In this example-oriented talk we'll explain how and when to start using libcu++ and explain how it can be used to build complex concurrent data structures and enable new classes of applications on modern NVIDIA GPUs. We'll also give you a sneak preview of our future roadmap for libcu++ - barriers, semaphores, efficient atomic waiting, clocks, vocabulary types, and more!

Bryce Adelstein Lelbach has spent nearly a decade developing libraries in C++. Bryce is passionate about C++ evolution and is one of the leaders of the C++ community. He is an officer of ISO/IEC JTC1/SC22/WG21, the C++ Standards Committee. Bryce chairs INCITS PL22, the US standards committee for programming languages, and the ISO C++ Library Evolution Group (LEWG); previously he chaired the ISO C++ Tooling Study Group (SG15) and Library Incubator Group (SG18). He is also the program chair for the C++Now and CppCon conferences, and the chief organizer of the Bay Area C++ User Group. On the C++ Committee, he has personally worked on the C++17 parallel algorithms, executors, futures, senders/receivers, multidimensional arrays, and modules. Bryce works at NVIDIA, where he leads the CUDA C++ core libraries team and works on CUDA compilers. He is one of the initial developers of the HPX parallel runtime system. He also helped start the LLVMLinux initiative and has occasionally contributed to the Boost C++ libraries.

Photo of Cpp Bay Area: C++ Programming In and Around Silicon Valley group
Cpp Bay Area: C++ Programming In and Around Silicon Valley
See more events