-
Notifications
You must be signed in to change notification settings - Fork 12.9k
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
Shrink StatementKind
#54526
Shrink StatementKind
#54526
Conversation
This shrinks StatementKind from 80 bytes to 64 bytes on 64-bit.
This shrinks StatementKind from 64 bytes to 48 bytes on 64-bit.
(rust_highfive has picked a reviewer for you, use r? to override) |
Some
The instruction counts are mostly unchanged, but I will do a rust-timer run just to double check that. |
@bors try |
Shrink `StatementKind` `StatementKind` occurs in significant amounts in Massif profiles.
☀️ Test successful - status-travis |
@nnethercote since you’re there, could you try making |
r? @nagisa |
@rust-timer build c4a65be |
Success: Queued c4a65be with parent 5ad5aca, comparison URL. |
It doesn't feel to me like a useful change, because it won't affect the size of |
Hmm, it's about a 1% instruction count regression for For For other metrics there's too much noise to tell much. Based on the above, I'm leaning towards landing this, but it's not a slam dunk and I'm happy to defer to the reviewer's decision. |
Are there any wall-clock time/cycle count comparisons as well? Instruction count comparisons, in my experience, are not great. Even if two distinct workloads do not differ by much, as depending on instruction order and instructions themselves, modern CPUs can easily retire wildly different number of instructions in same span of time. At the high end, I’ve seen a factor of 4 difference in a real-world work-load in an application doing the same job in same amount of time.
Oh, I didn’t intend to make an impression that it would beneficial for performance. I meant it would be nice-to-have purely for consistency reasons. @bors r+ |
📌 Commit e221b24 has been approved by |
As per #54526 (comment), the other metrics (which includes |
Shrink `StatementKind` `StatementKind` occurs in significant amounts in Massif profiles.
☀️ Test successful - status-appveyor, status-travis |
StatementKind
occurs in significant amounts in Massif profiles.