Vijay Janapa Reddi
e0a71023e4
chore(landing): remove separate layout files in favor of unified light/dark mode
2026-02-26 11:43:19 -05:00
Vijay Janapa Reddi
fadef036e0
feat(landing): add multiple background animation variations and fix index.qmd
2026-02-26 11:42:59 -05:00
Vijay Janapa Reddi
809fd5ffce
feat(landing): add dark/cyberpunk and minimal/brutalist variations
2026-02-26 11:37:48 -05:00
Vijay Janapa Reddi
293623e8e7
feat(landing): update modern landing page with pixel bg and animations
2026-02-26 11:33:23 -05:00
Vijay Janapa Reddi
bdf8f7decd
Merge remote-tracking branch 'origin/feature/book-volumes' into feature/book-volumes
2026-02-26 08:10:51 -05:00
Zeljko Hrcek
b16f8f36cd
A figure has been updated in chapter 18
2026-02-26 12:57:51 +01:00
Zeljko Hrcek
81e9c34ba7
Updated a figure in chapter 16
2026-02-26 10:19:42 +01:00
Vijay Janapa Reddi
79b7925b95
Landing site: two-volume hub with vol1/vol2 navbar, hero, cards, local covers
2026-02-25 15:08:33 -05:00
Vijay Janapa Reddi
9dbdac00a1
refactor: final Gold Standard polish across both volumes; ensure all mathematical variables render correctly and narrative is authoritatively consistent
2026-02-25 08:39:30 -05:00
Vijay Janapa Reddi
2de66f1c0f
refactor: complete Gold Standard audit for core foundation chapters; unify Volume 1 and Volume 2 math; verify physical realism of hardware constants
2026-02-25 08:31:21 -05:00
Vijay Janapa Reddi
a78f5dd893
Merge pull request #1201 from harvard-edge/fix/ch15 and resolve README conflict
2026-02-25 08:27:02 -05:00
github-actions[bot]
130d3cc133
docs: add @adityamulik as tinytorch contributor for doc
2026-02-25 13:09:27 +00:00
Vijay Janapa Reddi
cc5c389c45
Merge pull request #1202 from adityamulik/module_1_doc_fix
...
Fix incorrect matrix multiplication computation in notebook example
2026-02-25 08:03:55 -05:00
Vijay Janapa Reddi
c990d0037e
Merge remote-tracking branch 'origin/fix/ch15' into feature/book-volumes
2026-02-25 07:54:56 -05:00
Vijay Janapa Reddi
ad6229a899
Adds options for targeted reference validation
...
Introduces `--only-from-report` and `--only-keys` arguments to the `references` validation command.
These allow re-validating only specific citation keys, either from a previous validation report or a custom list.
This significantly improves the workflow for correcting references by enabling focused re-runs and reducing validation time.
Removes the standalone `README_REFERENCE_CHECK.md` documentation, as its content is now implicitly handled by the integrated CLI help and broader documentation.
2026-02-25 07:48:18 -05:00
Vijay Janapa Reddi
aafc8f5d95
Merge remote-tracking branch 'origin/feature/book-volumes' into feature/book-volumes
2026-02-25 07:47:27 -05:00
Aditya Mulik
e5d8395265
The multiplication process example is corrected
2026-02-25 05:24:01 -05:00
Zeljko Hrcek
1f85111486
Updated a figure in chapter 15
2026-02-25 10:54:38 +01:00
Zeljko Hrcek
eccbd9d5d6
Updated a figure in chapter 15
2026-02-25 10:47:25 +01:00
Vijay Janapa Reddi
76b06d526f
refactor: anchor Volume 2 Compute Infrastructure math to the Frontier Mission; standardize hardware twin naming and unify Vol 1 and Vol 2 logic
2026-02-24 21:10:22 -05:00
Vijay Janapa Reddi
cc7c54e4ed
refactor: finalize the 'Engineering Crux' terminology (Hardware -> Systems -> Workloads -> Missions) across both volumes
2026-02-24 21:08:05 -05:00
Vijay Janapa Reddi
fdfd91bf03
refactor: sharpen System layer naming to reflect integrated Platforms (Hubs, Nodes, Phones) rather than hardware modules
2026-02-24 21:05:44 -05:00
Vijay Janapa Reddi
54957b891a
chore: verify and update system numbers for B200 and ESP32 to maintain consistency with physical reality and book prose
2026-02-24 21:03:50 -05:00
Vijay Janapa Reddi
bbfdcb5e55
refactor: fully unify Volume 2 Introduction with the Engineering Crux; anchor GPT-4 failure math to GPU_MTTF_HOURS
2026-02-24 20:55:34 -05:00
Vijay Janapa Reddi
20a0918ed1
refactor: anchor Volume 2 Distributed Training math to the Frontier Mission archetype; unify Vol 1 and Vol 2 logic
2026-02-24 20:54:27 -05:00
Vijay Janapa Reddi
977daf2b7c
refactor: anchor Interconnect Hierarchy and Serving Spectrum to System Archetypes; ensure self-healing math across Vol 1
2026-02-24 20:46:45 -05:00
Vijay Janapa Reddi
c57db2c2d6
feat: establish the 'Engineering Crux' hierarchy (Hardware -> Models -> Systems -> Scenarios) as the foundational framework for the curriculum
2026-02-24 20:26:22 -05:00
Vijay Janapa Reddi
56e091f7e0
feat: standardize System Archetypes in Vol 1 and Vol 2; add canonical roster table to Introductions; ensure tight math-prose integration
2026-02-24 20:23:50 -05:00
Vijay Janapa Reddi
ad843e21f7
style: Vol2 register pass follow-up #2 — fix two more violations in sustainable_ai
...
Flagged by the sustainable_ai editor agent as newly discovered during fixing:
- line 635: "If your cluster consumes...how much...actually went...how much was wasted?"
→ impersonal declarative; removes "your", two embedded rhetorical questions, two "actually"
- line 2261: "You want to fine-tune a small language model" in .callout-notebook
→ "Consider fine-tuning a small language model" (impersonal)
2026-02-24 19:52:53 -05:00
Vijay Janapa Reddi
d67ad7005c
style: Vol2 register pass follow-up — fix missed violations in distributed_training and sustainable_ai
...
Post-commit verification found 6 additional violations not caught by the
initial audit agents:
distributed_training (4 fixes):
- line 108: second person "If you could purchase a single GPU" → impersonal
- line 280: rhetorical Q "How exactly do 1,024 GPUs...agree" → declarative
- line 784: second person "Your AllReduce...Where do you look?" in
.callout-perspective → impersonal problem statement
- line 1347: rhetorical Q "where did the missing 25%...go?" → declarative
sustainable_ai (2 fixes):
- line 2047: embedded rhetorical Q "where does the dominant share of energy go?" → declarative
- line 2414: closing rhetorical Q "what happens to these clusters...?" → declarative noun phrase
2026-02-24 19:50:36 -05:00
Vijay Janapa Reddi
1ddf9bd5e3
style: Vol2 register pass — eliminate rhetorical questions, second person, vague intensifiers
...
Systematic register audit and fix across all 13 non-clean Vol2 chapters.
Clean chapters (compute_infrastructure, network_fabrics, inference, responsible_ai,
frontmatter, backmatter) required no edits.
Violations fixed by chapter:
- introduction: 14 fixes (rhetorical Qs, second person, vague intensifiers)
- collective_communication: 27 fixes (rhetorical Qs, contractions, second person, intensifiers)
- distributed_training: 7 fixes (all rhetorical questions → declarative statements)
- ops_scale: 6 fixes (intensifiers, second person, rhetorical Q, announcement transition)
- performance_engineering: 3 fixes (rhetorical Q, second person, announcement transition)
- robust_ai: 4 fixes (hedging, second person in callout-notebook)
- sustainable_ai: 4 fixes (rhetorical Q, second person, bold starter in callout)
- fleet_orchestration: 4 fixes (rhetorical questions)
- security_privacy: 4 fixes (banned phrase, second person, rhetorical Q)
- edge_intelligence: 4 fixes (rhetorical Q, vague intensifiers)
- fault_tolerance: 1 fix (second person in callout-notebook)
- data_storage: 1 fix (sentence-starting "But,")
- conclusion: 2 fixes (first-person "We have climbed", "To conclude" opener)
Pre-commit rendering/inline-refs failures are pre-existing on this branch
(77 files, 116 rendering issues, 179 inline-ref errors in unrelated files).
None of the 13 edited files have rendering violations.
2026-02-24 19:46:16 -05:00
Vijay Janapa Reddi
e881d92625
refactor: introduce System Archetypes in mlsys/systems.py and integrate into Introduction and Serving chapters; verify math integrity and rationale for LEGO blocks
2026-02-24 19:12:51 -05:00
Vijay Janapa Reddi
a0ce7cc746
style: Vol1 register pass — academic formality across 16 chapters
...
Systematic prose register audit and fix pass across all substantive
Vol1 chapters, enforcing book-prose.md Section 1 "Tone Register &
Academic Formality" rules:
- Rhetorical questions in body prose → declarative statements
- Sentence-starting coordinating conjunctions (But/And/So) → restructured
- Banned AI-pattern phrases ("leverage" → "use", "state-of-the-art" →
"top benchmark", "powerful" → precise alternatives, "groundbreaking"
removed, "dramatic" → quantified)
- Contractions in body prose → expanded forms
- Second person "you/your" → impersonal/third-person voice
- Vague intensifiers ("just", "simply", "actually", "perhaps", "clearly",
"very") → removed or replaced with precise language
- Bold paragraph starters in body prose → plain text
Protected content left unchanged: Purpose hook questions, .callout-
checkpoint content, code blocks, Python cells, TikZ/LaTeX math,
Fallacy/Pitfall structural labels, direct quotations.
Chapters modified (15 files, ~350 targeted edits):
introduction, ml_systems, nn_computation, ml_workflow, frameworks,
nn_architectures, training, data_selection, hw_acceleration,
model_compression, model_serving, benchmarking, ml_ops,
responsible_engr, conclusion
(data_engineering fixed in prior session)
2026-02-24 17:46:36 -05:00
Vijay Janapa Reddi
77f2735cb8
style: refine figure references across Vol1 and Vol2 to match academic tone (avoid 'Look at', 'below')
2026-02-24 15:13:01 -05:00
Vijay Janapa Reddi
af865684e0
vol2: finalize visual narrative (added power path, 3D parallelism, continuous batching, and carbon sankey diagrams)
2026-02-24 14:30:44 -05:00
Vijay Janapa Reddi
08e2f0f37a
vol2: finalize notation, formatting, and standalone alignment
2026-02-24 13:55:03 -05:00
Vijay Janapa Reddi
085dce9aa2
style: Vol1 italic emphasis pass — Pattern 1 signposts + Pattern 7 punchlines
2026-02-24 13:51:10 -05:00
Vijay Janapa Reddi
b0eb8646f5
feat(vscode-ext): colored icons in Chapter Navigator for figures, tables, equations, callouts, listings
...
- Use ThemeColor (charts.*) for entry icons: blue=figure, purple=table, green=listing, orange=equation, yellow=callout
- Section items use descriptionForeground for subtle hierarchy
- Add mlsysbook.navigatorVisibleEntryKinds config to toggle which content types appear in navigator
2026-02-24 11:00:32 -05:00
Vijay Janapa Reddi
485dce379a
style: Vol1 full SQS Phase 3 pass — prose quality, LEGO headers, locality
...
- Remove AI-pattern phrases: leverage/leverages (40+), utilize (10+), powerful (30+)
- Eliminate recap-style openers: 'With X established...' pattern (25+ instances)
- Fix sentence-initial coordinating conjunctions: But/And/So in body prose
- Replace vague intensifiers: very/significantly/somewhat → quantitative language
- Standardize LEGO headers: old P.I.C.O. naming → LOAD/EXECUTE/GUARD/OUTPUT
(introduction, ml_workflow, benchmarking, responsible_engr)
- Fix unit spacing: 80ms→80 ms, 40GB→40 GB, 3GB→3 GB (training, hw_acceleration)
- Correct hyphen-as-en-dash in numeric ranges: 1-2%→1--2%, 50-200 ms→50--200 ms
- Convert bold paragraph starters in body prose to flowing paragraphs
(ml_ops: data consistency/freshness/quality; training: Flash Attention conditions)
- Rewrite abstract section openers with concrete scenarios
- Fix contractions in body prose (doesn't/isn't/wasn't → expanded forms)
- Add end_chapter bookend to ml_workflow (was missing)
- Add end_chapter to mlsys/registry.py and export from __init__.py
- Standardize LEGO cell GUARD sections where missing (noted for author pass)
2026-02-24 10:57:17 -05:00
Vijay Janapa Reddi
9f0f7d2cf7
config: restore vol1 PDF build config (training active, ml_ops commented)
2026-02-24 09:27:32 -05:00
Vijay Janapa Reddi
352f95afe3
footnotes: ADD pass — 15 new footnotes across 9 Vol1 chapters
...
model_serving:
- fn-queuing-divergence: M/M/1 (1-ρ)^-1 math — 70% rule is mathematical, not heuristic
- fn-jevons-paradox: 1865 coal efficiency → inference demand paradox
- fn-speculative-decoding: k·α throughput math, parallel verification mechanism
training:
- fn-backprop-provenance: Linnainmaa 1970 / Werbos 1974 — 12-year adoption lag
- fn-saddle-points: overparameterized landscape geometry — saddle points > local minima
- fn-ridge-point-precision: precision shift moves the ridge point (FP32→BF16 doubles it)
hw_acceleration:
- fn-tensor-core-alignment: 8/16 multiple requirement, 8-16x fallback penalty
frameworks:
- fn-bf16-design: Google Brain 2018 origin, loss-scaling elimination via exponent match
model_compression:
- fn-sparsity-vectorization: SIMD lane waste mechanism, 90% threshold explained
nn_architectures:
- fn-kv-cache-depth: 14 GB weights + 1.07 GB/user math, memory-not-quality constraint
nn_computation:
- fn-batch-norm-cost: sync barrier, small-batch sensitivity, LayerNorm substitution
- fn-algorithm-hardware-lag: Werbos 1974→1986 lag; Bahdanau 2014→Transformer 2017
introduction:
- fn-ai-winters-systems: Lighthill Report + Lisp Machine collapse as systems failures
data_selection:
- fn-labeling-economics: $1k-$3k vs $75k-$150k clinical labeling cost arithmetic
- fn-chinchilla-ratio: D/N diagnostic (GPT-3 at 1.7, LLaMA-2 70B at 28, optimal ~20)
2026-02-24 09:14:52 -05:00
Vijay Janapa Reddi
d4bb450392
footnotes: enrich pass across 6 Vol1 chapters
...
hw_acceleration (6 actions):
- consolidate fn-hennessy-patterson-dsa into fn-dsa-efficiency (density fix), remove standalone
- fn-moores-law-scaling: cut baseline CS definition, start at ML compute-gap consequence
- fn-riscv-ai-customization: replace restatement with ISA licensing mechanism + ecosystem trade-off
- fn-dally-gpu-precision: remove unverifiable attribution, add Volta 6x throughput anchor
- fn-sparsity-nm-regularity: explain WHY 2:4 chosen (accuracy-performance knee, 2-bit metadata)
nn_architectures (2):
- fn-convolution-etymology: make self-standing, fix duplicate index tag → data reuse
- fn-dnn-tpu: anchor with TPU v1 vs K80 (2017): 25-30x inference throughput-per-watt
nn_computation (7):
- fn-gradient-instabilities: add 0.25^20 ≈ 10^-12 quantification, ReLU/residual mechanisms
- fn-tensor-operations: add NCHW/NHWC mismatch example (150 KB, 20-30% latency at 1k req/s)
- fn-bias-variance: drop etymology, add Double Descent compute-scaling consequence
- fn-parameter-memory-cost: pivot from Adam (covered elsewhere) to normalization layer insight
- fn-loss-function: remove MSE duplication, add loss-landscape geometry consequence
- fn-sigmoid-etymology: anchor "costly" with 50x silicon cost (chapter's own computed ratio)
- fn-edge-tpu-efficiency: fix tier (mobile not server), add Jetson Orin, 10x TDP gap
model_serving (1):
- fn-kendall-notation-serving: add M/G/c conservative-bias-as-feature insight (10-30% margin)
data_engineering (4):
- fn-data-cascades-silent: add 4-week median discovery time + structural silence mechanism
- fn-etl-quality-first: sharpen to ML-specific distributional validation vs. schema validation
- fn-feature-store-consistency: reframe around training-serving skew (5-15% accuracy loss)
- fn-data-lineage-forensics: add regulatory/debugging failure modes (GDPR, FCRA, graph traversal)
responsible_engr (6):
- fn-proxy-variable-bias: trim redundancy, add "fairness laundering" failure mode
- fn-model-card-transparency: rewrite around scope-creep failure (40-60% exceed documented scope)
- fn-adversarial-debiasing-cost: add distribution-shift stability insight (invariant representations)
- fn-tco-inference-dominance: replace Gartner etymology with 3 ML externality cost categories
- fn-ml-roi-heuristic: replace "industry experience" with mechanism (10-15x over 3 years)
- fn-audit-trail-scale: add append-only architecture pattern (Iceberg, Delta Lake, hash chains)
2026-02-24 09:01:21 -05:00
Vijay Janapa Reddi
24cd07b347
footnotes: trim fn-mlperf (benchmarking) — remove three-suite recap that duplicated body prose
2026-02-24 08:52:03 -05:00
Vijay Janapa Reddi
a4243a6c9a
footnotes: enrich pass for ml_ops (8) and model_compression (8)
...
ml_ops rewrites:
- fn-telemetry-mlops: drop etymology, add distribution-shift detection consequence
- fn-model-registry-ops: reframe to failure mode prevented (shadow deployment, 30-90min rollback)
- fn-entropy-model-decay: add empirical λ ranges by domain + infrastructure cadence consequence
- fn-staging-validation-ops: sharpen ML-vs-conventional distinction (probabilistic vs. deterministic)
- fn-shadow-deploy-ml: replace body-restatement with cost/benefit threshold + asymmetric risk framing
- fn-drift-types-ops: redirect to detection lag asymmetry (feature drift vs. concept drift)
- fn-drift-covariate-shift: drop etymology, focus on Shimodaira support-assumption failure mode
- fn-ray-distributed-ml: sharpen tether to training-serving skew via silent format-translation bugs
model_compression rewrites:
- fn-pruning-lecun-1989: anchor on memory efficiency first, Hessian as mechanism
- fn-heuristic-pruning: quantify the trap (90%+ from early layers, bottlenecks preserved)
- fn-kl-divergence-distillation: add asymmetric KL consequence (calibration transfer)
- fn-nas-hardware-aware: add FLOPs-vs-latency divergence (3-5x for same FLOP count)
- fn-nas-reinforcement-learning: explain inner-loop cost mechanism (12,800-22,400 candidates)
- fn-nas-evolutionary: add mechanism bridge + weight-sharing necessity consequence
- fn-quantization-shannon: quantify tolerance (INT8 <1%, INT4 1-3%, per-model validation)
- fn-ste-gradient-trick: explain zero-gradient mechanism, STE identity substitution error
2026-02-24 08:51:27 -05:00
Vijay Janapa Reddi
6af7b2c4a4
footnotes: remove 4 redundant footnotes from ml_ops.qmd
...
All 4 failed the instrument check (duplicate body text or preempt subsections):
- fn-youtube-feedback-loop: restated the surrounding case study body verbatim
- fn-blue-green-deploy-ml: only added colour labels to "instant rollback" claim already in prose
- fn-ab-testing-ml: preempted the dedicated A/B testing subsection ~200 lines later
- fn-alerting-ml-thresholds: duplicated body text on adaptive thresholds (ML Tether = 1)
2026-02-24 08:46:10 -05:00
Vijay Janapa Reddi
43b8f35f85
footnotes: Group C citation integrity pass (Vol1)
...
- model_compression/fn-int8-energy-deployment: add [@horowitz2014computing] for 200× DRAM/MAC energy claim
- ml_ops/fn-ray-distributed-ml: replace unverifiable "10x" with mechanism-based framing (serialization overhead removal)
- ml_ops/fn-youtube-feedback-loop: replace unverifiable "2 years" with qualitative multi-year framing
- hw_acceleration/fn-hbm-bandwidth-cost: replace unverifiable "50% of BOM" with qualitative "dominant cost component"
2026-02-24 08:43:34 -05:00
Vijay Janapa Reddi
704f7555fe
footnotes: Vol1 targeted enrich/add/remove pass from quality audit
...
Restoration pass (selective, based on Three-Job Rule audit):
- introduction: restore fn-eliza-brittleness, fn-dartmouth-systems, fn-bobrow-student
- data_engineering: restore fn-soc-always-on (always-on island architecture)
- benchmarking: restore fn-glue-saturation (Goodhart's Law arc, 1-year saturation)
Group A surgical edits:
- nn_computation: remove fn-overfitting (Context=1, Tether=1 — only confirmed failure)
- training: strip dead etymology from fn-convergence-training, fn-hyperparameter-training
- model_serving: enrich fn-onnx-runtime-serving with 5–15% TensorRT throughput figure
Group B new footnotes:
- nn_computation: add fn-alexnet-gpu-split (GTX 580 3 GB ceiling → model parallelism lineage)
- responsible_engr: add fn-zillow-dam (D·A·M decomposition of $304M failure)
2026-02-24 08:40:01 -05:00
Vijay Janapa Reddi
08eb91f492
Merge pull request #1200 from harvard-edge/fix/ch13
...
Updated figures in chapter 13
2026-02-24 08:39:37 -05:00
Zeljko Hrcek
15f430206d
Updated figures in chapter 13
2026-02-24 14:32:36 +01:00
Vijay Janapa Reddi
446d848fa8
vol2: finalize notation and formatting (standardized symbols, decimal units, and en-dash ranges)
2026-02-24 07:51:08 -05:00