CS 190/295 Efficient ML Computing

Deep learning models have been growing rapidly in the pursuit of higher accuracy and new capabilities. Model growth is leading to widening gaps in performance, memory, and energy between model demand and system supply. With the emergence of foundational models, this trend has accelerated. It has become crucial to improve ML efficiency. This course provides a broad overview of how software, AI, and hardware come together to improve the efficiency of ML model execution. Topics include model compression, pruning, quantization, distributed training, data/model parallelism, and hardware acceleration. This project-based class emphasizes experiential learning to prepare you for research in this exciting field.

Spring 2024 Enrollment Update:

Due to student interest, the enrollment has been expanded to a total of 70 (from 50) students. Total enrollment is at 70/70. All interested students have been enrolled.


Efficient ML Computing Book (under construction)

Prerequisite info:

While there is no strict prerequisite for this class, here is some guidance:

Ideally, you have taken 1 ML/AI class (CS 171, CS 172B, or CS 178) or 1 Computer Architecture/Organization class (ICS 51, CS 151, or CS 152). CS 190/295 sits at the intersection of these 2 areas, and I can ramp you up on the part that you are less familiar with. 

If you have not taken any of the courses listed above, you can still be successful if you are self-motivated to learn the basics outside of class. I will provide resources such as the open-source ebook and plenty of office hours. Please allocate sufficient time for this class if you are in this scenario.