Teaching Guide
How a lecture is built
This guide describes the lecture decks for all four volumes. Each volume is taught as a separate course, and its decks follow the same design.
Each deck is one lecture, on one chapter of the book or on one part of a larger chapter. A lecture opens with a real system, failure, or number, works through the chapter’s core ideas in a small number of sections, and closes by returning to the opening example. Each section opens with a divider slide that names its question and the chapter sections to read. A progress line in the header shows where the lecture is.
Most slides carry one idea and one picture. Figures build one step at a time, so the class looks at one thing while it is explained. Every number on a slide has its source in small type at the bottom of the slide.
Use the slides as the classroom layer of the curriculum: assign the textbook chapter for reading, use TinyTorch for implementation, the Hardware Kits for deployment, and the Instructor Hub for syllabi, assessment, and TA workflows.
Speaker notes
Every slide has notes written as instructions to the instructor. Each note gives:
- whether the slide is
[CORE]or[OPTIONAL]; - what to say at each step of a build;
- ENGAGE: a question for the class, with the expected answer and what a wrong answer reveals;
- WARN: a common misconception and how to address it;
- LINK: where the idea comes from or returns in another lecture.
The optional slides can be skipped for a shorter class without breaking the argument.
In PowerPoint or Keynote, the notes appear in the notes pane and in presenter view. With the PDF, the notes are in the source as \note{...} on each slide, and make notes builds a PDF that shows each slide beside its notes.
Activities
Activities recur throughout each lecture, and each is marked by a tag in the slide’s top corner:
- Predict: students commit to an answer before the slide reveals it.
- Estimate: a short calculation from given numbers, worked on the next step.
- Diagnose: students name the cause of a failure or the resource that limits a system.
- Discuss: a question for pairs, with no single answer.
- Vote: true or false, or a choice among options, by show of hands.
- Concept question: a short question on the idea just taught, answered by the class before the slide reveals the answer.
- Your turn: students work a problem on their own from the numbers on the slide.
- Retrieval or Recall: students recall an earlier idea from memory, posed as the question of the day.
Semester plan
Each volume is a course of its own, and none assumes another volume was taught. Lecture 0 introduces the course, and each chapter has one lecture. In Volume I, the larger chapters have a second lecture that teaches what the first leaves to the reading. Each volume’s page lists its decks in teaching order: Volume I, Volume II, Volume III, and Volume IVand Volume II.
Changing the slides
The slides are LaTeX Beamer source, open for any change.
slides/
assets/beamerthememlsys.sty # the theme: colors, header, footer, macros
assets/kit/ # figures shared across a volume (the stack, one node)
vol1/ ... vol4/<deck>/
<deck>.tex # the slides and their notes
lecture_map.yml # the lecture plan: thesis, segments, activities
images/make_figs.py # draws every plot in the deck
images/ # figures, photos, and SOURCES.yml (photo credits)
Makefile
Building a deck
cd slides
make deck V=3 D=05_kv_cache # the presenting PDF
make handout V=3 D=05_kv_cache # one page per slide, final state of each build
make notes V=3 D=05_kv_cache # each slide beside its speaker notes
# PowerPoint for every built deck in a volume
python3 scripts/pdf2pptx.py _build/vol3/*.pdf --output-dir _build/vol3V is the volume number and D the deck folder. Output goes to _build/volN/. A build needs a TeX distribution with pdflatex and the Metropolis Beamer theme, plus Inkscape to convert figures. PowerPoint conversion also needs poppler and the Python packages python-pptx and Pillow. Build a deck’s notes before converting it, so the speaker notes are copied into the PowerPoint file. Each PowerPoint slide is a 300 DPI image of the PDF page, so it looks the same as the PDF but its text cannot be edited; to change a slide, edit the LaTeX source.
Editing
- Fork the repository.
- Edit
<deck>.tex, or change a plot inimages/make_figs.pyand run it. - Rebuild the deck and look at every page you changed.
Figures are SVG files, converted to PDF by the build. Edit them in any vector editor.
The theme
assets/beamerthememlsys.sty sets the look of every deck. Each volume has its own accent color, chosen in the deck’s \mlsyssetup{volume=...} line, so all of a volume’s decks change together when the theme changes.