CIS 565 GPU Programming and Architecture
Fall 2022

team-2.gif team-4.gif team-5.gif team-7.gif

Course Announcements

2022-09-02: Switching Class Forum from Piazza to Ed Discussions

We’ll be switching from Piazza to Ed Discussions for the class forum. You can access Ed Discussions using this link. For more see this section

2022-08-13: Registration for CIS 565 or if you are facing issues

Students who may not have been able to register for the class due to Path at Penn issues can attend the first day of class on Wednesday, August 31 2022 at 5:15pm in Towne 337. Please reach out to the instructors after class ends.

2022-08-01: Student Survey

All students who are interested in taking the course (registered, waitlisted, or otherwise) must complete the Student Survey as soon as possible. Failure to submit the survey before first day of class can jeopardize your registration for CIS 565.

Course Description

A timeline section from the following topics:

  • GPU Computing: GPU architecture, massively parallel programming, parallel algorithms, performance.
  • Rendering: Graphics pipeline (rasterization), path tracing, deferred shading, forward+ rendering, VR.
  • APIs: CUDA, WebGL, RTX, Vulkan.

This is a project-intensive course with significant coding, writing, and presenting. It is more work than any other course, but it is worth it.

For a course more focused on GPU architecture without graphics, see Joe Devietti’s CIS 601 (no longer offered at Penn).

Prerequisites

  • Passion for computer graphics.
  • At least one of:
    • CIS 460/560: Introduction to Computer Graphics.
    • CIS 461/561: Advance Rendering
    • Preferably received an A. Knowledge of rasterization and ray tracing.
  • Strong C or C++.
  • Also useful:
    • CIS 371: Digital Systems Organization and Design, or
    • CIS 501: Introduction to Computer Architecture.

Student Survey (Required)

If you have registered as a student for the course, or plan to, please complete this required survey: CIS 565 Fall 2022 Student Survey.

Github, Schedule, Class Forum, and LinkedIn

  • Github: fork your repos from here
  • Ed Discussions: Class forum
    • Note: Ed Discussions requires being registered for the class for default access. If you need access for auditing, please reach out to the instructors.
  • LinkedIn Group: for networking with current and previous course students

Lecturer

Shehzan Mohammed mza@seas.upenn.edu

Office Hours:

  • Monday and Wednesday: 4:30pm - 5:15pm, + 30 minutes after end of class - Outside Towne 337 (lobby area)
  • By appointment (email me)

Changes to office hour schedule will be made on the CIS 565 Calendar and notified through Class Forum.

Shehzan Mohammed

Teaching Assistants

Wayne Wu waynewu@seas.upenn.edu

Office Hours:

  • Monday and Wednesday: 3:45-5:15pm - Outside Towne 337 (lobby area)

Wayne Wu

Beini “Rachel” Gu gubeini@seas.upenn.edu

Office Hours:

  • Saturday: 2:00-5:00pm - Moore Lab

Beini Gu

Shubham Sharma sshubh@seas.upenn.edu

Office Hours:

  • Tuesday and Thursday: 1:00-2:30pm - Moore Lab

Shubham Sharma

Course Advisor

Patrick Cozzi

Patrick Cozzi

No books are required, but course material comes from many sources including:

Other useful tools and material:

Grading

  • Projects: 50%
  • Final Project: 50%

Academic Integrity

An academic integrity violation will result in the student receiving an F in this course.

See Academic Integrity at the University of Pennsylvania: A Guide for Students.

Code submissions will be cross-checked for plaigarism against previous years’ submissions as well as submissions from your colleagues using automated software. Please do not copy code.

If you would like to use code not written by you for this class, please run it by the TAs using Class Forum for permission to use it. Examples of code you will need to ask permission to use:

  • Public Github Repositories and other open source projects.
  • Projects from other classes that will give you a non-trivial advantage for the project.

If you think you need to ask permission, you should ask. We will most likely approve all reasonable requests.

Penn Engineering COVID-19 Impact and Announcements

Please visit the COVID-19 for information on Penn Engineering’s announcements and information about COVID-19 impact and procedures.

COVID Protocols for CIS 565

  • Classrooms will be operating under normal, pre-COVID capacity during the Fall 2022 term.
  • CIS 565 will be in person and lecture recordings will be made available within 24 hours after the lecture.
  • We will follow University policy for mask use.
  • If a student (or staff) tests positive at any point during the semester, and there is probable risk of spread, a portion of the students, if not the entire class may be moved online-only temporarily. You will be notified through Class Forum.

Acknowledgments

Joe Kider, Gary Katz, and Suresh Venkatasubramanian taught this course before me.

All former TAs have helped shape this course:

Janine LiuLiam Dugan 
Hannah BollarYoussef VictorZiad Ben Hadj-Alouane
Ottavio HartmanYash VardhanAustin Eng
Kaixiang MiaoShuai Shao (Shrek)Gary Li
Kai NinomiyaHarmony LiLiam Boone
Karl LiVarun SampathJon McCaffrey

Previous students have provided significant course feedback including:

Many passionate folks in our field have also provided course input: