Hello everyone,
 
these are some lectures I prepared to make CUDA programming easy to get into. If you are familiar with programming and have already worked with parallel programs (i.e. multithreaded instruction flow), you should probably look into the ressources made available by NVIDIA at https://developer.nvidia.com/cuda-education as they offer a more comprehensive view of the CUDA programming paradigm.
 
What I accumulated here is (hopefully) an easy introduction into parallel computing using CUDA devices for people who never worked with parallel architectures. The aim is to get such people to their first CUDA program fast without overloading the lectures with all the technicalities of the CUDA devices. Such knowledge helps in producing more efficient programs, but is not strictly necessary to speed up some of the computation processes I witness on a regular basis in our research group.
 
So far, only a few lectures are available, but it should be enough to get everyone who is interested started with CUDA. The lectures are, so far:

Tutorial00
Explanation of what CUDA is and why it may be interesting for you
Tutorial01l
Instruction to install all the necessary packages on a Linux machine
Tutorial01o
Lecture on how to install a CUDA simulator on a Linux machine to start programming without an actual CUDA device
Tutorial01p
Installation instructions to start programming CUDA devices utilizing Python
Tutorial01w
Installation process for Microsoft Windows
Tutorial02
A first and simple CUDA program
Tutorial03
A template for more complex programs and a little explanation of how communication between the CUDA device and the host computer works

If the need arises, I will write some more lectures about CUDA. Please feel free to use the computer Prometheus (my workstation, via ’ssh prometheus’) to work through the tutorials. Let me know if you have questions or comments regarding these lectures.
 
Martin


This document was translated from LATEX by HEVEA.