Skip to content

Ci/metrics history#114

Merged
stratika merged 14 commits into
mainfrom
ci/metrics-history
May 12, 2026
Merged

Ci/metrics history#114
stratika merged 14 commits into
mainfrom
ci/metrics-history

Conversation

@orionpapadakis
Copy link
Copy Markdown
Collaborator

@orionpapadakis orionpapadakis commented May 7, 2026

Performance metrics history pipeline

Adds end-to-end collection of benchmark metrics from every CI run into a persistent docs/perf-history.jsonl file committed back to main.

What changed

scripts/write_metrics_sidecar.py (new)
Helper script that writes a *.meta.json sidecar from KEY=VALUE shell arguments. Coerces JSON-native types (booleans, numbers) automatically.

scripts/process_metrics.py (rewritten)

  • Discovers metric+sidecar pairs recursively via rglob("*.json")
  • Schema is fully open-ended — no required fields in either file
  • Missing fields become null (not 0) in the JSONL output
  • Each row includes flat compat fields plus nested "benchmark" and "metrics" objects for forward compatibility

.github/workflows/build-and-run.yml

  • Every ./llama-tornado step now sets JAVA_TOOL_OPTIONS to emit a metrics JSON and calls write_metrics_sidecar.py to write the matching sidecar (same stem, same directory)
  • All artifact pairs are uploaded and consumed by publish-performance-history
  • publish-performance-history only runs on pushes to main (not PRs or forks), avoiding duplicate entries and push-permission errors

Result

One JSONL row per benchmark step per merge to main, covering all backends, models, quantizations, and inference configurations currently in CI.

@orionpapadakis orionpapadakis marked this pull request as ready for review May 12, 2026 11:26
@stratika stratika self-requested a review May 12, 2026 11:51
@stratika stratika added the enhancement New feature or request label May 12, 2026
@stratika stratika merged commit 2d442a0 into main May 12, 2026
3 of 4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants