Many thanks to our sponsors!

This is the archival webpage for the Fall 2007 version of the class. Look here for the Fall 2008 webpage.

When and where: Fall 2007, MWF 1:05-1:55, Van Leer C241

Instructors: Aaron Lanterman (ECE) and Hsien-Hsin "Sean" Lee (ECE) (with guest lectures on the Cell processor by Seunghwa Kang and Kamesh Madduri).

TA: Yimin Zhang (ymzhangcn__at__gmail__com) (Klaus 2341).

Prereqs: ECE3035: Mechanisms for Computation or CS2110: Computer Organization and Programming. Students must be comfortable with C programming. To be widely accessible to ECE students, no background in computer graphics will be required.

Goals: This class covers the the architecture and programming of multicore processors and graphical processing units (GPUs), using examples from the algorithmic needs of modern 3-D games (rendering, collision detection, physics engines, and artifical intelligence), as well as techniques for adapting such architectures for use in scientific applications, as in the GPGPU (General-Purpose GPU) movement. The class will focus on inexpensive consumer hardware, particularly the Playstation 3, the Xbox 360, and NVIDIA and ATI graphics cards. The trade-offs between asymmetric multicore architures (such as the STI Cell BE used in the Playstation 3) and symmetric multicore architectures (such as the triple-Power PC used in the Xbox 360) will be discussed.

Grading will be primarily based on a series of five programming assignments. There will also be a final quiz, which will be weighted the same as one of the assignments.

Further information