Skip to content

The CUDA C++ Standard Library

The CUDA C++ Standard Library

Details

For the third installment of the Canada-wide virtual meetup, we are proud to announce a presentation from a high-profile member of the C++ community, Bryce Adelstein Lelbach. He will be presenting the CUDA C++ Standard Library.

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 C++ Montréal group
C++ Montréal
See more events