Graphics Processing Units (GPUs): Architecture and Programming

Prof. Mohamed Zahran   (aka Prof. Z)
mzahran AT cs DOT nyu DOT edu
 Wednesdays: 5:00PM — 6:50PM   WWH 1302
                                                                                         Office Hours: TBA                                                                                         


Welcome students! ... to the Graphics Processing Units course, edition Spring 2013.  I will keep updating this page regularly. If you have questions related to this course feel free to email me. Here is some basic information:

This course examines the architecture and capabilities of modern GPUs (graphics processing unit).
Many computations can be performed faster on the GPU than on a traditional CPU.  
This is why GPUs are present now in almost all computers; and the majority of Top 500 supercomputers in the world are built around GPUs.
GPUs are now used for a diverse set of applications not only traditional graphics applications; which introduces the concept of general-purpose GPUs or GPGPUs.
In this course, we will cover architectural aspects of modern GPUs. We will also learn how to program GPUs to solve different type of problems.

Mailing List


Lecture               _______________    reading  material

Assignments (non-programming)

Programming Assignments


Interesting Links (Geeky stuff about GPUs)

Important link: CUDA GPU Servers at NYU

CUDA occupancy calculator

GPU Computing
NVIDIA GPU computing seminars
For CUDA developers
Series of CUDA articles at Dr. Dobb's

GPU Simulators and Tools:
Multi2sim (simulates both GPUs and multicore)
GPUOcelot (dynamic compilation for PTX)