GPU Development with Python 101


Writing GPU code in Python is easier today than ever!

I joined NVIDIA in 2019 and I was brand new to GPU development. In that time, I’ve gotten to grips with the fundamentals of writing accelerated code in Python. I was amazed to discover that I didn’t need to learn C++ and I didn’t need new development tools. Writing GPU code in Python is easier today than ever, and in this tutorial, I will share what I’ve learned and how you can get started with accelerating your code.

We will work through various materials and examples to get you started with GPU development in Python using open source libraries.

Tentative schedule:

Intro to GPUs (20 mins)
Writing low level GPU code in Python with Numba (30 mins)
Inspecting your GPU usage with pyNVML (10 mins)
Writing high level GPU code in Python with RAPIDS (30 mins)

Background Knowledge
Attendees will be expected to have a general knowledge of Python and programming concepts, but no GPU experience will be necessary.


Jacob Tomlinson is a senior Python software engineer at NVIDIA with a focus on deployment tooling for distributed systems. His work involves maintaining open source projects including RAPIDS and Dask. RAPIDS is a suite of GPU accelerated open source Python tools which mimic APIs from the PyData stack including those of Numpy, Pandas and SciKit-Learn. Dask provides advanced parallelism for analytics with out-of-core computation, lazy evaluation and distributed execution of the PyData stack. He also tinkers with the open source chatbot automation framework Opsdroid in his spare time. Jacob volunteers with the local tech community group Tech Exeter and lives in Exeter, UK.

Open Data Science




Open Data Science
One Broadway
Cambridge, MA 02142

Privacy Settings
We use cookies to enhance your experience while using our website. If you are using our Services via a browser you can restrict, block or remove cookies through your web browser settings. We also use content and scripts from third parties that may use tracking technologies. You can selectively provide your consent below to allow such third party embeds. For complete information about the cookies we use, data we collect and how we process them, please check our Privacy Policy
Consent to display content from - Youtube
Consent to display content from - Vimeo
Google Maps
Consent to display content from - Google