GPU programming
by
Abstract
In this lecture, we will look into the basics of GPU computing to understand in which circumstances the usage of GPUs is beneficial for scientific computing. Using Nvidia CUDA GPUs as examples, we will learn how the hardware works, which guides us towards how it has to be programmed.
Requirements
Students should have written basic C/C++ programs before, and should be familiar with pointers, arrays and/or vectors of data.
Hands on: We have the option to play with a few basic CUDA applications. There's three ways in which you can participate:
- Linux / Mac laptop with ssh.
- Any laptop and a browser using SWAN.
- Please create a cernbox if you haven’t done so. After logging in to CERN, just visit https://cernbox.cern.ch, and it will be created automatically.
- Then, register for the following group https://groups-portal.web.cern.ch/group/openlab-gpu-lectures
- This has to be done several hours before the hands-on, because extra GPUs will be reserved for our lecture
- Team programming. If the two above are not for you, we will team up and work together.
Bio
Stephan obtained a PhD in particle physics, searching for decays of the Higgs boson with the ATLAS detector. At CERN, he has worked on high-throughput computing, statistical analysis packages like RooFit, and on speeding up simulations with GPUs. Stephan is now part of the ROOT project, working on tools for big-data analysis.