GPU Architectures, Spring 2019, CSCI 674

General Information


Students are expected to have a good understanding of the basic computer organization and design (i.e., comparable to the material covered by CSCI 424/524). Please talk to the instructor if you do not satisfy this requirement.

Course Description

This course provides an in-depth understanding of the micro-architectural and architectural details of a general-purpose graphics processing unit (GPU). A range of top-tier architecture conference and journal papers are also discussed to understand the important research issues associated with the GPU architectures. Students will be tested via various assignments and a written examination. In addition, students will also be required to complete a semester-long research project.

Grade Distribution


Homeworks are due in hard copy on the specified date. Submit it to the instructor at the beginning of the class. Homeworks will test analytical, coding, and simulation skills. Can be performed in groups of 2. If you do the homework in a group, briefly describe your individual contributions to the homework in the submission document.

Semester-long Research Project

Final Exam

It will be comprehensive and will cover all the material covered until the end of the semester. The final exam is scheduled by W&M and is on April 30 (9:00-12:00 noon) as per this website.

Class Schedule

Week Date Agenda
Week 1   Jan 17   Administrativia and Introductions  
Week 2   Jan 22   Introduction, Abstractions, and Technology  
Jan 24   Introduction, Abstractions, and Technology  
Week 3   Jan 29   Intro to Comp Arch (ISA, Pipelining)  
Jan 31   Intro to Comp Arch (ISA, Pipelining)  
Week 4   Feb 5   Intro to Comp Arch (Memory Hierarchy)  
Feb 7   Intro to Comp Arch (Memory Hierarchy)  
Week 5   Feb 12   Intro to CUDA Programming  
Feb 14   Intro to CUDA Programming  
Week 6   Feb 19   Code-Hardware Mapping  
Feb 21   CPU-GPU bottleneck; Memory Coalescing  
Week 7   Feb 26   Project Proposal Presentations (by students)  
Feb 28   Shared Memory  
Week 8   March 5   Spring Break (no class)  
March 7   Spring Break (no class)  
Week 9   March 12   Shared Memory -- contd  
March 14   Instructor on Travel (no class)  
Week 10   March 19   GPU Architecture (1)  
March 21   GPU Architecture (2)  
Week 11   March 26   GPU Memory Research Issues (1)  
March 28   Instructor on Travel (no class)  
Week 12   April 2   Midterm Presentations (by students)  
April 4   Midterm Presentations (by students)  
Week 13   April 9   GPU Memory Research Issues (2)  
April 11   GPU Memory Research Issues (3)  
Week 14   April 16   GPU Memory Research Issues (4)  
April 18   GPU Compute Research Issues  
Week 15   April 23   GPU Reliability/Security  
April 25   Final project presentations (by students)  

Piazza (Discussion Forum)

We will be using Piazza as an on-line forum for discussions. You will also receive notifications from the instructor via Piazza. The Piazza website for our course is here. The resource section of this The Piazza website will contain most of the material related to this course.


Readings (Books and Other Resources)

There is no required book for this course, however, you might find the following reference material useful.

Useful Simulators and Tools

Academic Accommodations

It is the policy of The College of William and Mary to accommodate students with disabilities and qualifying diagnosed conditions in accordance with federal and state laws. Any student who feels s/he may need an accommodation based on the impact of a learning, psychiatric, physical, or chronic health diagnosis should contact Student Accessibility Services staff at 757-221-2509 or at to determine if accommodations are warranted and to obtain an official letter of accommodation. For more information, please click here.

Honor Code

Students are required to follow the Honor System of the College of William and Mary.