While the computing community is racing to build tools and libraries to ease the use of these heterogeneous parallel computing systems, effective and confident use of these systems will always require knowledge about the low-level programming interfaces in these systems. This lecture is designed to introduce through examples and hands-on exercises, based on the CUDA programming language, the three abstractions that make the foundations of GPU programming: Thread hierarchy, Synchronization, and Memory hierarchy/Shared Memory.
Felice Pantaleo is a High Energy Physicist (MSc at the University of Pisa), working at CERN for the CMS experiment. He has been working with GPUs since 2008, for Astrophysical simulations, Maximization of Likelihood for fast fitting in the ROOT framework. In the last 4 years his work has been focused on Real-Time Triggering for the NA62 and CMS experiments at CERN. Today he is a PhD student at CERN and the University of Hamburg working on a Track Trigger based on HPC platforms for the CMS experiment at CERN.
|Thursday, January 21||09:00 - 13:00||TEO-H1 1.417|
|Friday, January 22||09:00 - 13:00||TEO-H1 1.343|
Average knowledge of C/C++ or Fortran and a laptop with access to Eduroam. From your laptop you will be required to ssh to the Stallo machine and edit files there using nano or vim or emacs or gedit. Make sure you have software installed on your laptop to be able to run a ssh session. We will work on Stallo but you will not require to obtain a Stallo account before the course starts.
Radovan Bast (firstname.lastname@example.org).