chore: standardize non-UTF-8 benchmark names#49
Conversation
Merging this PR will improve performance by 12.87%
|
| 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)
Footnotes
-
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. ↩
There was a problem hiding this comment.
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_utf8as a leaf-name prefix for non-UTF-8 inputs. - Renamed the timed benchmark leaf
dirty_before_non_utf8tonon_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.
Summary
dirty_before_non_utf8tonon_utf8_dirty_beforenon_utf8Why 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_beforeidentity on both sides instead of reporting one removed row and one new row.Validation
cargo fmt --all --checkcargo bench --locked --no-run