Skip to content

chore: standardize non-UTF-8 benchmark names#49

Merged
hyfdev merged 1 commit into
mainfrom
agent/non-utf8-benchmark-prefix
Jul 13, 2026
Merged

chore: standardize non-UTF-8 benchmark names#49
hyfdev merged 1 commit into
mainfrom
agent/non-utf8-benchmark-prefix

Conversation

@hyfdev

@hyfdev hyfdev commented Jul 13, 2026

Copy link
Copy Markdown
Owner

Summary

  • rename dirty_before_non_utf8 to non_utf8_dirty_before
  • require every non-UTF-8 timed benchmark leaf name to start with non_utf8
  • keep the renamed benchmark identifier the same length so this naming-only baseline does not perturb compiled layout

Why this is separate

This behavior-neutral baseline PR lands the benchmark identity before #47 is stacked on it. CodSpeed can then compare the implementation against the same non_utf8_dirty_before identity on both sides instead of reporting one removed row and one new row.

Validation

  • cargo fmt --all --check
  • cargo bench --locked --no-run

@codspeed-hq

codspeed-hq Bot commented Jul 13, 2026

Copy link
Copy Markdown

Merging this PR will improve performance by 12.87%

⚠️ Different runtime environments detected

Some benchmarks with significant performance changes were compared across different runtime environments,
which may affect the accuracy of the results.

Open the report in CodSpeed to investigate

⚡ 1 improved benchmark
✅ 225 untouched benchmarks
🆕 2 new benchmarks
⏩ 38 skipped benchmarks1

Performance Changes

Mode Benchmark BASE HEAD Efficiency
Simulation string 255.8 ns 226.7 ns +12.87%
🆕 Simulation non_utf8_dirty_before N/A 2.5 µs N/A
🆕 Memory non_utf8_dirty_before N/A 68 B N/A

Tip

Curious why this is faster? Comment @codspeedbot explain why this is faster on this PR, or directly use the CodSpeed MCP with your agent.


Comparing agent/non-utf8-benchmark-prefix (1e1c882) with main (5f4a1bd)

Open in CodSpeed

Footnotes

  1. 38 benchmarks were skipped, so the baseline results were used instead. If they were deleted from the codebase, click here and archive them to remove them from the performance reports.

@hyfdev hyfdev marked this pull request as ready for review July 13, 2026 09:58
Copilot AI review requested due to automatic review settings July 13, 2026 09:58
@hyfdev hyfdev merged commit 606e366 into main Jul 13, 2026
9 checks passed
@github-actions github-actions Bot mentioned this pull request Jul 13, 2026

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Standardizes naming for non-UTF-8 benchmark leaf names so CodSpeed/Criterion summaries remain recognizable and comparable across baseline/stacked performance PRs, aligning with the project’s benchmark identity stability goals.

Changes:

  • Updated benchmark naming guidance to require non_utf8 as a leaf-name prefix for non-UTF-8 inputs.
  • Renamed the timed benchmark leaf dirty_before_non_utf8 to non_utf8_dirty_before (same string length) and aligned the local variable name accordingly.

Reviewed changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated no comments.

File Description
benchmarks/README.md Documents the “non-UTF-8 leaf names must start with non_utf8” convention for stable, recognizable benchmark rows.
benches/hot_path_baselines.rs Renames the affected non-UTF-8 timed benchmark leaf to the standardized non_utf8_* prefix form.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants