|
| 1 | +# Muon Optimizer Literature Review |
| 2 | + |
| 3 | +You are contributing to the **Sutro Group**, a research lab studying energy-efficient AI training. Your task is a literature review of the **Muon optimizer**. |
| 4 | + |
| 5 | +## Project context |
| 6 | + |
| 7 | +Read these files first: |
| 8 | +- `DISCOVERIES.md` — what's already known |
| 9 | +- `LAB.md` — lab rules (important: do NOT modify measurement code, tracker.py, cache_tracker.py, data.py, config.py, harness.py) |
| 10 | +- `findings/_template.md` — reference for expected report format |
| 11 | + |
| 12 | +- We optimize for **energy efficiency**, not just accuracy or speed |
| 13 | +- Our benchmark: **sparse parity** (n=20 bits, k=3 secret, 17 noise) |
| 14 | +- Our metric: **ByteDMD** (https://github.com/cybertronai/ByteDMD) — successor to DMC. Tracks memory at **byte level** (not per-element), using integer arithmetic. Reference implementation has been hardened against escape hatches (agents were bypassing TrackedArray via np.asarray() → Python ints). See also: https://github.com/cybertronai/ByteDMD-examples for test cases. |
| 15 | +- **Baseline SGD**: ~0.12s wall-clock, high DMD (exact ByteDMD score unmeasured — you'd need to run the ByteDMD tracer) |
| 16 | +- **Best known**: GF(2) Gaussian Elimination (~509us, low byte-level access count), KM-min (~1ms) |
| 17 | + |
| 18 | +## Task: Research the Muon optimizer |
| 19 | + |
| 20 | +### 1. Read the Muon paper |
| 21 | + |
| 22 | +Primary source: https://kellerjordan.github.io/posts/muon/ |
| 23 | + |
| 24 | +Key facts to extract: |
| 25 | +- The algorithm: Newton-Schulz iteration on SGD momentum updates to orthogonalize gradients |
| 26 | +- How it replaces Adam's element-wise adaptation with matrix orthogonalization |
| 27 | +- Performance claims (CIFAR-10, NanoGPT, 1.5B parameter models) |
| 28 | +- Computational overhead (<1% FLOP overhead claimed) |
| 29 | +- Scope: only for 2D hidden-layer weights, paired with AdamW for embeddings/biases |
| 30 | + |
| 31 | +### 2. Analyze relevance to energy efficiency |
| 32 | + |
| 33 | +Study the ByteDMD metric: https://github.com/cybertronai/ByteDMD |
| 34 | + |
| 35 | +Investigate: |
| 36 | +- Does Newton-Schulz iteration **reduce byte-level data movement** compared to Adam's moment tracking (first + second moment buffers)? |
| 37 | +- What's the **FLOP/memory tradeoff**? Does it reduce byte accesses at the cost of more compute? |
| 38 | +- Does orthogonalization change **reuse distance patterns** compared to Adam or SGD? |
| 39 | +- Would Muon help on **small networks** (hidden=200, our sparse parity setup) or only large LLMs? |
| 40 | + |
| 41 | +### 3. Write findings |
| 42 | + |
| 43 | +Create `findings/exp_muon_review.md` following this structure: |
| 44 | + |
| 45 | +```markdown |
| 46 | +# Muon Optimizer — Literature Review |
| 47 | + |
| 48 | +## Hypothesis |
| 49 | +[What we expect Muon to help with (or not) for energy efficiency] |
| 50 | + |
| 51 | +## Key Facts from Paper |
| 52 | +- [5-10 bullets on algorithm, results, limitations] |
| 53 | + |
| 54 | +## Relevance to Sutro Group |
| 55 | +[Would Muon improve energy efficiency on sparse parity? Why/why not?] |
| 56 | + |
| 57 | +## Comparison to Our Methods |
| 58 | +[How Muon relates to our best methods: SGD, GF(2), KM-min] |
| 59 | + |
| 60 | +## Open Questions |
| 61 | +[What we'd need to test experimentally to know for sure] |
| 62 | + |
| 63 | +## References |
| 64 | +- [Links to paper, code, follow-ups] |
| 65 | +``` |
| 66 | + |
| 67 | +## Rules |
| 68 | + |
| 69 | +- **DO NOT** modify any experiment/run code (tracker.py, cache_tracker.py, data.py, config.py, harness.py, fast.py, src/) |
| 70 | +- **DO NOT** run experiments — this is a literature review only |
| 71 | +- Write findings to `findings/exp_muon_review.md` |
| 72 | +- Check `DISCOVERIES.md` first to avoid repeating known results |
| 73 | +- Do NOT change LAB.md, DISCOVERIES.md, CLAUDE.md, CODEX.md, or any other project configuration |
0 commit comments