Files
Vijay Janapa Reddi 91b2ae5dc1 fix(book): correct misleading margin figures and harden generator
Visual QA of all 207 margin figures surfaced figures that contradicted
their own captions/labels. Fixes:

- 6 ladder inversions where bar length taught the opposite of the data
  (P99 vs mean, Image vs Text bandwidth, FHE vs AES latency, HBM vs
  register energy, training vs inference memory, radio vs arithmetic).
  Regenerated via margin_devices with consistent-unit / mlsysim SSOT
  values.
- 5 trend/threshold figures whose shape did not match the relationship
  (cloud-edge crossover, FPS collapse, burst-vs-sustained levels) plus
  two caption reframes (retraining knee, training power).
- 7 segmented-bar figures whose labels were truncated to 4 chars and two
  whose highlight contradicted the caption (egress, optimizer state);
  regenerated readable with full labels.
- 10 passive/meta captions rewritten as declarative takeaways.

Root cause hardened in generate_margin_figures.py: _parse_number now
unit-aware (ms vs s, MB/s vs GB/s, pJ vs nJ) instead of mis-reading the
first letter of a unit as a k/M/B/T multiplier; ironbar label cap raised
from 5 chars so words are no longer chopped.
2026-05-30 18:44:55 -04:00
..