fanlai0990/CS498

CS 498: Machine Learning Systems

Python

36

120 commits

updated Oct 14, 2026

See the code

README

CS 498: Machine Learning Systems (F'26)

Logistics

Lectures: 1310 Digital Computer Laboratory, MW: 9:30 AM – 10:45 AM

Member (NetID)RoleOffice Hours
Fan Lai (fanlai)Instructor3128 Siebel Center. M 2:00 PM – 3:00 PM
banruol2 and tonyhongTAsZoom. F 2:00 PM - 3:00 PM

Canvas: ALL communication regarding this course must be via Canvas. This includes questions, discussions, announcements, assignments, as well as private messages.

Course Description

Learning Objectives: This course will introduce the basic concepts and cutting-edge practices in the design and implementation of efficient software systems for supporting machine learning (ML) models, with a particular focus on Generative AI (GenAI). By the end of the course, students will be able to:

  • Understand and critique the design principles behind state-of-the-art ML systems, from model architecture to system-level considerations.
  • Develop and utilize tools to profile, monitor, and optimize the performance of ML systems
  • Explore and conduct research in topics related to the practical deployment and optimization of ML systems, contributing to the evolving landscape of efficient ML operations.

Structure: The course will combine lectures, guest lectures from practioners, lab assignments, reading summaries, and a semester-long project. We will explore key ML topics from a systems perspective, addressing the relevant challenges across the ML lifecycle. Topics include, but are not limited to:

  • Basics of ML models from a systems perspective;
  • Systems for ML lifecycle (pre-training, training, fine-tuning, inference serving, and grounding);

Note that this course is NOT focused on AI methods. Instead, we will focus on how one can build software systems so that existing AI methods can be used in practice and new AI methods can emerge.

Prerequisites: Students are expected to have good programming skills and must have taken at least one systems-related course (from operating systems, databases, distributed systems, or networking). Having an ML/AI background is helpful but not required.

Tentative Schedule

This is an evolving list and subject to changes due to the breakneck pace of AI

DateTopicLecturerSlidesAssignment/Summary
Aug 24Course Introduction and LogisticsFan LaiSlides
Aug 26No Class (Project Kickoff & Team Formation)Fan Lai
Aug 31TransformersFan LaiSlides
Sept 2Transformers Deep DiveFan LaiSlides
Sept 7No Class (Labor Day)
Sept 9Distributed Training OverviewFan LaiSlidesBLASST
Sept 14Data ParallelismFan LaiSlidesDeepSeek-V3 Report (Sec 1-3)
Sept 16Tensor ParallelismFan LaiSlides
Sept 21Pipeline ParallelismFan LaiSlidesLlamaRL, Assignment 1 Released
Sept 23No Class (Meet to refine project ideas)Fan Lai
Sept 28Multi-Dimensional ParallelismFan LaiSlidesAlpa
Sept 30Mixed Precision TrainingFan LaiSlidesProject Proposal Due
Oct 5Project Proposal Feedback IFan Lai
Oct 7Project Proposal Feedback IIFan Lai
Oct 12Memory OptimizationFan LaiSlidesZeRO-style Data Parallelism
Oct 14Finetuning TechniquesFan LaiAssignment 1 Due
Oct 19Inference OverviewFan LaiSpeculative Decoding, Assignment 2 Release
Oct 21Batch Serving TechniquesFan LaiDistServe
Oct 26Paged AttentionFan LaiSGLang
Oct 28Adaptive KVFan Lai
Nov 2QuantizationFan Lai
Nov 4MoE EfficiencyFan LaiMid-semester Report Due
Nov 9Project Check-in & FeedbackFan LaiAssignment 2 Due, Assignment 3 Released (for 4-credit students)
Nov 11Project Check-in & FeedbackFan Lai
Nov 16Advanced Topics: RAG SystemsFan LaiMoonCake
Nov 18Advanced Topics: Agentic AIMurakkab
Nov 21-29Fall Break — No Class
Nov 30Guest LectureChen Wang (IBM)
Dec 2Final PresentationsAssignment 3 Due
Dec 7Final Presentations
Dec 9Final Presentations
Dec 18Final Report Due

Tentative Grading

Groups: Panel discussion and research project will be performed in groups of 4-5 students. Form a group and declare your group's membership and paper preferences by Sept 5. After this date, we will form groups from the remaining students.

Weight
Attendance15%
Panel Discussion8% (4% + 4%)
Lab assignments16% (2-3 lab assignments)
Reading summary16% (opt-in 8 out of 10 readings, 2% each)
Final project presentation15%
Project report30% (5% + 10% + 15%)

Academic integrity: The University's Honor Code applies to all activities related to this course. All material you submit in this course (reading summary, project reports, and presentation materials) must be your own. If you use someone else’s material, you must cite them properly.

AI Tool Policy: AI tools may be used for grammar checking and refining initial brainstorms, but the final reviews and codes must be authored by the student. Students are responsible for the entire content and must adhere to the Academic Integrity Policy.

Policies

Participation

Before Each Lecture: Some lectures may include a required reading. You must submit a summary of the paper by 11:59 PM on the due date.

During Lectures: Active participation is crucial for both your own understanding and to improve the overall quality of the course. You are expected to attend all lectures (up to 2 absences allowed for legitimate reasons), and more importantly, participate in class discussions. Not everyone must have add something every day, but it is expected that everyone has something to share over the semester.

Paper Summaries

You need to select and write paper summaries from 8 papers out of 10 listed papers. The summary should be done independently and include the following contents (five paragraphs):

  • P1: The problem the paper is trying to tackle. What's the impact of the work, e.g., why is it an important problem to solve?
  • P2: The main proposed idea(s).
  • P3: A summary of your understanding of different components of the proposed technique, e.g., the purpose of critical design choices.
  • P4: Your perceived strengths and weaknesses of the work, e.g., novelty, significance of improvements, quality of the evaluation, easy-to-use.
  • P5: Is there room for improvement? If so, what idea do you have for improving the techniques?

You do not need to write super long paragraphs, as long as you have the key points listed out in each paragraph. You can discuss the paper with other students, but all of your writing work should be your own. DO NOT use AI tools to draft it!

In terms of grading criteria, each summary has 10 points in total. For each review item above, you get:

  • 2: The summary item demonstrates a clear understanding of the paper.
  • 1: The summary item misses the point of the paper.
  • 0: The summary item is missing.

Due to selecting the 8/10 paper summaries, late submissions won't be accepted and will receive 0 points.

Post-Lecture Panel Discussion

To foster a deeper understanding of the papers and encourage critical thinking, lectures with paper summary will be followed by a panel discussion. This discussion will involve three distinct roles played by different student groups, simulating an interactive and dynamic scholarly exchange.

Roles and Responsibilities

  1. The Companion (Author) Group
  • Responsibility: As authors, you are expected to defend your paper against critiques, answer questions, and discuss how you might improve or extend your research in the future, akin to writing a rebuttal during the peer-review process.
  1. The Reviewer Group
  • Responsibility: Reviewers critically assess the paper, posing challenging questions and highlighting potential weaknesses or areas for further investigation. Your goal is to engage in a constructive critique of the paper, simulating a peer review scenario.
  1. Rest of the Class
  • Responsibility: During the panel discussions, feel free to actively ask questions and engage in the dialogue.

The lecturer will also pose challenging questions to both the companion and reviewer groups, so please come well-prepared!

Project

You will have to complete substantive work an instructor-approved problem and have original contribution. Surveys are not permitted as projects; instead, each project must contain a survey of background and related work.

You must meet the following milestones (unless otherwise specified in future announcements) to ensure a high-quality project at the end of the semester:

  • Turn in a 2-page draft proposal (template), plus as many pages as needed for references, by Sept 30. Remember to include the names and UIUC email addresses of the group members.
  • Each group must schedule project discussion with the instructor during class hours or office hours in the week of Oct 5 and Oct 7.
  • Each group must turn in a 4-page mid-semester report via email on or before 6:00PM CST on Nov 4.
  • Each group must turn in an 8-page final report and your code in Canvas on or before 6:00PM CST on Dec 18. The report must be submitted as a PDF file, with formatting similar to that of the papers you've read in the class. The self-contained (i.e., include ALL dependencies) code must be submitted as a zip file. Each zip file containing the code must include a README file with a step-by-step guide on how to compile and run the provided code.
  • You can find how to access GPU resources here.

Acknowledgements

This course alternates with Prof. Minjia Zhang's CS 498. Big thanks to Prof. Minjia Zhang!

fanlai0990/CS498

CS 498: Machine Learning Systems

Python

36

120 commits

updated Oct 14, 2026

See the code

README

CS 498: Machine Learning Systems (F'26)

Logistics

Lectures: 1310 Digital Computer Laboratory, MW: 9:30 AM – 10:45 AM

Member (NetID)RoleOffice Hours
Fan Lai (fanlai)Instructor3128 Siebel Center. M 2:00 PM – 3:00 PM
banruol2 and tonyhongTAsZoom. F 2:00 PM - 3:00 PM

Canvas: ALL communication regarding this course must be via Canvas. This includes questions, discussions, announcements, assignments, as well as private messages.

Course Description

Learning Objectives: This course will introduce the basic concepts and cutting-edge practices in the design and implementation of efficient software systems for supporting machine learning (ML) models, with a particular focus on Generative AI (GenAI). By the end of the course, students will be able to:

  • Understand and critique the design principles behind state-of-the-art ML systems, from model architecture to system-level considerations.
  • Develop and utilize tools to profile, monitor, and optimize the performance of ML systems
  • Explore and conduct research in topics related to the practical deployment and optimization of ML systems, contributing to the evolving landscape of efficient ML operations.

Structure: The course will combine lectures, guest lectures from practioners, lab assignments, reading summaries, and a semester-long project. We will explore key ML topics from a systems perspective, addressing the relevant challenges across the ML lifecycle. Topics include, but are not limited to:

  • Basics of ML models from a systems perspective;
  • Systems for ML lifecycle (pre-training, training, fine-tuning, inference serving, and grounding);

Note that this course is NOT focused on AI methods. Instead, we will focus on how one can build software systems so that existing AI methods can be used in practice and new AI methods can emerge.

Prerequisites: Students are expected to have good programming skills and must have taken at least one systems-related course (from operating systems, databases, distributed systems, or networking). Having an ML/AI background is helpful but not required.

Tentative Schedule

This is an evolving list and subject to changes due to the breakneck pace of AI

DateTopicLecturerSlidesAssignment/Summary
Aug 24Course Introduction and LogisticsFan LaiSlides
Aug 26No Class (Project Kickoff & Team Formation)Fan Lai
Aug 31TransformersFan LaiSlides
Sept 2Transformers Deep DiveFan LaiSlides
Sept 7No Class (Labor Day)
Sept 9Distributed Training OverviewFan LaiSlidesBLASST
Sept 14Data ParallelismFan LaiSlidesDeepSeek-V3 Report (Sec 1-3)
Sept 16Tensor ParallelismFan LaiSlides
Sept 21Pipeline ParallelismFan LaiSlidesLlamaRL, Assignment 1 Released
Sept 23No Class (Meet to refine project ideas)Fan Lai
Sept 28Multi-Dimensional ParallelismFan LaiSlidesAlpa
Sept 30Mixed Precision TrainingFan LaiSlidesProject Proposal Due
Oct 5Project Proposal Feedback IFan Lai
Oct 7Project Proposal Feedback IIFan Lai
Oct 12Memory OptimizationFan LaiSlidesZeRO-style Data Parallelism
Oct 14Finetuning TechniquesFan LaiAssignment 1 Due
Oct 19Inference OverviewFan LaiSpeculative Decoding, Assignment 2 Release
Oct 21Batch Serving TechniquesFan LaiDistServe
Oct 26Paged AttentionFan LaiSGLang
Oct 28Adaptive KVFan Lai
Nov 2QuantizationFan Lai
Nov 4MoE EfficiencyFan LaiMid-semester Report Due
Nov 9Project Check-in & FeedbackFan LaiAssignment 2 Due, Assignment 3 Released (for 4-credit students)
Nov 11Project Check-in & FeedbackFan Lai
Nov 16Advanced Topics: RAG SystemsFan LaiMoonCake
Nov 18Advanced Topics: Agentic AIMurakkab
Nov 21-29Fall Break — No Class
Nov 30Guest LectureChen Wang (IBM)
Dec 2Final PresentationsAssignment 3 Due
Dec 7Final Presentations
Dec 9Final Presentations
Dec 18Final Report Due

Tentative Grading

Groups: Panel discussion and research project will be performed in groups of 4-5 students. Form a group and declare your group's membership and paper preferences by Sept 5. After this date, we will form groups from the remaining students.

Weight
Attendance15%
Panel Discussion8% (4% + 4%)
Lab assignments16% (2-3 lab assignments)
Reading summary16% (opt-in 8 out of 10 readings, 2% each)
Final project presentation15%
Project report30% (5% + 10% + 15%)

Academic integrity: The University's Honor Code applies to all activities related to this course. All material you submit in this course (reading summary, project reports, and presentation materials) must be your own. If you use someone else’s material, you must cite them properly.

AI Tool Policy: AI tools may be used for grammar checking and refining initial brainstorms, but the final reviews and codes must be authored by the student. Students are responsible for the entire content and must adhere to the Academic Integrity Policy.

Policies

Participation

Before Each Lecture: Some lectures may include a required reading. You must submit a summary of the paper by 11:59 PM on the due date.

During Lectures: Active participation is crucial for both your own understanding and to improve the overall quality of the course. You are expected to attend all lectures (up to 2 absences allowed for legitimate reasons), and more importantly, participate in class discussions. Not everyone must have add something every day, but it is expected that everyone has something to share over the semester.

Paper Summaries

You need to select and write paper summaries from 8 papers out of 10 listed papers. The summary should be done independently and include the following contents (five paragraphs):

  • P1: The problem the paper is trying to tackle. What's the impact of the work, e.g., why is it an important problem to solve?
  • P2: The main proposed idea(s).
  • P3: A summary of your understanding of different components of the proposed technique, e.g., the purpose of critical design choices.
  • P4: Your perceived strengths and weaknesses of the work, e.g., novelty, significance of improvements, quality of the evaluation, easy-to-use.
  • P5: Is there room for improvement? If so, what idea do you have for improving the techniques?

You do not need to write super long paragraphs, as long as you have the key points listed out in each paragraph. You can discuss the paper with other students, but all of your writing work should be your own. DO NOT use AI tools to draft it!

In terms of grading criteria, each summary has 10 points in total. For each review item above, you get:

  • 2: The summary item demonstrates a clear understanding of the paper.
  • 1: The summary item misses the point of the paper.
  • 0: The summary item is missing.

Due to selecting the 8/10 paper summaries, late submissions won't be accepted and will receive 0 points.

Post-Lecture Panel Discussion

To foster a deeper understanding of the papers and encourage critical thinking, lectures with paper summary will be followed by a panel discussion. This discussion will involve three distinct roles played by different student groups, simulating an interactive and dynamic scholarly exchange.

Roles and Responsibilities

  1. The Companion (Author) Group
  • Responsibility: As authors, you are expected to defend your paper against critiques, answer questions, and discuss how you might improve or extend your research in the future, akin to writing a rebuttal during the peer-review process.
  1. The Reviewer Group
  • Responsibility: Reviewers critically assess the paper, posing challenging questions and highlighting potential weaknesses or areas for further investigation. Your goal is to engage in a constructive critique of the paper, simulating a peer review scenario.
  1. Rest of the Class
  • Responsibility: During the panel discussions, feel free to actively ask questions and engage in the dialogue.

The lecturer will also pose challenging questions to both the companion and reviewer groups, so please come well-prepared!

Project

You will have to complete substantive work an instructor-approved problem and have original contribution. Surveys are not permitted as projects; instead, each project must contain a survey of background and related work.

You must meet the following milestones (unless otherwise specified in future announcements) to ensure a high-quality project at the end of the semester:

  • Turn in a 2-page draft proposal (template), plus as many pages as needed for references, by Sept 30. Remember to include the names and UIUC email addresses of the group members.
  • Each group must schedule project discussion with the instructor during class hours or office hours in the week of Oct 5 and Oct 7.
  • Each group must turn in a 4-page mid-semester report via email on or before 6:00PM CST on Nov 4.
  • Each group must turn in an 8-page final report and your code in Canvas on or before 6:00PM CST on Dec 18. The report must be submitted as a PDF file, with formatting similar to that of the papers you've read in the class. The self-contained (i.e., include ALL dependencies) code must be submitted as a zip file. Each zip file containing the code must include a README file with a step-by-step guide on how to compile and run the provided code.
  • You can find how to access GPU resources here.

Acknowledgements

This course alternates with Prof. Minjia Zhang's CS 498. Big thanks to Prof. Minjia Zhang!

Significant stargazers

Linshu Yang

34 followers · starred Aug 2025