Changelog¶
Unreleased (0.2.0)¶
Version 0.2 is a clean contract break focused on truthful, machine-readable analysis.
Added¶
- Versioned
AnalysisReport,MetricResult, andDiagnosticcontracts with complete, partial, and unavailable states. - Stable full module paths and per-path call indexes.
- Complete
argsandkwargsforwarding, including nested containers and non-tensor leaves. strict=TrueandIncompleteAnalysisErrorfor automation that rejects incomplete metrics.- PyTorch-native operator FLOPs through
measure_flops, with per-call custom formulas and uncounted-op diagnostics. - Pure
compare_reportsbefore/after comparison. - Explicit workload peak-memory measurement through
measure_peak_memory(#149). - Structured crawler output (#143), a
Trainablesummary column (#144), caller-provided tensors (#145), native Transformer FLOP formulas (#146), and raw structured compute totals (#148) during the v0.2 development cycle.
Changed¶
- Require Python 3.11+ and PyTorch 2.1+.
- Run model crawling under evaluation mode with gradients disabled, then restore every original module training flag.
- Make crawler bookkeeping linear in layer-call count and cache forward signatures per module (#147, #152).
- Separate module-formula metrics from operator-dispatch FLOPs.
- Modernize packaging, CI, and MkDocs Material documentation.
Removed¶
input_data; useargsandkwargs.get_process_gpu_ram, reportoverheads, and automatic accelerator cache clearing.- The unversioned legacy crawler report.
See the v0.2 migration guide for code changes and trust semantics.
v0.1.2 (2022-08-03)¶
Release note: v0.1.2
v0.1.1 (2020-08-04)¶
Release note: v0.1.1
v0.1.0 (2020-05-21)¶
Release note: v0.1.0