Files
cs249r_book/book
Vijay Janapa Reddi 159f4588c8 fix(docker): replace Chocolatey texlive with direct install-tl and mirror fallback
Chocolatey's texlive wrapper sets ErrorActionPreference=Stop and relies on
install-tl picking a random CTAN mirror at runtime. When that mirror is
flaky (as mirrors.rit.edu was), the entire build fails with no fallback.

Switch to calling install-tl-windows.bat directly:
- Set ErrorActionPreference=Continue so we own error handling
- Write a profile with instopt_adjustrepo=0 to prevent auto-mirror switching
- Pass -repository explicitly, trying Illinois → MIT → mirror.ctan.org in order
- Pin tlmgr repository post-install to the same stable mirror
- Remove Chocolatey texlive dependency entirely
2026-03-02 20:38:22 -05:00
..

Machine Learning Systems

Principles and Practices of Engineering Artificially Intelligent Systems

Build Website PDF EPUB

Read Online | Volume I | Volume II | PDF


What This Is

The ML Systems textbook teaches you how to engineer AI systems that work in the real world. It bridges machine learning theory with systems engineering practice, covering everything from neural network fundamentals to production deployment.

This directory contains the textbook source and build system for contributors.


What You Will Learn

ML Concepts Systems Engineering
Neural networks and deep learning Memory hierarchies and caching
Model architectures (CNNs, Transformers) Hardware accelerators (GPUs, TPUs, NPUs)
Training and optimization Distributed systems and parallelism
Inference and deployment Power and thermal management
Compression and quantization Latency, throughput, and efficiency

The ML ↔ Systems Bridge

You know... You will learn...
How to train a model How training scales across GPU clusters
That quantization shrinks models How INT8 math maps to silicon
What a transformer is Why KV-cache dominates memory
Models run on GPUs How schedulers balance latency vs throughput
Edge devices have limits How to co-design models and hardware

Book Structure

This textbook is organized into two volumes following the Hennessy & Patterson pedagogical model:

Volume Theme Focus
Volume I Build, Optimize, Deploy Single-machine ML systems, foundational principles
Volume II Scale, Distribute, Govern Distributed systems at production scale

Volume I: Build, Optimize, Deploy

Part Focus Chapters
Foundations Core concepts Introduction, ML Systems, DL Primer, Architectures
Development Building blocks Workflow, Data Engineering, Frameworks, Training
Optimization Making it fast Efficient AI, Optimizations, HW Acceleration, Benchmarking
Deployment Making it work Serving, MLOps, Responsible Engineering

Volume II: Scale, Distribute, Govern

Part Focus Chapters
Foundations of Scale Infrastructure Infrastructure, Storage, Communication
Distributed Systems Coordination Distributed Training, Fault Tolerance, Inference, Edge Intelligence
Production Challenges Operations On-device Learning, Privacy & Security, Robust AI, Ops at Scale
Responsible Deployment Trust Responsible AI, Sustainable AI, AI for Good, Frontiers

What Makes This Book Different

Systems first: Start with hardware constraints and work up to algorithms, not the other way around.

Production focus: Every concept connects to real deployment scenarios, not just research benchmarks.

Open and evolving: Community-driven updates keep content current with a fast-moving field.

Hands-on companion: Pair with TinyTorch to build what you learn from scratch.


Quick Start

For Readers

# Read online
open https://mlsysbook.ai/book/

# Download formats
curl -O https://mlsysbook.ai/book/assets/downloads/Machine-Learning-Systems.pdf
curl -O https://mlsysbook.ai/book/assets/downloads/Machine-Learning-Systems.epub

For Contributors

cd book

# First time setup
./binder setup
./binder doctor

# Daily workflow
./binder clean              # Clean build artifacts
./binder build              # Build HTML book
./binder preview intro      # Preview chapter with live reload

# Build all formats
./binder build pdf          # Build PDF
./binder build epub         # Build EPUB

# Utilities
./binder help               # Show all commands
./binder list               # List chapters
./binder validate all       # Run Binder-native validation checks
./binder maintain repo-health # Run Binder-native repo diagnostics

Directory Structure

book/
├── quarto/              # Book source (Quarto markdown)
│   ├── contents/        # Chapter content
│   │   ├── vol1/        # Volume I: Build, Optimize, Deploy
│   │   ├── vol2/        # Volume II: Scale, Distribute, Govern
│   │   ├── frontmatter/ # Preface, about, changelog
│   │   └── backmatter/  # References, glossary
│   ├── assets/          # Images, downloads
│   └── config/          # Quarto configuration files
├── cli/                 # Binder CLI tool
├── docker/              # Development containers
├── docs/                # Documentation
├── tools/               # Build scripts
└── binder               # CLI entry point

Documentation

Audience Resources
Readers Online BookVolume IVolume IIPDF
Contributors CONTRIBUTING.mdBUILD.md
Developers DEVELOPMENT.mdBINDER.md

Binder is the public automation API for book build/validate/maintenance workflows. Use Binder subcommands in editor integrations and CI where possible.


Contributing

We welcome contributions! See docs/CONTRIBUTING.md for guidelines.

  1. Fork and clone the repository
  2. Set up your environment: ./binder setup
  3. Find an issue or propose a change
  4. Make your changes in the quarto/contents/ directory
  5. Preview your changes: ./binder preview <chapter>
  6. Submit a PR with a clear description

Component Description
Main README Project overview and ecosystem
TinyTorch Build ML frameworks from scratch
Hardware Kits Deploy to Arduino, Raspberry Pi, edge devices
Website Read the book online

Contributors

Thanks to these wonderful people who helped improve the book!

Legend: 🪲 Bug Hunter · Code Warrior · 📚 Documentation Hero · 🎨 Design Artist · 🧠 Idea Generator · 🔎 Code Reviewer · 🧪 Test Engineer · 🛠️ Tool Builder

Vijay Janapa Reddi
Vijay Janapa Reddi

🪲 🧑‍💻 🎨 ✍️ 🧠 🔎 🧪 🛠️
Marcelo Rovai
Marcelo Rovai

🧑‍💻 🎨 🧪
Gabriel Amazonas
Gabriel Amazonas

🪲 ✍️ 🧠
Kai Kleinbard
Kai Kleinbard

🧑‍💻 🛠️
Didier Durand
Didier Durand

✍️ 🪲
Zeljko Hrcek
Zeljko Hrcek

🧑‍💻
Jason Jabbour
Jason Jabbour

✍️
Ikechukwu Uchendu
Ikechukwu Uchendu

✍️
Naeem Khoshnevis
Naeem Khoshnevis

✍️
Sara Khosravi
Sara Khosravi

✍️
Douwe den Blanken
Douwe den Blanken

✍️
Jeffrey Ma
Jeffrey Ma

✍️
shanzehbatool
shanzehbatool

✍️
Elias
Elias

✍️
Jared Ping
Jared Ping

✍️
Itai Shapira
Itai Shapira

✍️
Maximilian Lam
Maximilian Lam

✍️
Jayson Lin
Jayson Lin

✍️
Sophia Cho
Sophia Cho

✍️
Andrea
Andrea

✍️
Alex Rodriguez
Alex Rodriguez

✍️
Korneel Van den Berghe
Korneel Van den Berghe

✍️
Nimo
Nimo

✍️
Colby Banbury
Colby Banbury

✍️
Zishen Wan
Zishen Wan

✍️
Mark Mazumder
Mark Mazumder

✍️
Abdulrahman Mahmoud
Abdulrahman Mahmoud

✍️
Divya Amirtharaj
Divya Amirtharaj

✍️
Srivatsan Krishnan
Srivatsan Krishnan

✍️
marin-llobet
marin-llobet

✍️
Aghyad Deeb
Aghyad Deeb

✍️
Haoran Qiu
Haoran Qiu

✍️
Emil Njor
Emil Njor

✍️
ELSuitorHarvard
ELSuitorHarvard

✍️
kaiM0ves
kaiM0ves

✍️
oishib
oishib

✍️
Jared Ni
Jared Ni

✍️
Aditi Raju
Aditi Raju

✍️
Michael Schnebly
Michael Schnebly

✍️
Thuong Duong
Thuong Duong

✍️
Yu-Shun Hsiao
Yu-Shun Hsiao

✍️
Henry Bae
Henry Bae

✍️
Eimhin Laverty
Eimhin Laverty

✍️
Jae-Won Chung
Jae-Won Chung

✍️
Shvetank Prakash
Shvetank Prakash

✍️
Marco Zennaro
Marco Zennaro

✍️
Arya Tschand
Arya Tschand

✍️
Andrew Bass
Andrew Bass

✍️
Pong Trairatvorakul
Pong Trairatvorakul

✍️
Eura Nofshin
Eura Nofshin

✍️
Matthew Stewart
Matthew Stewart

✍️
Emeka Ezike
Emeka Ezike

✍️
jianqingdu
jianqingdu

✍️
Jennifer Zhou
Jennifer Zhou

✍️
The Random DIY
The Random DIY

✍️
Fatima Shah
Fatima Shah

✍️
Bruno Scaglione
Bruno Scaglione

✍️
Allen-Kuang
Allen-Kuang

✍️
Tess314
Tess314

✍️
Tauno Erik
Tauno Erik

✍️
gnodipac886
gnodipac886

✍️
Sercan Aygün
Sercan Aygün

✍️
TheHiddenLayer
TheHiddenLayer

✍️
Gauri Jain
Gauri Jain

✍️
Fin Amin
Fin Amin

✍️
Alex Oesterling
Alex Oesterling

✍️
Abenezer Angamo
Abenezer Angamo

✍️
Baldassarre Cesarano
Baldassarre Cesarano

✍️
Jahnic Beck
Jahnic Beck

✍️
अरनव शुक्ला | Arnav Shukla
अरनव शुक्ला | Arnav Shukla

✍️
Rin
Rin

✍️
Bilge Acun
Bilge Acun

✍️
Andy Cheng
Andy Cheng

✍️
Aritra Ghosh
Aritra Ghosh

✍️
abigailswallow
abigailswallow

✍️
Yang Zhou
Yang Zhou

✍️
JEON HYUNJUN(Luciano)
JEON HYUNJUN(Luciano)

✍️
Emmanuel Rassou
Emmanuel Rassou

✍️
Jason Yik
Jason Yik

✍️
Jessica Quaye
Jessica Quaye

✍️
Cursor Agent
Cursor Agent

✍️
happyappledog
happyappledog

✍️
Snuggs
Snuggs

✍️
Sam Wilcock
Sam Wilcock

✍️
Shreya Johri
Shreya Johri

✍️
Sonia Murthy
Sonia Murthy

✍️
Costin-Andrei Oncescu
Costin-Andrei Oncescu

✍️
formlsysbookissue
formlsysbookissue

✍️
Annie Laurie Cook
Annie Laurie Cook

✍️
Parampreet Singh
Parampreet Singh

✍️
Vijay Edupuganti
Vijay Edupuganti

✍️
Jothi Ramaswamy
Jothi Ramaswamy

✍️
Batur Arslan
Batur Arslan

✍️
Curren Iyer
Curren Iyer

✍️
Edward Jin
Edward Jin

✍️
Tess Watt
Tess Watt

✍️
bluebaer7
bluebaer7

✍️
yanjingl
yanjingl

✍️
a-saraf
a-saraf

✍️
songhan
songhan

✍️
jvijay
jvijay

✍️
Zishen
Zishen

✍️
Kristian Radoš
Kristian Radoš

✍️
Dang Truong
Dang Truong

🧑‍💻
pipme
pipme

✍️
Salman Chishti
Salman Chishti

✍️

Recognize a contributor: Comment on any issue or PR:

@all-contributors please add @username for doc, review, translation, or design

License

Book content is licensed under Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International (CC BY-NC-SA 4.0).

See LICENSE.md for details.