CS2680 Modern AI Systems: Agents and System Optimizations
Course Policy and FAQ

Grading Breakdown

Component Weight
Assignment 1 — build something with an agent 10%
Assignment 2 — build an agent 10%
Assignment 3 — make your agent 3× cheaper 10%
Project Proposal 5%
Project Checkpoint 5%
Project Presentation 10%
Final Project Report 20%
Cache Competition 10%
Paper Presentation 10%
Class Participation 10%
Bonus (course feedback & problems AI cannot solve) up to 10%

The four project components add up to the 40% project weight listed on the home page. There is no exam in this course. There is no curve set in advance; if the class as a whole finds an assessment harder than intended, the instructor may adjust upward, never downward.


Late Days

You have four late days for the semester, to spend as you like across the three assignments and the project proposal, checkpoint, and final report. Late days are counted in whole days: a submission one minute past the deadline consumes one full late day.

  • Late days are per student. On a team project, using a late day spends one from every team member.
  • Once your late days are exhausted, late work loses 20% of its value per day, to a floor of zero after five days.
  • Late days cannot be applied to paper presentations or the final project presentation — these are tied to a class slot and cannot be moved.
  • If something serious comes up (illness, family emergency, accommodation needs), email the instructor. We would much rather hear from you early than grade you down late.

Regrade Requests

Regrade requests are accepted for seven days after grades are released. Submit them in writing (Canvas or email) with a specific explanation of what you believe was misgraded and why. Please do not open a regrade request over a single point — use it when you think a substantive part of your work was misread.

A regrade is a re-evaluation of the entire question or artifact, not just the disputed part, so your score may go up or down.


Attending Guest Speakers' Lectures

We plan to host guest speakers from industry who build the systems we study. These are among the most valuable sessions of the course and attendance is expected. Please come with questions — the speakers are giving up their time and a silent room is a wasted opportunity.

Recording, photographing, or redistributing guest lectures is not permitted unless the speaker explicitly agrees.


Bonus Points

Up to 10% of bonus credit is available, from two sources.

  • Course feedback — 5%. Substantive feedback on lectures, readings, assignments, or the pacing of the course, submitted during the term while it can still be acted on. Feedback after the course ends helps the next cohort but cannot help you, so send it early. Critical feedback is worth the same as praise; it is usually worth more.
  • Problems current AI cannot solve — 2% each, up to 5%. Find a question in this course's subject area that ChatGPT, Claude, and Gemini all get wrong — either they cannot solve it, or they answer confidently from expired knowledge.
What counts as an AI-stumper submission

This field moves faster than model training runs, so a great deal of what these systems "know" about GPUs, serving frameworks, and kernel APIs is quietly out of date. Finding those gaps is a genuinely useful skill and it is the point of this exercise. A submission needs all four of:

  • The exact prompt, reproducible verbatim.
  • The responses from all three models, with the date and the model version you used.
  • The correct answer, with evidence — a primary source, a specification, or a measurement you took yourself.
  • A sentence on why the models failed: genuinely unsolved, out-of-date training data, a plausible-sounding fabrication, or a reasoning failure.
The bar: your answer must be right. A submission where the models were correct and you were not earns nothing — and checking that carefully before submitting is most of the exercise. Questions that are merely obscure trivia do not count; the question should matter to someone building these systems.

AI Use Policy

You may use AI tools throughout this course, including for the project. This is a course about the systems underneath these tools, and pretending they do not exist would be strange. Two conditions apply.

Disclose. Every submitted artifact must include a short note describing which tools you used and for what — a couple of sentences is enough. Undisclosed AI use is an integrity violation; disclosed AI use never is.

Own it. You are responsible for everything you submit. If an AI tool generates code with a subtle bug, a benchmark with a methodological flaw, or a claim about a paper that the paper does not make, that is your error. In discussion, in your presentation, and in questions afterwards, you will be expected to explain your own work without assistance — which is, in practice, the check that matters.


Attendance and Laptop Use

Attendance is expected. Participation is 10% of the grade and cannot be earned from an empty seat. Paper discussion sessions in the second half of the term depend on the room having read the paper — a discussion class with an unprepared audience does not work.

Laptops and tablets are welcome for note-taking and for following along with code. Please keep them closed during student presentations and guest lectures; presenting to a wall of screens is dispiriting, and your classmates deserve the same attention you will want when it is your turn.

If you must miss a class, no permission is needed — but let the instructor know in advance if it falls on a day you are presenting.


Religious and Spiritual Observance

Harvard supports students in observing their religious and spiritual traditions while participating fully in their academic work. If a religious or spiritual observance conflicts with a class meeting, an assignment, or any other course requirement, please contact me as early as possible so that we can try to identify an appropriate academic flexibility consistent with course requirements and University policies.

Because observances and practices vary across traditions and individuals, you do not need to limit requests to dates included on a published religious calendar. Students are encouraged to review the Harvard Multifaith Calendar and the Harvard Chaplains resources at the beginning of the term, and to communicate anticipated conflicts early whenever possible.

Concretely, in this course:

  • Presentations. The late-day policy says paper and project presentations cannot be moved, because they are tied to a class slot. Religious observance is an exception — tell me early and I will schedule you into a different session.
  • Deadlines. Project deadlines can be shifted for an observance without spending any of your late days.
  • Participation. An absence for religious observance does not count against the participation component of your grade.

You do not need to explain or justify your tradition or your practice to me. “I have a religious observance on date” is a complete request.


Academic Integrity

Discussing ideas with classmates is encouraged. Reading papers together, arguing about a design, and debugging alongside each other are all part of how systems work gets done.

What is not acceptable: submitting work you did not do, copying text or code without attribution, fabricating experimental results, or misrepresenting what a measurement shows. Fabricated numbers are the one thing in this course that will be treated as a serious violation without exception — a systems paper whose evaluation cannot be trusted is worthless, and the same holds here.

Cite your sources: papers, blog posts, repositories, and AI tools alike. All work is subject to the Harvard College Honor Code and to GSAS academic integrity policy where applicable.


All Students Welcome

This course is intended for students of all backgrounds. Students come to AI systems from machine learning, from operating systems, from architecture, and from industry, and the mix is what makes the discussions good. Nobody arrives knowing all of it.

If anything about the course — its pace, its assumptions about prior knowledge, its examples — is making it harder for you to participate, please tell the instructor. That feedback is genuinely useful and it will be acted on.

Students needing academic accommodations should contact the Disability Access Office and let the instructor know as early in the term as possible, ideally within the first two weeks.


Auditing the Course

Auditors are welcome if there is room. Please email the instructor before the first class. Auditors are expected to do the reading for discussion sessions they attend — the discussion format depends on it — but do not submit projects and are not graded.


Well-Being and Mental Health

Graduate systems courses have a way of expanding to fill all available time. This one has a substantial project and it is possible to overcommit. If the workload is becoming unmanageable, talk to the instructor before it becomes a crisis — scope can usually be adjusted.

Harvard has resources available at any hour:

Your health matters more than any deadline on this page.


Frequently Asked Questions

Questions that come up most often. If yours is not here, email the instructor or come to office hours — if it is a good question it will end up on this page.

What are the prerequisites for this course?

At least one of CS61, CS1610, or CS2620. What actually matters is that you are comfortable reasoning about memory, caches, and concurrency, and that you can read and write Python and PyTorch. Prior ML coursework helps but is not required — we care about the systems, not about training models to convergence.

Do I need to know CUDA?

No. We will cover what you need, and kernel work in the course uses Triton rather than raw CUDA. If you already know CUDA you will have an easier time in two lectures and a wider set of project options.

Is this a machine learning course?

No. We never ask whether a model is accurate — we ask what it costs to train and serve. If you want to study architectures, objectives, or learning theory, this is the wrong course. If you want to know why inference is memory-bound and what anyone can do about it, this is the right one.

What programming languages will be used?

Python and PyTorch for most work, Triton for kernels, and some C/C++ if your project takes you into a runtime or the kernel. Reading code is at least as important as writing it here.

Is attendance mandatory?

Attendance is expected and participation is 10% of the grade. The second half of the course is discussion based and does not work if the room has not read the paper. See the attendance policy.

Will lectures be recorded?

To be confirmed. Guest lectures will not be recorded unless the speaker agrees.

Can I use AI tools in this course?

Yes, subject to two conditions: disclose what you used, and take responsibility for the result. There is bonus credit for finding questions in this subject area that ChatGPT, Claude, and Gemini all get wrong. See the AI use policy.

Can I audit the course?

Yes, if there is room — email the instructor before the first class. Auditors are expected to read the papers for any discussion session they attend.

Is there an exam?

No. There is no midterm and no final. Assessment is two agent-building assignments (10% each), the project (45%), the cache competition (10%), your paper presentation (15%), and class participation (10%). See the grading breakdown.

Can I work with team members on the project?

Yes — teams of two or three are expected. Solo projects need instructor approval and are held to a similar scope, so they are rarely a good idea. Teams of four are not permitted.

Do I need my own GPUs for the project?

No. Compute will be available through FASRC and CloudLab; details are on the projects page. Many excellent projects run on a single GPU — scope the question to the hardware you can actually get, and start early, because queue time is real.

Can my project overlap with my research?

Yes, and it often makes for the best projects. Tell the instructor in the proposal what part is new for this course. You may not submit work already completed before the term.

What if my project fails?

A well-executed project that produces a negative result gets full credit. What is graded is the quality of the question, the rigor of the method, and the honesty of the reporting — not whether the number went up. Use the checkpoint to tell us early if something is not working.

How much work is this course?

Plan on the reading (one to two papers per discussion class) plus the project, which dominates the second half of the term. Teams that start the project in November have a hard time. Teams that start in October generally do not.

Are there recommended resources beyond the readings?

Yes — OSTEP for systems background, the Ultra-Scale Playbook for distributed training, the CUDA programming guide for GPU details, and the AI resources list on the projects page.

My question is not here.

Email the instructor or come to office hours. If it is a good question it will end up on this page.