Welcome!

 

Slides

Download 0.1 Welcome-1.pdf

 

Video Transcription

Slide 2 – GPU and the Future of Computing

For decades, since their initial inception, HPC clusters with traditional processors have been the golden standard for expanding computing capability frontiers.

In 2012, computer scientists at University of Toronto, demonstrated a way to advance computer vision using deep neural nets running on GPUs. This advance proved revolutionary as they show that just using few GPUs they were able to solve problem of a computational intensity that would have required the usage of a supercomputer.

Since then, GPUs have emerged at the center of computing, moving into the mainstream.

Several supercomputers all around the world feature GPUs. For instance, the fastest European supercomputer in Switzerland have Tesla P100 GPUs; the two next major supercomputer installations in US at Oakridge and Lawrence Livermore National Labs will also have GPUs.

In summary, it seems that the future of computing will be bright and likely be GPU-bright.

Slide 3 –  Why a Course on Applied GPU programming?

Why did we feel the need of creating a course on GPU programming?

Our motivation comes from the realization that there are very few people with expertise in both application domains (graphics, imaging, deep learning, scientific computing, …) and GPU programming.

As GPUs became a mainstream computing platform, there is a need for professionals and researchers who understand the GPU advantages - but also the limitations – and are capable of writing code for solving problems with GPUs. If you understand GPUs and you are able to program them, you will have a strategic advantage in the professional market and in the research field.

 Slide 4 – Objectives

Our goal is to prepare you to write efficient code for programming GPUs to solve problems in your application domain. We target two, more specific, objectives. First, we want you to write code to do computation on GPUs. We will use CUDA for that. Second, we want you to write code to do graphics on GPU and will use OpenGL for that. At the end of this course, you will be able to apply these techniques to your specific application domain.

In the next lectures, we are going to look at how to do computing and graphics using GPUs.