-
-
Notifications
You must be signed in to change notification settings - Fork 780
perf(isolated_declarations): reduce looping over statements #9393
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
perf(isolated_declarations): reduce looping over statements #9393
Conversation
How to use the Graphite Merge QueueAdd either label to this PR to merge it via the merge queue:
You must have a Graphite account in order to use the merge queue. Sign up using this link. An organization admin has enabled the Graphite Merge Queue in this repository. Please do not merge from GitHub as this will restart CI on PRs being processed by the merge queue. This stack of pull requests is managed by Graphite. Learn more about stacking. |
CodSpeed Performance ReportMerging #9393 will not alter performanceComparing Summary
|
|
Ha! Perf actually regresses a little. I'll have to look deeper. |
e4c1977 to
c880481
Compare
5a7d54e to
6836790
Compare
6836790 to
df75980
Compare
df75980 to
bc98ad0
Compare
bc98ad0 to
eca808a
Compare
|
Now not negative perf effect, but not positive either. Never mind... |

Reduce number of loops over
Program's statements.transform_program_without_module_declarationconstructed a temporaryVecand then iterated over it to generate the finalVec. Cut out the intermediateVec.transform_statements_on_demandcreated aVecand then calledretainon it to filter it down. Combine theVecconstruction and filtering into a single loop.The gain from (1) is larger, but only (2) will show up in our benchmark as it takes the
transform_statements_on_demandpath.