-
Notifications
You must be signed in to change notification settings - Fork 12.8k
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
Move query code outside macros and store query jobs separately from query results #50102
Conversation
Thanks, @Zoxc! Do you have any measurements how splitting the map affects memory usage and performance? In the cache miss case, it leads to a few more hashtable lookups than the current version, I think. |
It uses 450MB when compiling syntex_syntax vs. 456MB before. Compile times seems to be slightly reduced, although that may just be due to noise. |
Ping from triage @michaelwoerister ! This PR needs your review. |
@bors try |
⌛ Trying commit 87956b5a5eaee00b89297551c1dd75e1ff632650 with merge 34c50be0a1c561e15f7d02e06c7e47b48a40e444... |
☀️ Test successful - status-travis |
@Mark-Simulacrum I'd like a perf run here |
Perf queued. |
I did some microbenchmarks here too:
After:
Before (with incremental compilation):
After (with incremental compilation):
|
Looks very promising, @Zoxc! |
I think I'm going to close #50067 in favor of this. |
Thanks, @Zoxc! The first two commits look great. The third one I'm a little ambiguous about because of the additional table lookups. But since performance seems to improve overall, I don't have any real objections. All in all this PR cleans up the core query code considerably! No we just have to merge r=me with the comments from #50067 addressed. |
@bors r=michaelwoerister |
📌 Commit f678bf0 has been approved by |
🎉 |
Move query code outside macros and store query jobs separately from query results Based on #50067 r? @michaelwoerister
☀️ Test successful - status-appveyor, status-travis |
Based on #50067
r? @michaelwoerister