Skip to content

Latest commit

 

History

History
58 lines (40 loc) · 5.84 KB

README.md

File metadata and controls

58 lines (40 loc) · 5.84 KB

Performance evidence and archives

This directory contains two maintained documents: this archive index and the current performance summary. The summary records the October 12 cross-library measurements of main after PR #204, and its history summarizes earlier batches, including the October 9 and 10 batch with the cells that PR #200 measured again, the October 6 and 7 batch with the cells that PRs #195, #196 and #198 measured again or added, and the October 5 base/head matrix of PR #184, whose paired CI measurements are uploaded by the PR checks. Benchmark source, tests, pinned versions, budgets.json, and the build-size baseline remain versioned. Historical measurements are not inputs to CI: the performance jobs measure their actual base/head checkouts and upload their own results.

Retention policy

  • Write routine generated JSON, Markdown, and profiles to the ignored perf-testing/results/ directory. Other files under reports/ are ignored.
  • For an important optimization or release, preserve the complete measurement batch in a compressed archive with the relevant baseline and candidate data, original metadata, a file manifest, and SHA-256 checksums.
  • Store durable evidence as downloadable release assets and add an entry here. Use a new archive tag for each batch and preserve existing assets and tags. CI artifacts remain useful for individual runs; summaries intended for long-term reference need their own durable archive.
  • Download the published archive and verify its checksum and every source file before removing local reports. Update the summary and affected documentation and PR links together. Refresh the summary for material performance changes; do not append every benchmark run to Git.

Archive releases use perf-reports-* tags, are marked as prereleases, and are not marked latest. The current npm workflow listens for release.created: create an archive release as a draft, upload and verify the assets, then publish that existing draft. GitHub documents the draft release event behavior. Recheck the repository's release triggers before publishing future archives.

Archive index

Measurement dates (UTC) Snapshot Contents
2026-09-30 and 2026-10-01 ed16bd4 All 51 original reports: 24 JSON and 27 Markdown files, including the original workloads, patch follow-up, expanded baseline/candidate, timing, memory, object-order controls, and local/GitHub budgets.

Release page · Full archive · File manifest · SHA256SUMS

The archive is 1,142,738 bytes. It preserves every original report byte from that snapshot, plus the matching benchmark guide, upstream license, and array-method notes. The manifest records the snapshot SHA and each original file's path, byte count, and SHA-256. The original report directory occupies 12,880,582 uncompressed bytes; it remains available in Git history as well.

Archive SHA-256:

a2ddaa60d87235ceb5ebf497d93c86b4da3e2b59174b20a34f9e67728985266d

The archive's perf-testing/reports/README.md is the original index. 2026-09-30-m1-max-node24-expanded-summary.md documents the unoptimized reference; 2026-10-01-m1-max-node24-expanded-summary.md documents the optimized candidate. Their neighboring JSON and table files retain their original names and relative links. Historical comments about measurements refer to those dates.

Download and verify

From the repository root, using GitHub CLI, shasum, and tar:

mkdir -p perf-testing/results/archive
cd perf-testing/results/archive
# Use an empty download directory; do not overwrite an earlier archive.
gh release download perf-reports-2026-10-01 --repo unadlib/mutative --pattern '*.tar.gz' --pattern '*.manifest.json' --pattern SHA256SUMS
shasum -a 256 -c SHA256SUMS
tar -xzf mutative-performance-reports-2026-09-30_2026-10-01-ed16bd4.tar.gz
cd mutative-performance-reports-2026-09-30_2026-10-01-ed16bd4
shasum -a 256 -c FILES.sha256

To re-evaluate saved budget decisions without running measurements, return to the repository root and run:

node perf-testing/check-budgets.mjs perf-testing/results/archive/mutative-performance-reports-2026-09-30_2026-10-01-ed16bd4/perf-testing/reports/2026-10-01-m1-max-node24-expanded-budgets-local.json

See the summary for the measured source identities and full-matrix commands, or the benchmark guide for focused runs.