CIS 665: GPU Programming and Architecture
University of Pennsylvania
Spring 2010


02/11/2010: Homework 4 handed out.
02/03/2010: Homework 3 handed out.
01/25/2010: Homework 2 handed out.
01/20/2010: Homework 1 handed out.
01/15/2010: CIS 665 IS ON !!!

Course Description

This course will examine the architecture and capabilities of modern GPUs (graphics processing unit). The GPU has grown in power over recent years, to the point where many computations can be performed faster on the GPU than on a traditional CPU. GPUs have also become programmable, allowing them to be used for a diverse set of applications far removed from traditional graphics settings.

Topics covered will include architectural aspects of modern GPUs, with a special focus on their streaming parallel nature, writing programs on the GPU using high level languages like Cg, CUDA, SlabOps, and using the GPU for graphics and general purpose applications in the area of geometry modelling, physical simulation, scientific computing and games.

The course will be hands-on; there will be regular programming assignments, and students will also be expected to work on a project (most likely a larger programming endeavour, though more theoretical options will be considered).

NOTE: Students will be expected to have a basic understanding of computer architecture, graphics, and OpenGL.


Grading for this course is as follows: There is no final or mid-term exams. The grading will be based on homeworks, projects, and presentation. Detailed allocations are tentatively as follows:

Meeting Time



Teaching Assistant

Lab resources

The following labs are available for your use if you need. If you don't already have access, contact Joe or Joh.

Code of Academic Integrity

Since the University is an academic community, its fundamental purpose is the pursuit of knowledge. Essential to the success of this educational mission is a commitment to the principles of academic integrity. Every member of the University community is responsible for upholding the highest standards of honesty at all times. Students, as members of the community, are also responsible for adhering to the principles and spirit of the following Code of Academic Integrity. Academic Dishonesty Definitions

Activities, that have the effect or intention of interfering with education, pursuit of knowledge, or fair evaluation of a studentís performance are prohibited. Examples of such activities include but are not limited to the following definitions:
Page Maintained by Joseph Kider (
Ph.D. Student working with Dr. Norman I. Badler
at the Center for Human Modeling and Simulation
© 2008 Joe Kider / CIS665, All Rights Reserved