CppCon 2016 has ended
Back To Schedule
Tuesday, September 20 • 3:15pm - 4:15pm
Bringing Clang and C++ to GPUs: An Open-Source, CUDA-Compatible GPU C++ Compiler

Log in to save this to your schedule, view media, leave feedback and see who's attending!

GPU computing has gone mainstream. It is a dominant part of the performance landscape, providing the initial 10x performance lift to a wide variety of applications. However, programing for GPUs can be extremely challenging. C++ is rarely available in an unmodified form, and there are few portable and open source approaches available. One of the most popular platforms, CUDA, has no production quality open source implementation. As a consequence, its C++ support has lagged behind and it has been a less appealing area for researchers and others that weren’t comfortable relying on NVIDIA’s tooling.

However, today things are different. Clang is now a fully functional open-source GPU compiler. It provides a CUDA-compatible programming model and can compile most of the awesome CUDA libraries out there ranging from Thrust (the CUDA-enabled parallel algorithms library that gave rise to the new parallelism technical specification) to Eigen and TensorFlow.

In this talk we will give an overview of how LLVM and Clang support targeting C++ to GPUs, how they work to be compatible with existing CUDA code, and how you can build your code today to run on GPUs with this open source compiler.

avatar for Justin Lebar

Justin Lebar

Software Engineer, Google
I lead the GPU compilers team at Google. (We work on CUDA/GPU support in Clang and LLVM.)

Tuesday September 20, 2016 3:15pm - 4:15pm PDT
Bowie Hall (1st Floor Hall) Meydenbauer Center