-
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
[nll] why is inflate so dang slow? #51377
Comments
Note that when doing profiling you should be using the in-tree inflate, not the crate off of crates.io, as their code is quite different. |
|
NLL performance boost This makes compilation of the [inflate](https://github.com/rust-lang-nursery/rustc-perf/tree/master/collector/benchmarks/inflate) benchmark compile 2 times faster on my computer when NLL is enabled. This does not fix rust-lang#51377 perfectly, it's still 4-5 times slower than without NLL, but it's a start.
NLL performance boost This makes compilation of the [inflate](https://github.com/rust-lang-nursery/rustc-perf/tree/master/collector/benchmarks/inflate) benchmark compile 2 times faster on my computer when NLL is enabled. This does not fix rust-lang#51377 perfectly, it's still 4-5 times slower than without NLL, but it's a start.
NLL performance boost This makes compilation of the [inflate](https://github.com/rust-lang-nursery/rustc-perf/tree/master/collector/benchmarks/inflate) benchmark compile 2 times faster on my computer when NLL is enabled. This does not fix the #51377 perfectly, it's still 4-5 times slower than without NLL, but it's a start.
NLL performance boost This makes compilation of the [inflate](https://github.com/rust-lang-nursery/rustc-perf/tree/master/collector/benchmarks/inflate) benchmark compile 2 times faster on my computer when NLL is enabled. This does not fix the rust-lang#51377 perfectly, it's still 4-5 times slower than without NLL, but it's a start.
Speaking about the non-NLL case:
#51411 improves some of that.
I don't know if those functions are used with NLL, but hopefully that's useful info. |
@nnethercote pretty interesting. As of now NLL time is 300% of normal time, which is still high though not as high as it was to start. I guess it is worth profiling this separately, particularly once #51411 lands...it seems like #51538 does not particularly help. |
As usual, you really need to keep in mind that the Could we please rename it to Also, I'd rather tell people to update their
Funny you should mention that (it's also a pre-debloat) rust-lang/rustc-perf#183 (comment) As an aside, this sort of thing (one function with a lot of code in it) is why I started hacking on |
@eddyb can you find somebody more familiar with |
@bvssvni Do you mean making the git commits, or also publishing? I don't know anyone other than you who can publish piston crates (I don't think I can, anyway, but I'm not sure how to check). |
@eddyb all PistonCollaborators can publish. You're one of them. |
@bvssvni Makes sense, is that automatic via GitHub? I'm not sure what the process is, and I can't find you on IRC. In the meanwhile, I realized that all past version bumps don't appear to be necessary and left this comment with a suggestion of just publishing the latest |
I'm going to close this issue, as inflate is now 278.32%. Slow but it's a tiny edge case test anyway and it's not 10x anymore. |
Looking at http://perf.rust-lang.org/nll-dashboard.html, the inflate test is way out of line with the others — what is making it so slow? We need to do some profiles.
I wrote up a guide to profiling that talks about how I do profiling.
The text was updated successfully, but these errors were encountered: