-
Notifications
You must be signed in to change notification settings - Fork 13.4k
[nll] why is inflate so dang slow? #51377
New issue
Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? # to your account
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: