Changelog¶
Every release of berth-placement. Versions follow semantic versioning, and
anything that changes the trace schema or a published number is called out
explicitly, because a number that moves without a note is a number nobody can
rely on.
Install a specific version:
pip install berth-placement==0.5.0
v0.5.0¶
- feat(traces):
TraceRecord.source("measured" | "mock"), schema 2. A mock trace and a hardware trace were previously indistinguishable on disk while the contribution path was an open pull request, so the corpus could be corrupted by accident. Schema-1 files load as "measured" (this repo's own P0 traces are real); contributions must state it explicitly. - feat(sounding): stamp source on every record;
provenance_of()refuses a trace set mixing measured and mock. - feat(validate): report provenance in the header, warn loudly on mock.
- feat(fit_overhead):
python -m bench.fit_overheadfits the fixed prefill floor from batch-1 cells. The floor belongs to one (accelerator, driver, server, config) tuple and is not spec-predictable, so profiles ship 0.0 and each run fits its own. Refuses flat sweeps and flags negative fits. - feat(check_contributed): CI gate rejecting mock or unlabelled contributions.
- test: 16 new tests covering provenance, back-compatibility and the fitter.
0.1.0 (berth)¶
- clean-room export as berth: package renamed, metric renamed to placement_premium, fresh history
prior internal iterations (pre-export)¶
0.7.0¶
- feat: quadratic causal-attention prefill FLOPs + context-dependent decode attention FLOPs (fixes long-context TTFT underprediction; MI300X/70B implied-mfu bias 19% -> <2% in mock validation)
- feat: bootstrap 95% CIs on calibrated efficiency factors
- feat: harness records server-reported prompt tokens (usage), not the request-side heuristic
- feat: bench/microbench.py , GEMM + bandwidth ceiling probes for the fitted <= microbenched <= peak physics gate
- chore: ruff lint clean; ruff + pyright in CI
0.6.1¶
- fix: migrate held placements in policy-constraint violation inside the hysteresis band; fix: warm-up discard broken by randomized sweep order
0.6¶
- feat: physics validation report (term-by-term, identifiability gates); randomized sweep order (thermal-drift confound)
0.5¶
- feat: bench harness (mock + real vLLM modes); production plan
0.2 - 0.4¶
- calibration (inversion + blind recovery), M/M/c tail-aware sizing, per-class fits, drift detection
0.1¶
- placement primitives over roofline model, simulated market backend