# ⚡ Quick Reference **One-page cheatsheet for experienced developers** ## Essential Commands ### Setup & Verification ```bash # Initial setup git clone https://github.com/mlsysbook/TinyTorch.git cd TinyTorch ./setup-environment.sh source activate.sh # Verify installation tito system health # System information tito system info ``` ### Core Workflow ```bash # 1. Edit module in Jupyter cd modules/NN_name jupyter lab NN_name.ipynb # 2. Export to package tito module complete N # 3. Validate (run milestone scripts) cd milestones/MM_YYYY_name python script.py ``` ### Module Management ```bash # Export specific module tito module complete 01 # Check module status tito checkpoint status # System reset (if needed) tito system reset ``` ### Community & Benchmarking ```bash # Join community (optional) tito community join # Run baseline benchmark tito benchmark baseline # View profile tito community profile ``` ## Module Dependencies ### Foundation (Required for All) **Modules 01-07**: Tensor, Activations, Layers, Losses, Autograd, Optimizers, Training **Unlocks:** - Milestone 01: Perceptron (1957) - Milestone 02: XOR Crisis (1969) - Milestone 03: MLP (1986) ### Architecture (Vision + Language) **Modules 08-13**: DataLoader, Convolutions, Tokenization, Embeddings, Attention, Transformers **Unlocks:** - Milestone 04: CNN (1998) - requires M01-09 - Milestone 05: Transformer (2017) - requires M01-13 ### Optimization (Production) **Modules 14-19**: Profiling, Quantization, Compression, Memoization, Acceleration, Benchmarking **Unlocks:** - Milestone 06: Torch Olympics (2018) - requires M01-19 ### Capstone **Module 20**: Torch Olympics Competition ## Common Workflows ### Starting a New Module ```bash # Navigate to module directory cd modules/05_autograd # Open in Jupyter jupyter lab 05_autograd.ipynb # Implement required functions # Run inline tests # Add docstrings # Export when complete cd ../.. tito module complete 05 ``` ### Debugging Module Errors ```bash # Check system health tito system health # View detailed error logs tito module complete N --verbose # Reset if corrupted tito system reset # Reimport in Python python >>> from tinytorch import * >>> # Test your implementation ``` ### Running Milestones ```bash # After completing Foundation (M01-07) cd milestones/01_1957_perceptron python 01_rosenblatt_forward.py # After completing Architecture (M01-09) cd milestones/04_1998_cnn python 01_lenet_inference.py python 02_lenet_training.py # After completing Optimization (M01-19) cd milestones/06_2018_mlperf python benchmark.py ``` ## File Structure ``` TinyTorch/ ├── modules/ # Source notebooks (edit these) │ ├── 01_tensor/ │ │ └── 01_tensor.ipynb │ └── ... ├── tinytorch/ # Exported package (auto-generated) │ ├── core/ │ ├── nn/ │ └── ... ├── milestones/ # Validation scripts (run these) │ ├── 01_1957_perceptron/ │ ├── 02_1969_xor/ │ └── ... └── tito/ # CLI tool ``` ## Import Patterns ```python # After exporting modules from tinytorch.core.tensor import Tensor # M01 from tinytorch.nn.activations import ReLU, Softmax # M02 from tinytorch.nn.layers import Linear # M03 from tinytorch.nn.losses import CrossEntropyLoss # M04 from tinytorch.autograd import backward # M05 from tinytorch.optim import SGD, Adam # M06 from tinytorch.training import Trainer # M07 ``` ## Troubleshooting Quick Fixes | Issue | Quick Fix | |-------|-----------| | `ModuleNotFoundError: tinytorch` | Run `tito module complete N` to export | | `tito: command not found` | Run `source activate.sh` | | Import works in notebook, fails in Python | Restart Python kernel after export | | Tests pass in notebook, fail in milestone | Check module dependencies (M01-07 required) | | OOM errors | Profile memory usage, check for unnecessary copies | | NaN losses | Check gradient flow, activation stability | ## Performance Expectations ### Baseline Benchmarks (Your Hardware May Vary) - **M01-07**: Perceptron trains in <1 second - **M01-09**: CIFAR-10 CNN trains in 10-30 minutes (CPU) - **M01-13**: Small transformer inference in 1-5 seconds - **M01-19**: Optimized models run 10-40× faster ### Memory Usage - **M01**: Tensor operations ~100 MB - **M01-09**: CNN training ~1-2 GB - **M01-13**: Transformer training ~2-4 GB - **M01-19**: Optimized models use 50-90% less memory ## NBGrader (For Students in Courses) ```bash # If using NBGrader in classroom setting # Submit your completed notebook # Do NOT submit the exported package # Grading components: # - 70% Auto-graded (tests) # - 30% Manual (systems thinking questions) ``` ## Next Steps - **New to TinyTorch?** Start with [Getting Started](../getting-started.md) - **Stuck on a module?** Check [Troubleshooting](troubleshooting.md) - **Need detailed docs?** See [CLI Documentation](overview.md) - **Teaching a course?** See [For Instructors & TAs](../for-instructors.md) --- **💡 Pro Tip**: Bookmark this page for quick command reference while building!