Skip to content

[Wall time +0.09% vs main; paired PGO estimate] Swap exhausted macro matcher queues instead of copying them - #142

Draft
xmakro wants to merge 1 commit into
mainfrom
perf-review-20260907/29-macro-queue-swap
Draft

[Wall time +0.09% vs main; paired PGO estimate] Swap exhausted macro matcher queues instead of copying them#142
xmakro wants to merge 1 commit into
mainfrom
perf-review-20260907/29-macro-queue-swap

Conversation

@xmakro

@xmakro xmakro commented Sep 7, 2026

Copy link
Copy Markdown
Owner

Exchange the exhausted current queue with the next queue after a token match, reusing their buffers without moving every element.

Comparison Wall time Instructions Peak RSS
Complete PR vs main +0.085% +0.020% -0.126%
Profile, complete PR vs main Wall time
check +0.209%
debug -0.167%
opt +0.214%

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.007% and +0.177% 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: dc22d33230b096c023dbe75baa4f00dfe5094fe9acfef39d5db69c75dd5f7aca.

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

@xmakro xmakro changed the title [part of 0.475% Check instruction batch] Swap exhausted macro matcher queues instead of copying them [Individual speedup unmeasured] Swap exhausted macro matcher queues instead of copying them Sep 8, 2026
@xmakro
xmakro force-pushed the perf-review-20260907/28-macro-first-token branch from 4b1bb8d to 453a56f Compare September 9, 2026 06:21
@xmakro
xmakro force-pushed the perf-review-20260907/29-macro-queue-swap branch from a9c7dd2 to 3c0462b Compare September 9, 2026 06:21
@xmakro xmakro changed the title [Individual speedup unmeasured] Swap exhausted macro matcher queues instead of copying them [Wall time +0.09% vs main; paired PGO estimate] Swap exhausted macro matcher queues instead of copying them Sep 9, 2026
@xmakro
xmakro changed the base branch from perf-review-20260907/28-macro-first-token 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