COMPAS TALK by Rene Müller (NVIDIA): Simplifying NVIDIA GPU Access: A Polyglot Binding for GPUs with GraalVM

17.10.2019 10:00

Thursday, 17. October 2019, 10:00-11:00 in CAB E 72

Speaker: Rene Müller (NVIDIA)

Title: Simplifying NVIDIA GPU Access: A Polyglot Binding for GPUs with GraalVM




NVIDIA GPU computing accelerates workloads and fuels breakthroughs across industries. There are many GPU-accelerated libraries developers can leverage, but integrating these libraries into existing software stacks can be challenging. Programming GPUs typically requires low-level programming while high-level scripting languages have become very popular in modern applications. Accelerated computing solutions are heterogeneous and inherently more complex: data needs to needs to be exchanged between main memory and the GPUs, often with format conversion along the way, while the execution of code needs to be scheduled carefully. In this talk, I will present recent work from an ongoing collaboration between NVIDIA and Oracle Labs, which we released as an open-source research prototype called grCUDA. It leverages Oracle's GraalVM and exposes GPUs in polyglot environments. While GraalVM can be regarded as the "one VM to rule them all", grCUDA is the "one GPU binding to rule them all". Data is efficiently shared between GPUs and GraalVM languages (R, Python, JavaScript) while GPU kernels can be launched directly from those languages. Precompiled GPU kernels can be used as well as kernels that are generated dynamically at runtime. I will also demonstrate how to access GPU-accelerated libraries such as RAPIDS cuML.

Short Bio:

Rene Mueller is a Senior AI Developer Technology at NVIDIA working on GPU optimizations for Machine Learning and acceleration of information processing systems such as database systems. Before joining NVIDIA, he was a Research Staff Member at the IBM Research Lab in Almaden, where he worked on DB2 BLU, DB2 EventStore, and acceleration of OLAP processing using GPUs and FPGAs. Rene holds a PhD in Computer Science from ETH Zurich.