Welcome to the course notes and supplementary materials for the full-day SIGGRAPH 2007 GPGPU course!

The course will be held at SIGGRAPH 2007 on Tuesday, August 7, 2005.


The graphics processor (GPU) on today’s commodity video cards has evolved into an extremely powerful and flexible processor. The latest graphics architectures provide tremendous memory bandwidth and computational horsepower, with fully programmable vertex and pixel processing units that support vector operations up to full IEEE floating point precision. High level languages have emerged for graphics hardware, making this computational power accessible. Architecturally, GPUs are highly parallel streaming processors optimized for vector operations, with both MIMD (vertex) and SIMD (pixel) pipelines. Not surprisingly, these processors are capable of general-purpose computation beyond the graphics applications for which they were designed. Researchers have found that exploiting the GPU can accelerate some problems by over an order of magnitude over the CPU.

The course presenters are experts on general-purpose GPU computation from academia and industry, and have presented papers and tutorials on the topic at SIGGRAPH, Graphics Hardware, Supercomputing, IEEE Visualization, and elsewhere.

Course Organizers

Mike Houston, Stanford University
Naga Govindaraju, Microsoft

Course Speakers

Simon Green, NVIDIA
Mark Harris, NVIDIA
Justin Hensley, AMD
Jens Krueger, TU Munich
Aaron Lefohn, Neoptica
John Owens, UC Davis
Jason Yang, AMD
Cyril Zeller, NVIDIA

Course Notes


  1. Introduction (410KB PDF) (Mike Houston)
  2. GPU Architecture Overview (2.4MB PDF) (John Owens)

GPGPU Building Blocks

  1. Data-Parallel Algorithms (3MB PDF) (John Owens)
  2. Sort and Search (Naga Govindaraju)

Languages & Programming Environments

  1. Languages Overview (300KB PDF (Mike Houston)
  2. Introduction to NVIDIA CUDA (Mark Harris)
  3. AMD CTM Overview (Justin Hensley)

High Performance GPGPU

  1. Performance Overview (700KB PDF) (Mike Houston)
  2. NVIDIA CUDA Performance (Cyril Zeller)
  3. AMD CTM Performance (Justin Hensley)


  1. GPGPU for Raster Graphics (Aaron Lefohn)
  2. GPGPU and Raytracing (Jens Krueger)
  3. Geometric Computing (Naga Govindaraju)


  1. GPU Flow (Jens Krueger)
  2. GPGPU Physics (Simon Green)