Skip to content

[Wall time -0.07% vs main; paired PGO estimate] Avoid small macro matching and transcription allocations - #136

Draft
xmakro wants to merge 1 commit into
mainfrom
perf-review-20260907/23-macro-allocation
Draft

[Wall time -0.07% vs main; paired PGO estimate] Avoid small macro matching and transcription allocations#136
xmakro wants to merge 1 commit into
mainfrom
perf-review-20260907/23-macro-allocation

Conversation

@xmakro

@xmakro xmakro commented Sep 7, 2026

Copy link
Copy Markdown
Owner

Preallocate known capacities and skip the binding scan when a matcher has no bindings.

Comparison Wall time Instructions Peak RSS
Complete PR vs main -0.070% -0.159% -0.462%
Profile, complete PR vs main Wall time
check +0.130%
debug -0.297%
opt -0.043%

Negative percentages mean less elapsed time or fewer resources. The title is an individual local timing estimate; small changes may be measurement noise.

The two recorded repetitions give aggregate timing estimates of -0.063% and -0.089% for the title comparison. Mixed directions are marked in the title. This repeatability check is not a confidence interval.

Both compilers use the same source base, CI LLVM, fixed standard libraries, ThinLTO and jemalloc. Each has separate nine-workload Rust PGO training. The stock collector measures all 20 Primary benchmarks: 249 Check/Debug/Opt and full/incremental cases, two observations per compiler per case, alternating baseline/candidate order by crate. No other campaign builds run during measurement. Percentages are equal-case geometric means. LLVM retraining and BOLT are omitted.

This branch has one commit directly on main. Its exact measured source passed the full UI and incremental suites plus the additional suites recorded in the build provenance.

Fixed main commit: da47efd27287edb02eed0b5a178a165c8f258e37. Measured source patch SHA-256: 49278bd62db09f8a8fe8acd3fc4c5a8d1c6a7b343146bf13203e516418729c2e.

Local raw measurements and per-case CSVs: independent-pr136-main-v1-comparison.csv in the September 6 investigation directory. Build/test provenance: pgo/independent-pr136-source-timing-v1/provenance.json.

@xmakro xmakro changed the title [part of 0.332% Check instruction batch] Avoid small macro matching and transcription allocations [Individual speedup unmeasured] Avoid small macro matching and transcription allocations Sep 8, 2026
@xmakro
xmakro force-pushed the perf-review-20260907/22-marker-first-context branch from 3f21f3d to e77b9b0 Compare September 9, 2026 06:21
@xmakro
xmakro force-pushed the perf-review-20260907/23-macro-allocation branch from e20654a to 7f5ef79 Compare September 9, 2026 06:21
@xmakro xmakro changed the title [Individual speedup unmeasured] Avoid small macro matching and transcription allocations [Wall time -0.07% vs main; paired PGO estimate] Avoid small macro matching and transcription allocations Sep 9, 2026
@xmakro
xmakro changed the base branch from perf-review-20260907/22-marker-first-context to main September 9, 2026 06:21
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.

1 participant