GTC 2020: Combined Python/CUDA JIT for Flexible Acceleration in RAPIDS
After clicking “Watch Now” you will be prompted to login or join.
Click “Watch Now” to login or join the NVIDIA Developer Program.
Combined Python/CUDA JIT for Flexible Acceleration in RAPIDS
Jiqun Tu, Nvidia Corporation
We'll introduce our design and implementation of a framework within RAPIDS/cuDF that enables compiling Python user-defined functions and inlining them into native CUDA kernels. Our framework uses the Numba Python compiler and Jitify CUDA just-in-time (JIT) compilation library to provide cuDF users the flexibility of Python with the performance of CUDA as a compiled language. An essential part of the framework is a parser that parses the CUDA PTX function, which is compiled from the Python UDF, into an equivalent CUDA device function that can be inlined into native CUDA C++ kernels. Learn how our approach makes it possible for non-expert Python users to extend optimized dataframe operations with their own Python UDFs, and enables more flexibility and generality for high-performance computations on dataframes in RAPIDS.