mirror of
https://github.com/harvard-edge/cs249r_book.git
synced 2026-07-23 03:48:36 -05:00
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.