Files
cs249r_book/instructors/getting-started.qmd
Vijay Janapa Reddi c53f3fe238 Site QA polish: finish MLSys.im brand migration, fix broken links, add memory-tier figure
- Complete the MLSYSIM -> MLSys.im display-name migration across mlsysim/docs,
  instructors, and shared config (code identifiers stay lowercase mlsysim)
- Fix broken TinyTorch module links (_ABOUT.html -> .html)
- Route the navbar Subscribe action to the newsletter page so Safari content
  blockers stop hiding the #subscribe anchor
- Add the Accelerator Memory Tiers figure to compute_infrastructure with a
  registry-driven log-log capacity/bandwidth scatter
- Add four sourced cloud accelerator specs (Groq LPU, Graphcore GC200,
  Untether speedAI240, d-Matrix Corsair) feeding the local-SRAM tier
- Remove the unshipped Coming Soon audio-lectures placeholder and related
  Binder/audio references
2026-06-27 08:14:00 -04:00

143 lines
6.1 KiB
Plaintext
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
---
title: "Getting Started"
subtitle: "From zero to teaching in one afternoon"
---
::: {.callout-note}
## Who is this site for?
**The Blueprint** is designed for **instructors and TAs** adopting the ML Systems curriculum. If you are a **student**, your instructor will direct you to the [textbook](https://mlsysbook.ai), [labs](https://mlsysbook.ai/labs/), and [TinyTorch](https://mlsysbook.ai/tinytorch/) directly.
:::
---
## Step 1: Choose Your Track
Decide which configuration fits your program:
| Configuration | Duration | What Students Get |
|:---|:---|:---|
| **Foundations Only** (most common) | 16 weeks | Vol I + TinyTorch 0108 + Labs 0015 |
| **Scale Only** (requires Vol I prereq) | 16 weeks | Vol II + Labs 0116 |
| **Full Sequence** | 2 semesters | Both volumes + all modules + all labs |
| **Quarter Version** | 10 weeks | Condensed Vol I (see [Customization](customization.qmd)) |
::: {.callout-tip}
## Recommendation
Start with **Foundations Only**. It is self-contained, requires no distributed systems background, and gives students a complete experience from theory through deployment.
:::
---
## Step 2: Access the Materials
All materials are open-source under [CC-BY-NC-SA 4.0](https://creativecommons.org/licenses/by-nc-sa/4.0/). No access codes, no adoption fees.
| Resource | Where to Find It | Format |
|:---|:---|:---|
| **Textbook Vol I** | [mlsysbook.ai/vol1](https://mlsysbook.ai/vol1/) | Web, PDF, EPUB |
| **Textbook Vol II** | [mlsysbook.ai/vol2](https://mlsysbook.ai/vol2/) | Web, PDF, EPUB |
| **TinyTorch** | [mlsysbook.ai/tinytorch](https://mlsysbook.ai/tinytorch/) | Jupyter notebooks |
| **Interactive Labs** | [mlsysbook.ai/labs](https://mlsysbook.ai/labs/) | Marimo (browser) |
| **Hardware Kits** | [mlsysbook.ai/kits](https://mlsysbook.ai/kits/) | Deployment guides |
| **Lecture Slides** | [mlsysbook.ai/slides](https://mlsysbook.ai/slides/) | PDF, PPTX, LaTeX |
| **GitHub Repository** | [github.com/harvard-edge/cs249r_book](https://github.com/harvard-edge/cs249r_book) | Source |
---
## Step 3: Set Up Infrastructure
### TinyTorch (Required for Foundations)
```bash
git clone https://github.com/harvard-edge/cs249r_book.git
cd cs249r_book/tinytorch
```
- Students work in `src/` — one folder per module (e.g., `src/01_tensor/`)
- Each module has a companion [module page](https://mlsysbook.ai/tinytorch/modules/01_tensor.html) with learning objectives, implementation guidance, and tests
- Auto-grading runs via `pytest` or `nbgrader`
- See the [TinyTorch Instructor Guide](https://mlsysbook.ai/tinytorch/) for nbgrader configuration
::: {.callout-tip}
## What Does a TinyTorch Module Look Like?
Each module is a Python file with scaffolded cells. Students implement core functions (`forward()`, `backward()`, etc.) while the test suite validates correctness. For example, in [Module 06: Autograd](https://mlsysbook.ai/tinytorch/modules/06_autograd.html), students build reverse-mode automatic differentiation from scratch — implementing the computation graph, topological sort, and gradient accumulation that powers every modern framework. Browse any module page on the [TinyTorch site](https://mlsysbook.ai/tinytorch/) to see the full structure.
:::
### Interactive Labs (Both Semesters)
```bash
pip install marimo mlsysim
marimo edit labs/vol1/lab_05_nn_compute.py
```
- Labs run in the browser — no GPU required
- The [`mlsysim`](https://mlsysbook.ai/mlsysim/) simulator provides hardware-accurate physics (models real hardware specs for H100, A100, Jetson, XIAO, and more)
- Zero infrastructure beyond Python 3.10+
### Hardware Kits (Optional)
- Budget: ~$50100 per student station
- Order 4+ weeks before semester start
- See [Hardware Kits site](https://mlsysbook.ai/kits/) for bill of materials
---
## Step 4: Set Up Your LMS
Create these assignment categories in Canvas, Gradescope, or your LMS:
**Semester 1 (Foundations):**
| Category | Weight | Frequency | Source |
|:---|:---|:---|:---|
| TinyTorch Modules | 35% | Weekly | Auto-graded notebooks |
| Lab Decision Logs | 25% | Weekly | Written reflections (200 words) |
| Design Challenges | 20% | Bi-weekly | Lab Part C open-ended problems |
| Capstone (AI Olympics) | 20% | Once | End-of-semester competition |
See [Assessment & Grading](assessment.qmd) for detailed rubrics and sample student work.
---
## Step 5: Choose Your Syllabus
We provide two complete, week-by-week syllabi with direct links to every reading, lab, and assignment:
- [**Foundations Syllabus**](foundations-syllabus.qmd) — 16 weeks covering Volume I
- [**Scale Syllabus**](scale-syllabus.qmd) — 16 weeks covering Volume II
Need to adapt for a quarter system, a graduate seminar, or a specific emphasis? See the [Customization Guide](customization.qmd).
---
## Step 6: Your First Week
Here is exactly what to assign on Day 1:
1. **Reading**: [Vol I, Introduction](https://mlsysbook.ai/vol1/introduction/introduction.html) (45 min)
2. **Lab**: [Lab 00](https://mlsysbook.ai/labs/vol1/lab_00_introduction.html) — The Architect's Portal (30 min)
3. **TinyTorch**: [Module 01: Tensor](https://mlsysbook.ai/tinytorch/modules/01_tensor.html) — due end of Week 1 (46 hrs)
4. **Prediction Lock**: "A GPU is how many times faster than a CPU for a $1024{\times}1024$ matrix multiply?" (students commit a number before Lab 01)
::: {.callout-tip}
## Day 1 Activity
Have students write their GPU speedup prediction on a sticky note and post it on the board. After Lab 01, revisit. The visual distribution — and how wrong most of them are — sets the tone for the entire course.
:::
---
## Step 7: Prepare Your TAs
If you have teaching assistants, share these resources with them:
- [**TA Guide**](ta-guide.qmd) — grading workflows, common student struggles, lab facilitation
- [**Assessment & Grading**](assessment.qmd) — rubrics they will use every week
- [**Pedagogy Guide**](pedagogy.qmd) — the "why" behind Prediction Locks, Decision Logs, and the A-B-C structure
---
## Step 8: Join the Community
- **GitHub Discussions**: [Ask questions, share adaptations, report issues](https://github.com/harvard-edge/cs249r_book/discussions)
- **OpenCollective**: [Support the project's ongoing development](https://opencollective.com/mlsysbook)