Time and Location: Tuesday/Thursday 11:00am-12:20pm, McGL 002
Instructor: Adwait Jog (Personal Website)
Office hours: T/R: 12:20 to 1 pm ; F: 10-noon ; by appointment at McGl 111
Email: ajog@wm.edu
Add-Drop Period Ends (January 31); Withdrawal period ends (May 1); Final Exam (May 8, 2:00-5:00 p.m)
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 expectation.
This course offers a comprehensive exploration of the micro-architectural and architectural aspects of general-purpose graphics processing units (GPUs). It covers a range of top-tier architecture conference and journal papers to address key research challenges related to GPU architectures. Students will be evaluated through various assignments, including student paper presentations. Additionally, they will be required to complete a semester-long research project.
Homeworks: 40%
Research Project (Semester-long): 40%
Final Exam (In the finals week): 20%
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.
It will give you a taste of computer architecture research. Please discuss with the instructor to decide on the project. Regular meetings are expected with the instructor so that progress can be made.
We will have three project presentations during the entire semester: proposal (5 percent), mid-term presentation (10 percent), and final presentation (+ final project report due in the finals week) (25 percent).
Can be performed in groups of 2. If you perform the project in a group, briefly describe your individual contributions to the project in the presentation and final report.
It will be comprehensive and will cover all the material covered until the end of the semester.
Week | Date | Agenda |
---|---|---|
Week 1 | Jan 24 | Administrativia and Introductions |
Week 2 | Jan 28 | Introduction, Abstractions, and Technology |
Jan 30 | Computer Architecture Basics | |
Week 3 | Feb 4 | Computer Architecture Basics |
Feb 6 | Computer Architecture Basics | |
Week 4 | Feb 11 | Computer Architecture Basics |
Feb 13 | GPU Basics | |
Week 5 | Feb 18 | GPU Basics |
Feb 20 | GPU Basics | |
Week 6 | Feb 25 | No Class -- Instructor on Travel |
Feb 27 | Project Proposal Student Presentations | |
Week 7 | March 3 | Project Proposal Student Presentations |
March 5 | No Class -- Instructor on Travel | |
Week 8 | March 10 | Spring Break |
March 12 | Spring Break | |
Week 9 | March 17 | Class canceled due to COVID-19 |
March 19 | Class canceled due to COVID-19 | |
Week 10 | March 24 | Memory Coalescing |
March 26 | Shared Memory | |
Week 11 | March 31 | GPU Micro-Architecture Basics |
April 2 | GPU Micro-Architecture Basics | |
Week 12 | April 7 | GPU Research Issues (Memory) |
April 9 | Project Mid-term Student Presentations | |
Week 13 | April 14 | GPU Research Issues (Memory) |
April 16 | GPU Research Issues (Memory) | |
Week 14 | April 21 | GPU Research Issues (Compute) |
April 23 | GPU Research Issues (Compute) | |
Week 15 | April 28 | GPU Security |
April 30 | Final Project Student Presentations |
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.
Access to a GPU is required to test and execute your CUDA programs. It is needed for homeworks and perhaps also for the project. bg machines have several GPUs attached to it. Sciclone cluster also has several GPUs.
Access to a computer with remote access to a lab machine (bg machines mostly) is necessary for simulation-based assignments. We will use GPGPU-Sim – A GPU simulator, which is already installed on the bg machines and instructions will be provided to run it on your end.
There is no required book for this course, however, you might find the following reference material useful.
Patterson and Hennesy, Computer Organization and Design, 5th Edition, Appendix C-2 on GPUs
D. Kirk and W. Hwu, “Programming Massively Parallel Processors – A Hands-on Approach, Second Edition
Aamodt, Fung, Rogers, “General-Purpose Graphics Processing Architectures” – Morgan and Claypool Publishers, 1st Edition
GPGPU-Sim, A GPU Simulator (models NVIDIA-style GPUs). Also, look at GPU-Wattch, A GPU Power Model
SASSI, A Flexible GPGPU Instrumentation Tool
MAFIA, A Multiple Application/Context Framework for GPU architectures
Multi2sim, A CPU/GPU Simulator (models AMD-style GPUs)
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 sas@wm.edu to determine if accommodations are warranted and to obtain an official letter of accommodation. For more information, please click here.
Students are required to follow the Honor System of the College of William and Mary.