CIS 565: GPU Programming and Architecture
University of Pennsylvania
Spring 2011

Class Information


Course Description

This course examines 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.

Course topics include architectural aspects of modern GPUs, with a focus on their streaming parallel nature, writing programs on the GPU using GLSL, CUDA, and OpenCL, and using the GPU for graphics and general purpose applications.

This course is hands-on; there are regular programming assignments and a final project.



Advice: Use the homework to sharpen your GPU programming skills for the final project. Use the paper presentation to research your final project.



None. The schedule includes links to the relevant reading for each lecture.


Teaching Assistant

Course Adviser

Please include [CIS565] in the subject of emails to any of us.

Google Group

Use our google group for homework questions and general course discussion.

Lab resources

The following labs are available for your use. If you need access, contact Patrick or Jon.

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: * If a student is unsure whether his action(s) constitute a violation of the Code of Academic Integrity, then it is that student's responsibility to consult with the instructor to clarify any ambiguities.
© 2008-2011 CIS 565, All Rights Reserved