Repository navigation
Publish the performance suite report as a docs speed page - #1497
Merged
Merged
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Publishes the performance suite's report on the docs site as a speed page (
/speed, under Reference).docs/speed.jsonis the committed report (source of truth);docs/speed.mdisrender_markdownof it. A hermetic test asserts the two agree and that the sidebar links the page, so the page cannot drift from the JSON. Refresh both fromjust bench-suite../**/{a,b}*.mdrender literally.Report
watch, and the three./**/*.mdvariants under distinct names).main462b3c6, which carries bench-suite: hand the watch case a Natives #1505 (watch case fix) and bench-suite: distinct names for the glob cases #1506 (distinct case names); the suite needs both to produce a full report.mainwas not merged into this branch: the suite ran from a detached checkout ofmain, and the page was rendered with this branch'srender_markdown:just bench-suite, followed by copyingreport.jsonandreport.mdintodocs/.load average: 0.16, 2.65, 17.18, 18:34). Ended at33.12, 30.93, 21.75(21:49). Sampled every minute during the run: min 0.52, median 5.4, p75 10.7, max 44.8 (32 CPUs). Other workloads on the shared host caused the rise. An earlier attempt was aborted when the load hit 160. Pairs are interleaved, so load mostly widens the spread, not the median ratio, but treat the wide spreads as noise.Headline: dirsql is at or under 1.0x the fastest native on 7 of 24 cases (
./**/*.md (symlinks)0.12x,SELECT path, size, mtime0.32x, join 0.42x, transcripts 0.53x, dossier 0.72x, notebook 0.87x,./**/.*0.92x). The other globs run 1.3-2.6x behind fd or rg. Frontmatter is 2.41x, jsonl 1.73x, and watch 1.15x.Fixes #1470
E2E Verification
maturin develop --release,cargo build --release -p dirsql --features cliuv run python -m pytest tests/e2e/glob_speed_recursive_test.py tests/e2e/stat_speed_test.py -x -q: 3 passed; receiptpackages/python/e2e-attestations/bot-1470-speed-page-1011.jsonspeed_page_test.py+bench_report_test.py: 19 passedcd docs && pnpm build: succeeds;dist/speed.htmlrenders the summary table and 24 per-case tables.bench_report_test.py::...it_lists_each_case_with_its_ratio_to_the_fastest_native(names not code-formatted).