Inline input field access helper#1227
Conversation
👷 Deploy Preview for salsa-rs processing.
|
✅ Deploy Preview for salsa-rs canceled.
|
2603cca to
6f1fe98
Compare
6f1fe98 to
93535ed
Compare
Merging this PR will degrade performance by 98.32%
|
| Mode | Benchmark | BASE |
HEAD |
Efficiency | |
|---|---|---|---|---|---|
| ❌ | Simulation | untracked_field_read_many |
219.6 µs | 340,581.1 µs | -99.94% |
| ❌ | Simulation | interned_field_read_many |
210.7 µs | 212,160.4 µs | -99.9% |
| ❌ | Simulation | cold_execute |
1.6 ms | 460.4 ms | -99.65% |
| ❌ | Simulation | tracked_field_read_many |
270.6 µs | 480.8 µs | -43.71% |
| ⚡ | WallTime | hot_cache_hits[1024] |
163.2 µs | 156.5 µs | +4.3% |
Tip
Investigate this regression by commenting @codspeedbot fix this regression on this PR, or directly use the CodSpeed MCP with your agent.
Comparing MichaReiser:micha/input-interned-field-access-opt (93535ed) with master (9447e2f)
Footnotes
-
12 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. ↩
|
@codspeedbot analyze this regression |
Regression analysisConclusion: these regressions are not caused by your CodSpeed flagged an Environment Differences warning on this comparison: the head (
The reported deltas are also physically impossible for a single inline hint — e.g. What the flamegraph showsFor the worst "regression" ( In other words, the simulation is comparing two different C libraries, not two versions of your code. RecommendationTo get a trustworthy signal, re-run base and head in the same environment:
The only same-environment signal in the current report is the WallTime No code changes are needed for this — it's purely a measurement-environment issue. Summary
Learnings updated. See what CodSpeed remembers about this repository. Was this response helpful? React with 👍 or 👎 to help us improve CodSpeedBot. |
Summary
Notes
Local instruction-count inspection showed that inlining
input::IngredientImpl::fieldremoves the hot call from the input field read query body. Markingdata/data_rawalone does not help, because the query body still callsfield; interned field reads were already inlined in the benchmark body without additional hints.Verification